Principal Embedded C++ Software Engineer (Linux, EtherCAT, Robotics)
Full Spectrum • USC++ Hybrid
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 (Linux, EtherCAT, Robotics)
The Principal Embedded C++ Software Engineer (Linux, EtherCAT, Robotics) 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 in real-time control systems, and proven experience with the EtherCAT protocol for high-speed, deterministic communication.
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
· Collaborate closely with the cross functional team to define interfaces, integrate actuators/sensors, and troubleshoot system-level performance issues
· Implement software features for safety monitoring and fault handling in accordance with industrial safety standards
· Create and maintain detailed software documentation
· Execute with minimal guidance and provide technical oversight and guidance for other team members
KEY SKILLS:
· Experience designing, developing and testing production-level embedded software in C++ for safety-critical systems
· 10+ years’ experience and expert proficiency in modern C++ and object-oriented design principles
· Demonstrated, hands-on experience with the EtherCAT protocol for high-speed industrial control or robotics
· Strong understanding of real-time concepts, thread synchronization, memory management, and performance tuning on Linux
· 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 management
· Demonstrated commitment to high quality
· Strong oral and written communication skills
· Highly motivated, self-disciplined, independent and results oriented
· Bachelor’s Degree in Computer Science, Electrical Engineering, Computer Engineering, Physics or related discipline preferred, or equivalent years of experience
DESIRED EXPERIENCE:
· Experience with industrial safety standards and designing software for functional safety
· Experience with Yocto
· Experience developing and maintaining CI/CD pipelines