Software Engineer, Embedded Software Engineer, Embedded Systems/ Firmware/ IoT
Listed on 2026-10-14
-
Software Development
Embedded Software Engineer, Embedded Systems/ Firmware/ IoT, C++ Developer
Job Title:
Senior Principal Embedded Software Engineer
Job Description
This role focuses on low-level embedded software development for next-generation flight control, hybrid propulsion, and aircraft electrification systems across commercial and military aerospace applications. You will work close to the hardware to design and implement foundational platform software, including processor bring-up, board support packages, bootloaders, multicore architectures, and Real-Time Operating System (RTOS) integration, enabling safety-critical avionics and flight control platforms.
ResponsibilitiesDesign, develop, and integrate low-level embedded software for aerospace control systems and safety-critical platforms.
Develop bare-metal software, bootloaders, Board Support Packages (BSPs), device drivers, and processor initialization routines.
Perform processor bring-up and hardware enablement activities for multicore ARM-based System-on-Chip (SoC) platforms.
Configure, enable, and optimize SoC capabilities for real-time and safety-critical aerospace applications.
Architect and implement Symmetric Multi-Processing (SMP) and Multi-Core Processor (MCP) software frameworks.
Develop and execute benchmarking methodologies to evaluate and optimize SoC performance.
Analyze and mitigate multicore interference risks to ensure deterministic system behavior in safety-critical environments.
Integrate and optimize Real-Time Operating Systems (RTOS) for flight control and other aerospace applications.
Design and implement communications interfaces and protocols such as Time-Sensitive Networking (TSN), PCIe, AFDX, and related deterministic technologies.
Perform advanced timing and performance analyses, including Worst Case Execution Time (WCET) assessments.
Support FPGA and ASIC integration efforts, including hardware/software interface development and timing analysis.
Develop software test environments and verification methodologies tailored to safety-critical systems.
Generate clear technical documentation, performance assessments, and fit-for-purpose evaluations for aerospace platforms.
Collaborate closely with systems, hardware, FPGA, and controls engineering teams throughout the product lifecycle to ensure cohesive system integration and performance.
Participate in software integration, debugging, and troubleshooting activities within embedded environments.
Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related technical discipline.
Significant hands-on experience developing low-level embedded software in C and C++.
Proven experience with bare-metal embedded development, including direct hardware interaction.
Experience developing and maintaining bootloaders, BSPs, device drivers, and processor initialization software.
Practical experience working with Real-Time Operating Systems (RTOS) in embedded applications.
Experience with multicore processors, embedded architectures, or ARM-based systems.
Strong understanding of hardware/software interactions, memory architectures, interrupts, and processor-level debugging techniques.
Experience performing software integration and troubleshooting in embedded environments.
Background in low-level embedded software development for avionics or other safety-critical systems.
Skills & Qualifications
Experience with NXP S32 family processors, including S32G2.
Experience with NXP Layerscape devices in aerospace, avionics, defense, or other safety-critical industries.
Knowledge of DO-178C software development and certification processes for airborne systems.
Experience supporting Level A safety-critical software development efforts.
Knowledge of multicore processing architectures and techniques for interference mitigation.
Experience with deterministic communication protocols such as Time-Sensitive Networking (TSN), PCIe, and AFDX.
Experience using ARM Development Studio (ARM DS IDE) and associated debugging tools.
Python scripting experience for test automation and tooling.
Experience performing WCET, Data Coupling and Control Coupling (DCCC), and related timing and dependency analyses.
Exposure to FPGA and ASIC interface development and hardware/software co-design.
- You will work in a technically rigorous aerospace engineering environment focused on safety-critical flight control and electrification systems. The role centers on platform-level embedded software that interacts directly with modern multicore ARM-based SoCs, RTOS platforms, and deterministic…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).