Design, implement, and test embedded software solutions in C/C++ for microcontrollers, real-time operating systems (RTOS), or Linux-based embedded systems. Develop firmware and low-level drivers to interface with sensors, communication buses, and custom hardware. Support integration of embedded software with hardware components, including bring up, debugging, and troubleshooting. Participate in system architecture discussions and assist in defining requirements and design specifications. Implement secure coding practices and support cyber-hardened embedded software designs. Conduct unit testing, integration testing, and performance validation. Analyze system logs, memory usage, and timing behavior to optimize performance. Create and maintain technical documentation, including design descriptions, interface control documents (ICDs), test procedures, and user guides. Participate in Agile sprint cycles, technical reviews, and code walkthroughs. Provide technical support for fielded systems and assist with defect resolution. Collaborate with electrical, systems, and test engineering teams to ensure end-to-end solution performance. Other duties as assigned.
Stand Out From the Crowd
Upload your resume and get instant feedback on how well it matches this job.
Job Type
Full-time
Career Level
Senior