Flight Software Engineer II, TS/SCI
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 an Embedded/Flight Software Engineer for the Small Scale 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 software developer the experience in the form of software development activities to implement the test environment infrastructure and test tools to support embedded real-time software testing. Additional role of this position is to implement the Verification and Validation (V&V) program of the embedded real-time software that includes test case specifications, detailed test procedure development, test execution, test result analysis, and defect resolution for the flight software development organization. This role will apply initiative and sound engineering judgment in designing and implementing the test environment, in specifying the test procedure and in executing the test cases that validate software requirements, and to provide support to software developers in resolving problems identified during test.
- Work with the FIT team, software developers, and system engineers to define test cases, test scenarios, and expected test results. Some level of system engineering activity will be required to effectively perform this role.
- Test the flight software (in both simulation and testbed environments) using test scripts (written in Python) written by the FIT test engineer.
- Perform flight software build and integration activities.
- Produce documentation or presentation material on the wiki, in Power Point, or Word.
- Work with system administrators and the ‘Ground Data System Integration, Test, and Deployment’ team in maintaining and updating the flight software development environment.
This position typically requires a Bachelor’s degree in Computer Science, Aerospace Engineering or related discipline with a minimum of 3 years of related experience; a Master’s degree in similar disciplines with a minimum of 1 years of related experience; a PhD with 0 years of related experience.
Applicant must be a U.S. Citizen with an active Top Secret (TS) clearance based upon Single Scope Background Investigation (SSBI) within a 5 year scope and be able to be approved for Sensitive Compartmented Information (SCI) accesses.
Other requirements include:
- Strong architectural and software development experience in implementing test environment infrastructure and tools to facilitate test script development, test execution, test results visualization, test output analysis to automate success/failure verification, test data archival and search facility.
- General knowledge and experience in the principles, concepts and techniques in developing, testing, and debugging of embedded real-time software systems for mission-critical, aerospace applications.
- Working experience in a Linux operating system for software development and testing.
- Ability to work with hardware test platform consisting of compute elements and other devices for software testing.
- Self-motivated with strong verbal and written communication, presentation, and interpersonal skills and the ability to work well individually or in a team environment.
- Ability to quickly learn new programming languages, software applications, etc.
Preferred qualifications include:
- Experience with testing of real-time embedded systems
- Hands-on experience in programming languages
- At least 6 years of C and Python programming experience.
- Experience in performing the role of system engineer to specify testing scenarios
- Experience with formal software development processes, standards, and practices for space missions in an environment like JPL.
Note: As a temporary position, this assignment may last up to 36 months in duration with approvals based on 12 months assignments. However, please note that you are not under any employment contract and your temporary employment status can be terminated at any time with or without notice.
Connect with Us
Not ready to apply? Connect with us for general consideration.
JPL is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard to sex, race, color, religion, national origin, citizenship, ancestry, age, marital status, physical or mental disability, medical condition, genetic information, pregnancy or perceived pregnancy, gender, gender identity, gender expression, sexual orientation, protected military or veteran status or any other characteristic or condition protected by Federal, state or local law.
In addition, JPL is a VEVRAA Federal Contractor.
The Jet Propulsion Laboratory is a federal facility. Due to rules imposed by NASA, JPL will not accept applications from citizens of designated countries or those born in a designated country unless they are Legal Permanent Residents of the U.S or have other protected status under 8 U.S.C. 1324b(a)(3). The Designated Countries List is available here.