SpaceX Software Engineer for Starshield responsible for creating reliable software systems controlling satellite constellations and improving satellite performance and security. Develops software from design through 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 CStrong skills in debugging
Required
Bachelor's degree in computer science, engineering, math, or scientific discipline; OR 2+ years of professional experience in software development in lieu of a degree
Development experience in C, C++, or Python or full stack software development experience
Preferred
Developed and deployed software that has been used real-world applications and projects
Solid fundamental knowledge of computer architecture and networks
Strong skills in 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)