Senior Software Engineer, R2O
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.
The successful candidate will design, develop, implement, and verify high-quality software to utilize observations of the Earth System from a variety of observing platforms in order to obtain numerical weather forecasts maximizing forecast skill at the regional level. While focused at the regional level, the work performed will also need to be accomplished in a way that ensures continuity with Spire’s global NWP data assimilation and modeling capabilities. To achieve this goal, this position will work closely with a variety of team members from modeling, data assimilation, machine learning, product development, and software engineering specialties to adapt existing software frameworks and explore innovative new methods. This “big data of big data” problem requires careful attention to scalability, flexibility, and software engineering innovations in order to transition proven research concepts to operational readiness.
Responsibilities of your role:
- Take research concepts that have passed a prototype stage of readiness through development and into production
- Interact with researchers and scientists to clarify complex ideas, help translate these concepts to terms appropriate for operations, and identify necessary trade-offs
- Harness the flexibility and advanced libraries of Python with the high performance scientific computing characteristics of C/C++ and/or Fortran when necessary
- Appropriately utilize object-oriented methodologies to decompose complex problems down into coherent and cohesive components, paying careful attention to software architecture concepts such as scalability and reusability
- Write code to appropriately utilize distributed memory super-computing systems
- BS degree in Atmospheric Science, Meteorology, Computer Science, Software Engineering, Mathematics, or equivalent working experience
- 7+ years working/research experience with an object-oriented language, and 3+ years working with Python, Scala, Ruby, Go or a similar language
- Experience supporting software development in scientific/technical domains.
- Experience working in cross-functional teams
- Object-oriented design and object-oriented programming
- Distributed computing frameworks such as MPI
- 3+ years working/research experience with HPC, parallel programming, high performance system, or big data and/or transitioning newly developed systems into an operational engineering environment
- Experience working within a technical team focused on customer or market requirements and delivery of a product roadmap
- Experience with compiled languages (Fortran, C, C++) and scientific/numeric applications
- Experience with cloud platforms (AWS, etc.)
- Experience with numerical weather prediction, weather applications, and associated data formats
- Data assimilation or other relevant experience in a numerical weather prediction (NWP) environment
- High-performance computational linear algebra experience
- Experience with machine learning and statistical inference
- MS or PhD degree in computer science, atmospheric science, or related field
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.