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 Global is seeking a DevOps software engineer to support its development of weather-related products based upon Radio Occultation (GNSS-RO) soundings from its unique satellite constellation.
The candidate will join the Spire Weather team to develop and support customer-facing weather-prediction products built on complex scientific-software workflows in an all-cloud Infrastructure as a Service (IaaS) / High-Performance Computing as a Service (HPCaas) context.
This is an exciting opportunity for a motivated engineer to work on a customer-focused development team that is leveraging an unprecedented large volume of GNSS-RO satellite data to create superior weather forecast products. The successful candidate will join the Weather team at the Spire branch office in Boulder, Colorado, USA.
Responsibilities of your role:
- The successful candidate will work with Spire Weather team software engineers in Boulder, CO USA (as well as with teammates across Spire's global offices) to develop new products based upon our proprietary weather forecasts and to improve the reliability of automated operational workflows running 24x7 on a mix of IaaS and HPCaaS resources.
- Focus will be on meeting customer requirements and SLAs. Responsibilities will include collaborating with other engineers and operations staff in the following areas:
- Participate in iterations of design, implementation, test, refactoring, and feedback
- Manage deployments onto cloud-based IaaS and HPCaaS platforms
- Improve monitoring of operations automation
- Perform fault analysis and diagnosis
- Suggest process improvements
- Develop and maintain runbooks for operations staff
- Train and incorporate feedback from operations staff
- Participate in on-call rotation to address occasional issues that are outside the expertise of our 24x7 ops staff
- BS degree in Computer Science, Software Engineering, or a related STEM discipline or equivalent working experience
- 5 years of professional software development experience
- 3 years of DevOps experience
- 3 years of experience using modern software engineering best practices such as; Agile methodologies, revision control systems, testing & code quality tools (e.g. unittest, Pylint, Mypy), continuous integration (e.g. Travis, Bitbucket Pipelines)
- 3 years experience development with Python or Ruby
- 2 years of experience with building and/or administering GNU/Linux or other Unix systems
- 2 years of experience with traditional build systems (e.g. make, CMake, Autotools)
- Professional experience in
- Building, packaging, and distributing software artifacts with tools like conda, pip, Gradle, or RubyGems; and
- Provisioning software systems with configuration-management tools like Ansible, Puppet, or Chef
- Professional experience executing operational software via workflow-management tools like Luigi, Airflow, Nextflow, or Prefect
- Proven ability to work as part of a collaborative software development team
- Experience working with scientific teams
- Exposure to scientific Python stack (NumPy, Anaconda)
- Experience with cloud platforms (AWS, etc.)
- Experience in a high availability Continuous Integration/Continuous Deployment (CI/CD) environment
- Excited to support (monitor/troubleshoot/correct) complex workflows on hybrid HPC/cloud platforms, and to help refine and document related procedures