Embedded Software Engineer, OS/Platform (Starlink)
Bastrop, TX
SpaceX is actively developing the technologies to make a future where humanity explores the stars possible, with the ultimate goal of enabling human life on Mars. We are leveraging our experience building rockets and spacecraft to deploy Starlink, the world’s most advanced broadband internet system, and are looking for best‑in‑class engineers to help maximize Starlink’s utility worldwide.
As an Embedded Software Engineer on the Starlink program, you will solve challenges underpinning every aspect of the program’s growth. The areas you could have an impact on include:
- Bringing up next‑generation space‑grade silicon, including in‑house designed SoC and peripherals.
- Developing software from early‑stage boot loaders to business logic with an emphasis on deterministic, secure, and performant platforms for all SpaceX Linux‑based spacecraft and ground‑based components.
- Creating infrastructure and tools to enable rapid development and testing of new OS/platform features.
Our software engineers are responsible for the complete lifecycle of the software they create, including development, testing, and support.
Responsibilities
- Maintain and update in‑house branches of OSS software such as Linux, Buildroot, and u‑boot.
- Support secure‑boot and runtime security for all Linux‑based satellite components.
- Maintain the spacecraft Ethernet network and connectivity.
- Develop, deploy and test the spacecraft software update process.
- Support in‑house SoC and peripheral throughout the life‑cycle of the part.
- Support OS/Platform‑specific test infrastructure.
- Develop and support device drivers for third‑party and in‑house components.
- Be the first software team to receive new satellite components.
- Interface with Silicon, Electrical, and Application Software Engineers to bring hardware from prototype to on‑orbit operations.
Basic Qualifications
- Bachelor’s degree in computer science, engineering, math, or science discipline; OR 2+ years of professional experience in software development in lieu of a degree (internship experience is applicable).
- Development experience in C, C++, Python, and/or Rust.
Preferred Skills & Experience
- Knowledge of networking and the Linux networking stack.
- Good knowledge of computer architecture and modern secure‑boot flows.
- Experience with ARM embedded systems.
- Deep understanding of testing, continuous integration, build, deployment & continuous monitoring.
- Creative problem‑solving, strong analytical skills and engineering fundamentals.
- Strong skills in debugging, performance optimization, and unit testing.
- Excellent written and verbal communication skills.
- Ability to work effectively in a dynamic environment with changing needs and requirements.
Additional Requirements
- Must be willing to work extended hours and weekends as needed.
- To conform to U.S. Government export regulations, the applicant must be a U.S. citizen, lawful permanent resident, refugee, or asylee, or be eligible to obtain the required authorizations from the U.S. Department of State.
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.