Senior Embedded Software Engineer
Medtronic · Lafayette, CO · Yesterday
On-siteEngineering$117k–$175k/yrFull-time
About the role
The Senior Embedded Software Engineer will play a pivotal role in developing next-generation medical devices, focusing on airway management solutions. This is an onsite role located at Medtronic's Lafayette, Colorado campus.
Responsibilities
- Contribute across the software development lifecycle, including requirements, design, implementation, integration, testing, and maintenance.
- Design, develop, debug, and maintain embedded software using best practices for maintainability and scalability.
- Support development of embedded Linux software, device interfaces, system services, and application-level functionality.
- Collaborate with cross-functional teams to define project goals, deliverables, and technical solutions.
- Integrate software with hardware components such as displays, cameras, sensors, and communication interfaces.
- Implement and maintain secure boot processes, over-the-air (OTA) updates, and system diagnostics to ensure device integrity and reliability.
- Generate and maintain technical documentation to support design controls and regulated product development.
- Aid in software requirements development, unit testing, integration testing, code reviews, and software validation activities.
- Focus on software reliability through appropriate design, verification, and problem-solving methods.
- Mentor junior engineers and contribute to continuous improvement in engineering methods and product quality.
Requirements
- Bachelor’s degree in Software Engineering, Computer Engineering, Electrical Engineering, Computer Science, or a related field, with 5+ years of relevant experience; or a Master’s degree with 3+ years of relevant experience.
- Strong C and C++ development skills.
- Experience developing software for embedded systems.
- Experience working in Linux-based embedded environments.
- Experience with common communication interfaces such as USB, UART, I2C, and SPI.
- Understanding of version control systems and configuration management.
- Experience with debugging tools and hardware-software integration activities.
Preferred Qualifications
- Experience with real-time software on microprocessor-based systems.
- Experience with embedded graphics or GUI libraries such as Qt or LVGL.
- Experience with driver development or maintenance.
- Familiarity with IEC 62304, ISO 14971, and ISO 13485.
- Experience with Python or shell scripting.
- Strong written and verbal communication skills.
- Demonstrated problem-solving ability and capacity to learn and apply new technologies quickly.
- Ability to work effectively in a multidisciplinary team environment.