Embedded Software Engineer II
- Compensation
- Not disclosed
- Location
- JPL Campus
- Work setup
- Not specified
- Seniority
- Middle
- Employment
- Contract
- Experience
- 0+ years
- Category
- Embedded
- Posted
Skills
Must have
- Bachelor’s degree in Computer Science, Computer Engineering, or related field with a minimum of 3 years of related work experience; Masters in a related discipline with a minimum of 1 year of related
- Software engineering experience using C/C++ and Python
- In depth knowledge of Object-Oriented Programming concepts
- Knowledge and hands-on programming experience in writing simulation software
- Experience with low-level software/hardware interfaces
- Experience with developing and debugging real-time embedded software systems.
- Good understanding of concurrent programming, multi-threading and inter-process communication mechanisms.
- Strong verbal and written communication, presentation, and interpersonal skills with ability to work in a team environment.
- Experience with continuous integration and modern source configuration control
Nice to have
- Background in dynamics simulation and integration methods
- System engineering experience in generating, tracking and proving successful implementation of requirements.
- Experience in leading software development projects
- Experience with driver development for real-time embedded applications.
Full description
Job Details
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.
The Support Equipment Software Group at JPL designs and builds high-fidelity workstation-based and hardware-in-the-loop simulators for supporting the development and testing of the avionics systems. We are part of JPL’s Autonomous Systems & Advanced Software Division that designs and builds spacecraft to explore remote destinations in our solar system.
We are looking for an experienced and self-driven Embedded Software Engineer II with a passion for writing simulation software and embedded software. As a software engineer in this group, you will design, build, and test software that simulates complex avionics hardware and physical environments.
Tasks include but are not limited to:
- Working with the project lead, system engineers, and product users to generate software requirements and design for the simulation software components.
- Implementing software components in C/C++ and Python per the requirements and design.
- Developing embedded real-time application programs utilizing Real-Time Operating Systems.
- Testing software and verifying requirements and design by using well established unit testing and functional testing methodologies.
- Preparing and conducting requirements reviews, design reviews, code reviews, and test reviews throughout the software development cycle.
Qualifications:
- Bachelor’s degree in Computer Science, Computer Engineering, or related field with a minimum of 3 years of related work experience; Masters in a related discipline with a minimum of 1 year of related work experience; PhD in a related discipline with 0 years of related work experience.
- Software engineering experience using C/C++ and Python
- In depth knowledge of Object-Oriented Programming concepts
- Knowledge and hands-on programming experience in writing simulation software
- Experience with low-level software/hardware interfaces
- Experience with developing and debugging real-time embedded software systems.