Senior Software Engineer
Spire Global is a space-to-cloud analytics company that owns and operates the largest multi-purpose constellation of satellites. Its proprietary data and algorithms provide the most advanced maritime, aviation, and weather tracking in the world. In addition to its constellation, Spire’s data infrastructure includes a global ground station network and 24/7 operations that provide real-time global coverage of every point on Earth.
Spire is seeking a qualified Senior Software Engineer to develop its ground-based systems responsible for scheduling tasks across its nanosatellite constellation and ground station network.
As a Senior Software Engineer in the Constellation Scheduling team you will contribute to the development of our intelligent automated systems for planning the tasks Spire satellites will execute in orbit over the upcoming hours and days. These include collections of data from space, radio communication sessions with ground stations and other satellites, and propulsive maneuvers aimed at satisfying multi-satellite positioning goals.
You will be given the opportunity to design, build and deploy major new features of our scheduling systems, leveraging technologies such as Rust, Mixed integer programming, AWS, Kubernetes, and Github. You will also be given opportunities to develop mathematical models and simulations of both existing and future systems in order to progress designs in a quantified way.
You will collaborate closely with other team members to address development challenges as they arise. You will also work with operations, commercial and hardware / software engineering teams to understand requirements, develop designs and to communicate the scheduling team's work to the wider company.
- Contribute to the development of Spire's existing scheduling systems: design, implementation and deployment.
- Develop new scheduling systems e.g. in the area of orbital maneuver planning.
- Take an active role in reviewing work by other team members.
- Actively to improve the team's development environment and processes.
- Liaise with adjacent operations, commercial and engineering teams to evolve requirements and designs, to resolve any challenges and to explain our technologies.
- Present the scheduling team's work to a wider audience within the company.
- Investigate and mitigate issues that arise in production systems.
Basic qualifications / experience
- Bachelors degree or equivalent in Computer Science, Mathematics or similar discipline
- 5+ years experience in professional software development
- Solid understanding of software practices such as version control, testing, debugging and build systems.
- Proficiency in programming languages, including both interpreted and compiled and both dynamically and strongly typed.
- Strong background in mathematics
- Experience in modeling and tuning complex systems
Preferred qualifications / experience
- Orbital mechanics and maneuver planning
- Programming in Rust
- Programming in Python
- RDBMs, PostgreSQL
- Combinatorial optimization and/or mixed integer programming
- Cloud / containerization technologies such as AWS, terraform, docker, kubernetes, microservices.
Spire is Global and our success draws upon the diverse viewpoints, skills and experiences of our employees. We are proud to be an equal opportunity employer and are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, marital status, disability, gender identity or veteran status.
Something looks off?