Software Engineer, Developer Tools at Spire
San Francisco, CA, US | Luxembourg


Spire Global is a 150 person space data company founded in 2012. It consists of two engineering teams:


The Space Program team, which produces a firehose of sensor data from one of the world's largest satellite and ground station constellations, designed and operated in house. This team includes the infrastructure group, which develops the Constellation Data Pipeline software.


The Data Products team, which develops API-based products that deliver insights into weather, aircraft activity, maritime activity, and more based on the sensor data firehose.

The company owns the entire stack from custom hardware to customer APIs. We are hiring at several levels including Staff Engineer, Sr. Staff Engineer and Principal Engineer.



What we offer:


Contribute to data products that have a strong social impact: weather monitoring, ship and aircraft tracking, and more.

Join a team that is unusually deep and broad: backend web services, distributed and embedded systems, electrical and mechanical engineering, RF, DSP, AI/ML, etc.

It’s a space program. Write code that runs on the ground and in orbit.

Our San Francisco office offers a great environment for doing technical work.

You get to work on technical problems that are different from your average web app.


Your first mission:


As a member of Spire's infrastructure team, your first mission will be to work on our developer tools


Infrastructure for satellite software development: building, automatically testing across multiple hardware generations using Jenkins, and deploying and rolling back on orbit

Infrastructure for building, testing and deploying software to AWS and our own servers at the 30 groundstation sites using Terraform, Ansible, and Docker


Qualifications / Experience:


Have good taste: see the big patterns and instinctively know the right way to do things.

At least 4 years software development experience.

Domain flexibility, good communication skills, and preference for simple, robust solutions.

Experience with interpreted languages (Python)

Some experience with system languages (such as C, C++, Go).

Experience with distributed systems.

Strong understanding of algorithms and data structures.


About the team you'd be joining:


The Space Program Infrastructure team is the connecting point for all our hardware and software. We interface with most teams: the product team, the satellite operations team, the instrument teams, and the satellite bus and ground station teams. You'll be playing a critical role in making sure all the pieces work well together. The team's responsibilities include:


Pipeline Infrastructure:


Satellite software

Satellite side control daemon for all spacecraft subsystems

Fault detection isolation and recovery functionality

Groundstation software

Satellite tracking

Operating software designed radio (SDR) system


Distributed logging & monitoring

Timeseries telemetry warehousing

Payload data warehousing

Configuration management system


Satellite-ground communications protocol

Developer tooling

BI/alerting infrastructure (Apache Zeppelin is the default tool)

Build and deploy systems for ground and space software


Pipeline features:



Satellites and ground stations

Ground-space communications

Syncing of schedules 

Syncing of configurations

Downlinking of data

Up and downlinking of data

Spacecraft data acquisition

Data from GPS-RO instrument

Data from AIS instrument

Data from ADS-B instrument