Flight Software Engineer I

NASA Jet Propulsion Laboratory
•$96,616 - $117,104•Onsite

About The Position

JPL’s Flight Software & Systems Engineering Section provides flight software and systems engineering for the design and implementation of spacecraft for the laboratory’s flight projects. The Instrument Flight Software Group leads the definition and implementation of embedded real-time software systems, including the design, development, testing, and delivery of embedded flight software for instruments supporting JPL/NASA missions and experiments. As an embedded Flight Software Engineer, you will implement or test science-instrument and spacecraft capabilities, including command, communication, data management, instrument management, and fault protection. The work ranges from low-level device drivers to high-level behaviors and includes designing and implementing real-time flight software, collaborating with instrument engineers on requirements and software design, and developing software modules for flight-system functions and hardware/software interfaces. You will also develop and run tests using simulators and testbeds, evaluate results, troubleshoot integrated flight software, and collaborate with multidisciplinary teams and experienced flight software developers.

Requirements

  • Bachelor’s degree in Computer Science, Computer Engineering, or a related technical discipline and at least 1 year of related experience; alternatively, a master’s degree in a similar discipline, or a Ph.D. in a similar discipline with zero years of related experience.
  • Strong C/C++ programming skills.
  • Multi-threaded programming experience or knowledge.
  • Coursework in operating systems, computer architecture, algorithms, and data structures.
  • Knowledge of principles, theories, concepts, and hands-on programming techniques for developing, modifying, debugging, releasing, and maintaining real-time embedded software systems for mission-critical aerospace applications.
  • Knowledge of developing embedded real-time application programs using an RTOS.
  • Knowledge of developing device drivers and software/hardware interfaces for custom and commercial hardware.
  • Knowledge of distributed computing and inter-process communication mechanisms in a space-partitioned software architecture.
  • Knowledge of communication buses and protocols, including SpaceWire, PCI/PCIe, UART, and Ethernet.
  • Knowledge of continuous integration, development flow, and git flow processes.
  • Internship or experience involving significant C or C++ programming.
  • Internship or experience with embedded processors or microcontroller programming, or with the development process on CubeSats.

Nice To Haves

  • Coursework in programming languages, software engineering, computer science theory, or embedded programming.
  • Experience with Python, C++, or Java.
  • Experience applying artificial intelligence tools to technical projects.

Responsibilities

  • Design and implement real-time flight software for science instruments.
  • Work with instrument engineers to develop software requirements and design flight software components that meet project requirements.
  • Design software modules implementing flight-system functions, hardware/software interfaces, boot processes, command and data handling, instrument operations, science-data acquisition and control, engineering and science data handling, fault protection, and thermal and power control in nominal and off-nominal scenarios.
  • Develop test plans, unit tests, and regression tests; run tests against simulators and testbeds and evaluate results.
  • Identify and troubleshoot technical issues with flight software in an integrated system.
  • Work with multidisciplinary teams and experienced flight software developers.

Benefits

  • Health, dental, and vision plans.
  • Wellbeing and retirement plans.
  • Paid time off.
  • Learning opportunities.
  • Rideshare benefits.
  • Childcare.
  • Flexible schedule.
  • Parental leave.
  • Additional traditional and unique benefits and perks.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service