NeverHard

Firmware Developer, Level 2 at the Kraken Robotics Career Center — NeverHard

Firmware Developer, Level 2 at the Kraken Robotics Career Center in Mount Pearl, Conception Bay - St. Johns. Skills: B or F Class License, C++, CMake, Collaboration, Documentation. Apply on NeverHard.

Company
the Kraken Robotics Career Center
Location
Mount Pearl, Conception Bay - St. Johns
Type
full_time

Remote: Yes

Required skills:

Kraken Robotics is currently recruiting for a Firmware Developer, Level 2 to join our Mount Pearl, NL, Dartmouth, NS, or remote may be considered. As part of Kraken’s Firmware team, you will work on our KATFISH™ Intelligent Towed SAS System, designing and building firmware that advances our industry-leading underwater platform used in mine detection and hydrographic surveying. This is an intermediate-level role within Kraken’s firmware career framework. ROLES AND RESPONSIBILITIES Develop and maintain low-level firmware within Kraken products. Implement and optimize drivers and interfaces for peripherals such as DMA, UART, SPI, CAN, and I²C. Write clean, efficient, and high-reliability C++ and C code for resource-constrained environments. Collaborate with other disciplines such as Electrical and Systems Engineering to design and validate embedded features. Create high-quality, concise documentation for firmware and system components. Participate in code reviews as both a developer and reviewer. Participate in architecture discussions, and continuous integration processes. Develop and maintain build configurations using CMake. Use version control systems (e.g., Git) effectively in a team environment. Create and execute unit tests and contribute to automated testing frameworks. Troubleshoot issues at the firmware, hardware, and system levels. QUALIFICATIONS AND EXPERIENCE Track record of applying firmware development skills in a commercial or real-world setting. Degree in Computer Engineering, Electrical Engineering, Software Engineering or equivalent. Hands-on experience with Arm Cortex-M microcontrollers or embedded Linux systems. Proficiency in C++. Experience working with hardware peripherals: DMA, UART, SPI, CAN, I²C. Proven ability to write robust, maintainable, and high-reliability firmware. Experience with CMake build systems. Proficiency with Git or other version control systems. Experience with unit testing, integration testing, or hardware-in-the-loop testing. Solid understanding of debugging tools (JTAG/SWD, oscilloscopes, logic analyzers). PREFERRED QUALIFICATIONS Knowledge of bootloaders, OTA updates, or secure firmware development. Python or scripting skills for automation. Hardware in the loop testing experience. Familiarity with CI/CD pipelines.