Senior Flight Software & Embedded Systems Engineer
We are seeking a highly experienced and mission-driven Senior Flight Software & Embedded Systems Engineer to develop mission-critical satellite software and firmware for our client, a leader in the space technology sector.
This pivotal role will focus on designing, developing, testing, and deploying robust onboard software that ensures the success and long-term reliability of advanced satellite missions, spanning low-Earth orbit (LEO), geostationary (GEO), and deep-space missions. The ideal candidate brings a proven track record of flight experience, a strong background in embedded software development for space systems, and deep expertise in real-time operating systems (RTOS), fault-tolerant computing, and spacecraft autonomy.
---
Key Responsibilities
· Develop, design, and deploy flight software for various satellite platforms, including avionics, attitude determination and control systems (ADACS), power management, and onboard data handling.
· Design and implement firmware for embedded processors and FPGAs used in critical satellite subsystems.
· Work extensively with real-time operating systems (RTOS), embedded Linux, and space-grade processors.
· Engineer autonomous Fault Detection, Isolation, and Recovery (FDIR) mechanisms to guarantee superior mission reliability and operational resilience.
· Implement and optimize spacecraft communication protocols (e.g., CCSDS, SpaceWire, CAN, UART, Ethernet).
· Execute rigorous software validation, verification, and integration, utilizing hardware-in-the-loop (HIL) simulations and dedicated satellite testbeds.
· Support pre-flight testing, launch preparations, and critical in-orbit operations, including remote software updates and patching.
· Ensure full compliance with critical industry and government standards (e.g., ECSS, NASA cFS, DO-178C, MISRA, CubeSat standards).
· Collaborate with key partner organizations on next-generation satellite software development efforts.
· Mentor and guide junior software engineers, elevating the team's technical capabilities.
---
Basic Qualifications
· Master’s degree in Computer Science, Electrical Engineering, Aerospace Engineering, or a closely related technical field.
· 10+ years of professional experience developing flight software and firmware specifically for operational satellites.
· Demonstrated, strong proficiency in C, C++, and Python for embedded systems and flight software applications.
· Extensive, hands-on experience with real-time operating systems (RTOS) and developing low-level hardware-software interfaces.
· Expert-level knowledge of satellite communication protocols (e.g., CCSDS, SpaceWire, CAN, RS-422).
· Deep understanding of fault tolerance, redundancy, and radiation-hardened computing principles for demanding space environments.
· Proven experience with version control systems (Git) and modern, agile software development best practices.
· Direct experience with hardware-in-the-loop (HIL) testing, simulators, and satellite software testbeds.
· Proven experience with flight-proven software deployed on operational satellites.
---
Preferred Skills & Experience
· Familiarity with satellite command and data handling systems, embedded Linux distributions, and a variety of space-grade processors.
· Experience with CubeSats, small satellites, or large GEO/LEO satellite constellations.
· Knowledge of common flight software frameworks (e.g., NASA Core Flight System (cFS), FreeRTOS, VxWorks).
· Background in autonomous spacecraft operations and emerging AI/ML-driven onboard decision-making systems.
· Experience with secure satellite communications, encryption technologies, and cybersecurity in space systems.