Embedded Software Engineer
Salvo Software
Posted: October 13, 2025
Interested in this position?
Create a free account to apply with AI-powered matching
Quick Summary
We are seeking an Embedded Software Engineer to develop and test mission-critical software for next-generation flight computers and autonomous systems.
Required Skills
Job Description
About Salvo Software
Salvo Software is a global development studio with offices in the U.S., Mexico, and India. We design and deliver advanced technology solutions for clients across different industries. Our team specializes in building high-performance, safety-critical systems with a focus on reliability, innovation, and real-time performance.
We are expanding our aerospace engineering division and seeking an Embedded Software Engineer to develop and test mission-critical software for next-generation flight computers and autonomous systems.
Role Overview
As an Embedded Software Engineer at Salvo Software, you will play a key role in designing, developing, and verifying embedded software for flight control and mission systems. This is a hands-on role that requires deep technical expertise in C programming, embedded systems, and microcontroller-based development. You will collaborate closely with cross-functional hardware and avionics teams to ensure the reliability, performance, and compliance of embedded software aligned with aerospace standards.
Key Responsibilities
• Design, develop, and maintain embedded software for flight computers and mission-critical systems.
• Implement and optimize code in C for microcontrollers (ARM Cortex-M or similar).
• Develop and integrate device drivers, bootloaders, and middleware for peripherals (UART, SPI, I2C, CAN, GPIO).
• Integrate algorithms related to navigation, control, and sensor data processing into embedded applications.
• Debug software directly on custom hardware, working closely with hardware engineers to identify and resolve integration issues.
• Perform unit, integration, and system-level testing of embedded software to ensure reliability and compliance with real-time performance requirements.
• Participate in system architecture design, peer code reviews, and continuous improvement initiatives.
• Ensure adherence to aerospace and safety-critical software development standards (e.g., DO-178C).
Requirements:
• Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, or a related field (or equivalent experience).
• 7+ years of professional experience in embedded software development.
• Advanced proficiency in C programming for embedded systems.
• Strong hands-on experience with ARM Cortex-M or similar microcontrollers.
• Proven background in embedded system design, debugging, and real-time performance optimization.
• Experience with RTOS (e.g., FreeRTOS) for scheduling and task management.
• Proficiency with debugging tools such as JTAG, SWD, oscilloscopes, and logic analyzers.
• Strong understanding of deterministic real-time software design principles.
• Excellent collaboration and communication skills across multidisciplinary teams.
Preferred Qualifications (Bonus)
• Experience with NXP i.MX RT series or similar high-performance MCUs.
• Familiarity with aerospace software standards (e.g., DO-178C).
• Experience with embedded Linux or other real-time operating systems.
• Knowledge of avionics architectures or flight control systems.
• Proficiency with Git, CI/CD, and modern development pipelines.
• Experience with Assembly language for optimization and low-level system tuning.
• Familiarity with Guidance, Navigation, and Control (GNC) applications.
• Passion for advancing autonomous aerospace technology and wildfire mitigation systems through software innovation.