Job Description
Job Description
Full Spectrum partners with leading companies in MedTech to develop cutting-edge software for medical devices. With projects focused on embedded systems, mobile apps, robotics, engineers at Full Spectrum love the challenge of working with clients on products that have a meaningful impact. Working across different client projects with a wide range of technologies, a career at Full Spectrum offers both technical and professional growth opportunities.
Principal Embedded C++ Software Engineer (SAFERTOS, Medical Devices, CANbus)
The Principal Embedded C++ Software Engineer (SAFERTOS, Medical Devices, CANbus) will have the opportunity to work on a diverse set of products, including complex medical devices, robotics, and industrial equipment.  This position requires deep expertise in C++, a strong background developing software running on an embedded platform using SAFERTOS, and proven experience with the CANbus protocol.
ROLE RESPONSIBILITIES :
- Take a key role in a fast-paced cross-functional team
- Collaborate directly with clients to understand requirements and make critical design decisions
- Contribute to the full software development lifecycle, including requirements analysis, design, development, code review, unit testing, integration, and verification
- Ensure all development activities adhere to regulatory requirements for embedded software for medical devices (e.g., IEC 62304) and industry best practice
- Create and maintain detailed software documentation
- Execute with minimal guidance and provide technical oversight and guidance for other team members
- Mentor junior engineers and drive best practice in embedded software development
KEY SKILLS :
Experience designing, developing and testing production-level embedded software in C++ for safety-critical medical devices running the SAFERTOS real-time operating system (RTOS)10+ years’ experience and expert proficiency in modern embedded C++ and low-level programmingIn-depth knowledge and implementation experience with the CANbus protocol and related driversExperience with hardware-software integration, debugging on target hardware, and using debugging tools (e.g., JTAG / SWD debuggers, oscilloscopes, logic analyzers)Strong experience with modern SDLC processes (unit testing, static analysis, CI / CD)Strong familiarity with modern software development tools (Git, SVN, or other industry-standard source control)Experience using Agile techniques, including task / issue managementDemonstrated commitment to high qualityStrong oral and written communication skillsHighly motivated, self-disciplined, independent and results orientedBachelor’s Degree in Computer Science, Electrical Engineering, Computer Engineering, Physics or related discipline preferred, or equivalent years of experienceDESIRED EXPERIENCE :
Experience with other RTOS (e.g., FreeRTOS, VxWorks)Experience with other communication protocols (e.g., SPI, I2C, Ethernet, USB)Experience with EtherCATProficiency in other programming languages such as C#, Python, or JavaScriptExperience with YoctoExperience developing and maintaining CI / CD pipelinesWe may use artificial intelligence (AI) tools to support parts of the hiring process, such as reviewing applications, analyzing resumes, or assessing responses. These tools assist our recruitment team but do not replace human judgment. Final hiring decisions are ultimately made by humans. If you would like more information about how your data is processed, please contact us.