SENIOR SOFTWARE ENGINEER, PYTHON (DRAGON)
As a senior software engineer on the Dragon Software team, you will develop, analyze and verify the mission critical software that flies our Dragon crewed and cargo vehicles. You will partner cross-functionally to ensure software is configured to each mission's specifications and needs. You will be responsible for ensuring the vehicle behaves as expected, and troubleshoot flight software when necessary. You will provide strong technical leadership both within our team and when interfacing with external parties. You will have a direct impact on our ability to launch and fly vehicles frequently, safely and reliably.
RESPONSIBILITIES:
- Develop, execute, and analyze the software configuration and state machines for the software systems that fly our vehicles
- Invent new tools that enable more frequent and reliable software deployment, automated data review, and automated configuration verification
- Analyze test results and bugs that require in-depth investigations
- Hands-on integration and troubleshooting of flight hardware/software systems
- Develop automation frameworks that allow the software organization to move fast with high confidence in the quality of our code
- Architect and drive longer-term initiatives for continuous improvement
- Support mission operations as a flight software specialist
- Work closely with software developers to roll out new software changes to the vehicle fleet
- Occasional travel to launch sites and customer sites for testing and/or operations
BASIC QUALIFICATIONS:
- Bachelor’s degree in computer science, computer engineering, electrical engineering, math, or a STEM discipline and 4+ years professional experience in software engineering; OR 6+ years professional experience in software engineering in lieu of a degree
- Development experience in Python
PREFERRED SKILLS AND EXPERIENCE:
- Basic knowledge of electronics, controls, motor design, and physical mechanics
- 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
- Experience with software documentation, creating system diagrams, and enumerating software requirements
- Experience with software testing
- Knowledge of state machines
- 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
ADDITIONAL REQUIREMENTS:
- Must be available to work extended hours and weekends as needed
COMPENSATION AND BENEFITS:
Pay Range:
Software Engineer/Senior: $160,000.00 - $220,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. Exempt employees are eligible for 5 days of sick leave per year.