SpaceX Senior Software Engineer for Starshield developing reliable software systems controlling satellite constellations. Responsible for full software lifecycle including design, development, testing, and operational support.
Responsibilities
Create highly reliable software systems that control hundreds of satellites in low earth orbit
Leverage software design to improve satellite constellation performance, security, and availability to meet the needs of a wide range of users
See your software through from start to finish: from figuring out the core needs to prototyping, developing, and testing; to on-orbit rollout and beyond
Work with interdisciplinary teams to brainstorm, design, and build the next generation of satellite capabilities, from cutting-edge sensors and inter-satellite lasers to space-based cloud compute
There are several roles within the Starshield software team with different focus areas. Applicants will interview for specific focus areas based on hiring needs and qualifications. Specific role responsibilities may include:
Write high quality Linux-based C++ software for common processors and micro controllers (e.g. ARM, PowerPC, x86, etc.)
Implement networking technologies to direct data across a variety of satellites, ground operations centers, and users
Build automated ground-based software systems that integrate smart data processing with command and control of the satellites
Develop models and simulations for flight-like vehicle software testing, network performance analysis, or research & development projects
Develop tools that allow for test execution across multiple environments: virtualized hardware, real hardware-in-the-loop, and even vehicle-in-the-loop testing
Invent new systems that enable more frequent and reliable software deployment, test execution, and data analysis as part of a continuous integration and release system
Qualification
Bachelor's degree in computer scienceDevelopment experience in C/C++Experience with debugging
Required
Bachelor's degree in computer science, engineering, math, or other STEM discipline and 5+ years of experience in software development; OR 7+ years of professional experience in software development in lieu of a degree
Development experience in C/C++, Python, or other similar programming languages
Preferred
Developed and deployed software that has been used in real-world applications and projects
Knowledge of computer architecture and networks
Experience with debugging, performance optimization and unit testing
Ability to work effectively and creatively in a dynamic environment with changing needs and requirements
Ability to work independently and in a team, take initiative, and communicate effectively
Ability to obtain and maintain a Top Secret or Top Secret SCI clearance
Some preferred skills and experience depend on the specific team within flight software and may include:
Experience with networking protocols (TCP, UDP, etc.)