Senior Software Development Engineer – Satellite Software & Firmware Verified today
What you will do
- Develop flight software for satellite platforms, including avionics, attitude determination and control systems, power management, and onboard data handling.
- Design and implement firmware for embedded processors and FPGAs used in satellite subsystems.
- Work with real-time operating systems (RTOS), embedded Linux, and space-grade processors.
- Develop autonomous fault detection, isolation, and recovery (FDIR) mechanisms to ensure mission reliability.
- Implement and optimize spacecraft communication protocols (e.g., CCSDS, SpaceWire, CAN, UART, Ethernet).
- Perform software validation, verification, and integration with hardware-in-the-loop (HIL) simulations and satellite testbeds.
- Support pre-flight testing, launch preparations, and in-orbit operations, including remote software updates.
- Ensure compliance with industry standards (e.g., ECSS, NASA cFS, DO-178C, MISRA, CubeSat standards).
- Collaborate with partner organizations on satellite software development.
- Mentor junior software engineers.
What you need
- Master's degree in Computer Science, Electrical Engineering, Aerospace Engineering, or related field.
- 10+ years of experience developing flight software and firmware for satellites.
- Strong proficiency in C, C++, and Python for embedded systems and satellite software.
- Experience with real-time operating systems (RTOS) and low-level hardware-software interfaces.
- Knowledge of satellite communication protocols (e.g., CCSDS, SpaceWire, CAN, RS-422).
- Understanding of fault tolerance, redundancy, and radiation-hardened computing for space missions.
- Experience with version control systems (Git) and modern software development best practices.
- Experience with hardware-in-the-loop (HIL) testing, simulators, and satellite software testbeds.
- Proven experience with flight-proven software deployed on operational satellites.
Preferred experience
- Familiarity with satellite command and data handling systems, embedded Linux, and space-grade processors.
- Experience with CubeSats, small satellites, or GEO satellite constellations.
- Knowledge of flight software frameworks (e.g., NASA Core Flight System cFS, FreeRTOS, VxWorks).
- Background in autonomous spacecraft operations and AI-driven onboard decision-making.
- Experience with secure satellite communications, encryption, and cybersecurity in space systems.