Senior Embedded Flight Software Engineer, Advanced Flight Software

  • Jet Propulsion Laboratory
  • Pasadena, CA
  • Mar 21, 2019
Information Technology

Job Description

Jet Propulsion Laboratory

Senior Embedded Flight Software Engineer, Advanced Flight Software


Job ID: 2019-10440
Type: Regular Full-Time
# of Openings: 1
Category: Software and Computing Systems


New ideas are all around us, but only a few will change the world. That’s our focus at JPL. We ask the biggest questions, then search the universe for answers—literally. We build upon ideas that have guided generations, then share our discoveries to inspire generations to come. Your mission—your opportunity—is to seek out the answers that bring us one step closer. If you’re driven to discover, create, and inspire something that lasts a lifetime and beyond, you’re ready for JPL.

Located in Pasadena, California, JPL has a campus-like environment situated on 177 acres in the foothills of the San Gabriel Mountains and offers a work environment unlike any other: we inspire passion, foster innovation, build collaboration, and reward excellence.


As a Flight Software Engineer for the Advanced Flight Software Group, you will be working for JPL’s Flight Software and Avionics Systems Section, which provides leadership and unique world-class expertise in Avionics System Engineering, Flight Command and Data Handling (C&DH) Software, Avionics System Integration, Test, Operations, and Software Technology Research.

This position will provide a seasoned flight software engineer with opportunities to implement, test, verify and validate major JPL Flight Software products on missions and technology developments of national importance. As a senior Flight Software Engineer, this role will apply innovation and sound engineering judgment in designing functionality and resolving technical issues associated with the implementation of JPLs Flight Software products.

Specific responsibilities include:

  • Ensure that the software system design meets functional and performance requirements and complies with institutional standards, reliability requirements, project requirements, and approved waivers.
  • Implement Flight Software modules following stringent flight development processes and standards.
  • Develop, prepare and execute Flight Software verification and validation plans of significant impact to the laboratory.
  • Lead teams of software engineers to achieve programmatic objectives within time and cost constraints.
  • Lead internal and external multidisciplinary cross-organizational working groups or design teams as needed to conduct trades or resolve technical issues.
  • Provide inputs to the Product Delivery Manager for planning and budgeting efforts including cost estimation and scheduling of engineering task.
  • Advise senior management on complex, advanced and unique issues associated with the flight software product.
  • Provide expert technical review together with design and implementation direction for the JPL projects including implementation of highly reliable real time embedded avionics.
  • Serve as a senior member of the Section and provide guidance and advice to Section management in developing and in establishing guidelines, templates, examples, and policies for software management techniques, software development tools, and training.


This position typically requires a Bachelor’s degree in Electrical Engineering, Computer Science, or related technical discipline with typically a minimum of 12 years of related experience; Master’s degree in similar disciplines with a minimum of 10 years of related experience; or PhD in similar disciplines with a minimum of 8 years related experience.

Other requirements include:

  • Expert knowledge and experience in embedded real time flight software system development, delivery and management of the command and data handling (CDH) and other applications for the spacecraft avionics system.
  • Expert knowledge and experience in FSW development methodologies, including UML, SYSML, and model based systems engineering, for the complete lifecycle phases of design, implementation, integration, and test of the flight software.
  • In-depth experience and knowledge in Avionics hardware, compute elements, IO interfaces (1553, SpaceWire), communication standards (CCSDS), and fault redundancy concepts. Knowledge and familiarity in the latest processing platforms for space applications, multi-core systems, Time and Space partitioning and corresponding software architecture.
  • Extensive understanding and wide application of advanced principles, theories, concepts and techniques of Systems Engineering.
  • Expert knowledge of industry and/or academic practices and standards (e.g., CMMI) across a range of applications related to flight software development, test, and delivery for the spacecraft avionics sub-systems.
  • Extensive understanding and wide application of advanced principles, theories and concepts regularly used in flight software development for spacecraft avionics subsystems.
  • Significant experience with embedded flight software problem troubleshooting, isolation, and corrective action development.
  • In-depth experience in the design and implementation of low level software that provides programming interface and functional capabilities for application software to interact with the Real Time Operating System (RTOS) and device level registers.
  • An extensive background in software development and testing with specific experience in the following languages and operating systems: C++, C, Python, Linux, WindRiver VxWorks.
  • Strong verbal and written communication, presentation, and interpersonal skills with ability to work in a team environment.

Preferred qualifications include:

  • Complete knowledge of Laboratory policies and procedures, NASA policies and procedures, and government regulations across a range of applications.
  • Considered a subject matter expert in the field of Aerospace Software development.
  • Experience with Avionics subsystem and integrated flight hardware.
  • Familiarity with avionics subsystem flight and ground testbeds, support equipment, integration and validation.
  • Extensive experience developing and managing software product lines.
  • History of initiating software technology advancement and infusion proposals.

Caltech/JPL is an Equal Employment Opportunity (EEO) and affirmative action employer. It is the policy of Caltech/JPL to provide equal employment opportunities, actively recruit, and include for employment consideration all qualified applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, age, protected veteran or disabled status, or genetic information.