

Embedded Software Engineer
Actalent
Posted Wednesday, April 23, 2025
Posting ID: JP-005228595
Job Title: Embedded Software Engineer
Job Description
We are seeking an experienced Embedded Software Engineer to design and implement embedded software solutions that interface with sensors, wireless radios, ethernet networks, and more, while maintaining hard real-time requirements. You will develop robust drivers and firmware components that integrate seamlessly into larger embedded platforms and work closely with FPGA, hardware, and DSP teams to ensure smooth integration of software and firmware components. Additionally, you will optimize embedded system performance in areas such as memory usage, real-time responsiveness, and power consumption across various platforms and microcontrollers. Collaboration with QA and test engineers to define comprehensive testing strategies, including unit tests and automated integration tests, is also a key aspect of this role. You will diagnose complex issues using debug tools, oscilloscopes, and in-circuit emulators to ensure system reliability and stability.
Responsibilities
- Design and implement embedded software solutions that interface with sensors, wireless radios, and ethernet networks.
- Develop robust drivers and firmware components for seamless integration into larger embedded platforms.
- Work closely with FPGA, hardware, and DSP teams for smooth integration of software and firmware components.
- Optimize embedded system performance in terms of memory usage, real-time responsiveness, and power consumption across various platforms and microcontrollers.
- Collaborate with QA and test engineers to define comprehensive testing strategies, including unit tests and automated integration tests.
- Diagnose complex issues using debug tools, oscilloscopes, and in-circuit emulators to ensure system reliability and stability.
Essential Skills
- 10+ years of experience in embedded software development using C/C++.
- Strong hands-on knowledge of microcontrollers, RTOS environments, hardware interfaces (SPI, I2C, UART), and hardware-in-the-loop testing.
- Familiarity with version control tools (e.g., Git) and continuous integration (CI/CD) practices.
- Strong experience in developing within RTOS environments.
- Experience with Python.
Additional Skills & Qualifications
- Comfortable working at the intersection of hardware and software, understanding low-level drivers, interrupt service routines, and resource constraints.
- Ability to translate system requirements into efficient, maintainable code with a keen eye for potential performance bottlenecks.
- Adept at breaking down complex technical challenges related to sensors, wireless protocols, or real-time constraints into actionable tasks.
- Thrives in a fast-paced, R&D-focused environment where some requirements may be fluid and solutions need to be validated quickly.
Work Environment
The role involves working in a dynamic R&D-focused environment, where requirements may sometimes be fluid and solutions need to be validated quickly. You will use various technologies and equipment, including debug tools, oscilloscopes, and in-circuit emulators. Collaboration with different teams such as FPGA, hardware, and DSP is an integral part of the job. The position demands hands-on engagement with microcontrollers and RTOS environments, optimizing embedded system performance, and ensuring system reliability and stability.
Contact Information
Recruiter: Michael Nanke
Phone: (248) 764-1617
Email: mnanke@actalentservices.com