About The Position

SpaceX was founded on the belief that humanity's future involves exploring the stars, and is actively developing technologies to enable human life on Mars. Leveraging experience from building rockets and spacecraft, SpaceX is deploying Starlink, an advanced broadband internet system. Starlink is the world's largest satellite constellation, providing fast, reliable internet to over 9 million users globally. The company designs, builds, tests, and operates all system components, including thousands of satellites, consumer receivers, and the integrating software. As an Embedded Software Engineer on the Starlink program, you will address challenges across all aspects of the program's growth. Potential areas of impact include bringing up next-generation space-grade silicon (including in-house designed system-on-chip and peripherals), developing software from early-stage bootloaders to business logic with an emphasis on deterministic, secure, and performant platforms for all SpaceX Linux-based spacecraft and ground components, and creating infrastructure and tools for rapid development and testing of new OS/platform features. Software engineers at SpaceX are responsible for the complete lifecycle of their software, encompassing development, testing, and support.

Requirements

  • 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.

Nice To Haves

  • Linux Kernel Up streamed patches preferred.
  • Knowledge of networking and 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 approach to problem solving, exceptional analytical skills and engineering fundamentals.
  • Strong skills in debugging, performance optimization, and unit testing.
  • Excellent communication skills both written and verbal.
  • Ability to work effectively in a dynamic environment with changing needs and requirements.

Responsibilities

  • Maintain and update in house branches of OSS software such as Linux, Buildroot, and u-boot.
  • Support secureboot and runtime security of all Linux based satellite components.
  • Maintain the spacecraft Ethernet network and connectivity.
  • Develop, deploy and test spacecraft software update process.
  • Support in-house System on Chip and peripheral through the life-cycle of the part.
  • Support OS/Platform specific test infrastructure.
  • Development 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 stage to on on-orbit operations.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service