Archived listing. The details below describe a past opening.
We are seeking a Senior Embedded Software Engineer with deep expertise in low-level embedded systems, Board Support Packages (BSPs), real-time operating systems, and hardware-level debugging. This role is ideal for an engineer who is comfortable working close to the hardware, using lab instrumentation to diagnose and solve complex system challenges.
You will join a collaborative embedded software team developing real-time communication and control products. The position offers significant ownership of technical solutions across the full product development lifecycle, from architecture and board bring-up through validation and release.
Responsibilities
- Lead technical efforts to deliver high-quality solutions that meet customer, schedule, and performance objectives.
- Design, develop, debug, test, and maintain complex embedded software features.
- Own technical problem-solving across software, operating systems, and hardware interfaces.
- Create and review requirements, design documentation, source code, test plans, and user documentation.
- Perform unit, integration, and functional testing to verify compliance with system requirements.
- Troubleshoot issues using hardware debugging tools and lab instrumentation.
- Collaborate effectively with cross-functional teams while providing technical guidance when needed.
- Stay current with emerging embedded technologies, development practices, and engineering tools.
Required Qualifications
- Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related technical field.
- 7+ years of embedded C/C++ development experience on microprocessors and microcontrollers (TI, NXP, or similar platforms).
- Strong experience with embedded real-time operating systems such as Integrity, QNX, Linux, or equivalent RTOS environments.
- Hands-on experience developing at the BSP level, as well as application and diagnostic software.
- Proficiency with hardware debugging and lab equipment, including logic analyzers, emulators, and digital multimeters (DMMs).
- Experience working with common embedded interfaces and communication protocols, including: SPI, I2C, USB, Ethernet.
- Strong verbal and written communication skills with the ability to clearly communicate technical concepts.
Preferred Qualifications
- Advanced proficiency in C/C++ development.
- Experience with mission-critical or highly reliable embedded software development processes.
- Background in industrial automation, communication systems, control systems, or other large-scale embedded product development environments.
- Experience validating and testing real-time embedded products that integrate software with analog and digital hardware.
- Agile/Scrum development experience.
What Makes a Strong Candidate
- Proven experience taking a product from board bring-up and BSP development through application deployment.
- Strong hands-on debugging skills with hardware instrumentation as a primary troubleshooting approach.
- Experience delivering embedded products in mission-critical, safety-conscious, or highly regulated environments.
Why Join Us?
- High level of technical ownership and autonomy.
- Opportunity to influence architecture and system design decisions.
- Full product lifecycle involvement from concept through validation.
- Direct exposure to both software and hardware development.
- Collaborative, high-trust engineering environment focused on real-time communication and control technologies.