SpaceX was founded under the belief that a future where humanity is out exploring the stars is fundamentally more exciting than one where we are not. Today SpaceX is actively developing the technologies to make this possible, with the ultimate goal of enabling human life on Mars.
Senior Software Engineer (Software Test)
Join the team that writes code to ensure correctness and performance of the flight software systems that control our Falcon 9 rocket, Dragon spacecraft, satellites and the new Starship vehicle. You will own all aspects of software testing, from experimental and development systems through final verification and certification of software for launch. The rigorous unforgiving environments of launch and space travel require flawless execution of the vehicle software. Your creativity and relentless commitment to quality will be a key component to building the safest and most reliable space vehicles.
- Develop automation frameworks that allow the software organization to move fast with high confidence in the quality of our code.
- Invent new tools that enable more frequent and reliable software deployment, test execution, and data analysis as part of our continuous integration and release system
- Test the code that flies and controls our rockets, spacecraft, satellites and ground stations using multiple levels test environments: simulated hardware, hardware-in-the-loop, vehicle-in-the-loop
- Analyze test results and root cause bugs that require in-depth investigations by monitoring real time vehicle telemetry and using our post flight data review tools
- Perform hands-on integration and troubleshooting of flight hardware/software systems
- Occasional travel to launch sites and customer sites for testing and/or operations
- Bachelor's degree in computer science, computer engineering, electrical engineering, math, or scientific discipline and 4+years in software engineering, OR 6+ years in software engineering without a degree
- 2+ years with a scripting language (Python, Perl, Ruby)
Preferred Skills and Experience:
- Fluency in Linux, including:
- Bash shell scripting
- Network troubleshooting
- Performance analysis and debugging (strace, ftrace, etc.)
- Experience building or working with real-time embedded systems
- Creative approach to problem solving
- Ability to work effectively in a dynamic environment with changing needs and requirements
- Ability to work independently and in a team, take initiative, and communicate effectively