Sr. Simulation Software Engineer (Application Software)
Role summary
SpaceX is seeking a Sr. Simulation Software Engineer to design, develop, and test in-house simulation software critical for all SpaceX flight systems, including Falcon, Starlink, and Starship. This role involves programming core simulation infrastructure and building models for physics systems. The engineer will collaborate across teams to create high-fidelity simulations for cutting-edge software and hardware development, focusing on improving reliability and performance. The position requires a Bachelor's degree in a STEM discipline with 5+ years of software development experience or 7+ years of professional experience, and at least 2 years of C++ development experience.
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.
SR. SIMULATION SOFTWARE ENGINEER (APPLICATION SOFTWARE)
As a Software Engineer on the Simulations team, you will design, develop, and test our in-house simulation software supporting all SpaceX flight systems. You will program the core simulation infrastructure and collaborate on the building of models of fluids, electronics, and multi-body physics systems. This is a high impact role where you will work across the engineering groups to build high fidelity simulations used to develop cutting-edge software and hardware. Our simulation software is critical to current and future mission successes including Falcon, Falcon Heavy, Dragon, Starlink, and Starship. SpaceX is looking for smart, motivated software engineers who enjoy taking on complex challenges, work well in dynamic environments and care about software best practices.
Help us build world class software that is critical to SpaceX mission to Mars.
RESPONSIBILITIES:
- Develop and maintain the high-fidelity real-time simulation software used for all vehicles
- Develop prototypes to prove out key design concepts and quantify technical constraints
- Maintain the highest standards of excellence, never settle for the status quo
- Improve reliability and performance of simulation software
- Work with simulation software users to develop new features and improve user experiences
BASIC QUALIFICATIONS:
- Bachelor's degree in computer science, engineering, math, or STEM discipline and 5+ years of experience in software development; OR 7+ years of professional experience in software development in lieu of a degree
- 2+ years development experience in C++
PREFERRED SKILLS AND EXPERIENCE:
- Strong software design and development skills in C++
- Understanding of distributed computing systems, networking protocols, memory management, and CPU scheduling
- Thorough knowledge of classical physics and math (algebra, calculus, Euclidean geometry)
- Strong skills in debugging, performance optimization and unit testing
- Creative approach to problem solving
- Experience with open source C++ simulators such as ROS2 and Gazebo
- 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
ADDITIONAL REQUIREMENTS:
- Willing to work extended hours and weekends when needed
COMPENSATION AND BENEFITS:
Pay Range:
Software Engineer/Senior: $160,000.00 - $225,000.00/per year
Your actual level and base salary will be determined on a case-by-case basis and may vary based on the following considerations: job-related knowledge and skills, education, and experience.
Base salary is just one part of your total rewards package at SpaceX. You may also be eligible for long-term incentives, in the form of company stock, stock options, or long-term cash awards, as well as potential discretionary bonuses and the ability to purchase additional stock at a discount through an Employee Stock Purchase Plan. You will also receive access to comprehensive medical, vision, and dental coverage, access to a 401(k) retirement plan, short & long-term disability insurance, life insurance, paid parental leave, and various other discounts and perks. You may also accrue 3 weeks of paid vacation & will be eligible for 10 or more paid holidays per year. Employees accrue paid sick leave pursuant to Company policy which satisfies or exceeds the accrual, carryover, and use requirements of the law.
ITAR REQUIREMENTS:
- To conform to U.S. Government export regulations, applicant must be a (i) U.S. citizen or national, (ii) U.S. lawful, permanent resident (aka green card holder), (iii) Refugee under 8 U.S.C. § 1157, or (iv) Asylee under 8 U.S.C. § 1158, or be eligible to obtain the required authorizations from the U.S. Department of State. Learn more about the ITAR here.
SpaceX is an Equal Opportunity Employer; employment with SpaceX is governed on the basis of merit, competence and qualifications and will not be influenced in any manner by race, color, religion, gender, national origin/ethnicity, veteran status, disability status, age, sexual orientation, gender identity, marital status, mental or physical disability or any other legally protected status.
Applicants wishing to view a copy of SpaceX's Affirmative Action Plan for veterans and individuals with disabilities, or applicants requiring reasonable accommodation to the application/interview process should reach out to EEOCompliance@spacex.com*.*
Sample SpaceX interview questions
- 1
Build a distributed platform for storing and serving digital assets.
system designmedium - 2
Develop a web app that shortens URLs like TinyURL.
system designmedium - 3
Propose a high-level design for a tracing system that can handle millions of spans per second across thousands of services.
system designmedium - 4
Iterator over a Binary Search Tree Implement an iterator over a binary search tree. Input: root = [7,3,15,null,null,9,20], calls: next(), hasNext(), next() Output: 3, TRUE, 7 Explanation: The iterator yields the smallest value (3), confirms more nodes exist, then properly yields the next in-order value (7).
codingmedium - 5
Count Anagrammatic Substrings Count the number of anagrammatic substrings from one string present in another. Input: s = "abab", p = "ab" Output: [0, 1, 2] Explanation: The substrings "ab", "ba", and "ab" starting at indices 0, 1, and 2 respectively are all anagrams of the string "ab".
codingmedium
Sign up for a personalized interview prep pack tailored to this role.
Similar roles
- Simulation Software Engineer (Application Software)Jobs via Dice · California, United States · Onsite
- Sr. Simulation Software Engineer (Application Software)Jobs via Dice · California, United States · Onsite
- Simulation Software Engineer (Application Software)SpaceX · Hawthorne, California, United States · Onsite
- Sr. Simulation Software Engineer (Application Software)SpaceX · Hawthorne, California, United States · Onsite
- Simulation Software Engineer (Application Software)SpaceX · California, United States · Onsite