Spacecraft Flight Software Engineer

United States (USA), Sapienza Consulting [NSSR0062]

Field(s) of expertise
Software Engineering Aerospace Engineering
Job type

About this job

Sapienza Consulting has been retained by a NewSpace communications venture headquartered in the US, who are currently seeking an experienced Spacecraft Flight Software Engineer. The incumbent will help design and test the satellite bus flight software.


The Spacecraft Flight Software Engineer will be developing a variety of embedded flight software applications for commanding and controlling ground and space payloads. This includes developing our clients satellite command and data handling system software, in addition to software for both it’s primary (payload) and secondary radio communications functions. The software will initially be tested on the satellite prototype in a lab environment that simulates orbit operations and the software engineer will also be responsible for implementing methods of data acquisition to ensure successful testing, verification, and validation.

The perfect candidate for this role will have significant previous experience designing, developing, and testing software for many small spacecrafts and particularly on rapid timelines. We are looking for engineers that enjoy a challenge and have a track record of creative thinking to solve unconventional problems.

Core Responsibilities:

The Spacecraft Flight Software Engineer will be responsible for design, development, and testing of all spacecraft flight software including that for our clients spacecraft Command & Data Handling, Power, Communications, and Guidance, Navigation, & Control Systems. This includes:

  • Developing Linux applications that implement the major functions required by our clients’ satellite flight system
  • Creating device drivers and other embedded software to interact with satellite devices/electronics using I2C, SPI, RS-422, RS-485, Ethernet, etc. protocols
  • Implementing inter-application coordination and communications using standard Inter-process communication (IPC) mechanisms available in Linux
  • Developing test software and drivers to support unit, integration, and system testing of all flight software functions
  • Writing this software in C, C++, or other languages in a Linux or Windows environment


  • A Bachelor’s degree (or better) in Software, Electrical, Aerospace, or related field.
  • At least five years of recent real-time embedded flight software experience
  • Previous experience developing and testing embedded software for SmallSats / CubeSats is desired
  • Demonstrated experience working with multiple programming languages (C, C++, Python), operating systems, and development environments
  • Experience with device driver development and software/hardware interfaces
  • Experience with Inter-process communication (IPC) mechanisms
  • Past experience with Hardware-in-the-loop integration and testing desired
  • US Citizenship required