Flight Software Engineer III
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 (FSW) developer for the Mars 2020 mission, you will be responsible for the design, implementation, and verification of various software components that control the Mars 2020 robot. This position reports to the FSW Cognizant Engineer (CogE), and works closely with the FSW Systems Engineer, the FSW Internal Test (FIT) Lead, and other FSW developers.
Would you like to see your code sent to the planet Mars? Feel the excitement as the nation watches your software execute during the intense landing on Mars. The Mars 2020 rover mission is the next step in NASA’s exploration of the red planet. The mission is timed for a July/August 2020 launch, and is based on the Curiosity rover and its proven landing system. Featuring a new suite of instruments, this project presents many engineering challenges, including testing a method for producing oxygen from the Martian atmosphere. The Mars 2020 rover introduces a drill that can collect core samples of the most promising rocks and soils and set them aside in a "cache" on the surface of Mars. A future mission could potentially return these samples to Earth. This exciting mission presents a variety of software development challenges, from device drivers to high-level behaviors and autonomy.
Specific Responsibilities: Become expert in the overall architecture of the Mars 2020 FSW Work with the FSW CogE and Systems Engineer to develop the requirements for your modules Develop and document novel designs for your modules, adhering to the FSW architecture Present your documented designs in a peer review setting, and review the designs of other developers Develop and test your code with the provided tools and within the FSW development environment Work with FSW test team members to develop appropriate strategies to test your modules in an integrated environment Identify and resolve technical issues within the integrated FSW, including those in other developer’s code Develop unit tests for your modules Test your code in the hardware-in-the-loop testbed and software simulations Bachelor’s degree in Computer Science, or related technical discipline with typically a minimum of 6 years of related experience; Master’s degree in similar disciplines with a minimum of 4 years of related experience; or PhD in similar disciplines with a minimum of 2 years related experience Expert knowledge and experience in embedded real-time software development in C Expert knowledge and experience in embedded real-time development methodologies, for the complete lifecycle phases of design, implementation, integration, and test Experience with UML and/or SysML Extensive understanding and wide application of advanced principles, theories and concepts regularly used in embedded real-time software development Significant experience with embedded/real-time software problem troubleshooting, isolation, and resolution Preferred Qualifications: Extensive knowledge of VxWorks and/or Green Hills Integrity Extensive knowledge and extensive experience in flight software development In-depth systems engineering experience and knowledge in avionics hardware, compute elements, IO interfaces (1553), communication standards, and/or fault detection, isolation, and recovery concepts Knowledge of Laboratory policies and procedures, NASA policies and procedures, and government regulations across a range of applications Extensive knowledge and experience in avionics subsystem and integrated flight hardware Experience in avionics subsystem flight and ground testbeds, support equipment, integration and validation Experience with the Python programming language