26-108: Geospatial Python Developer

Colorado State UniversityFort Collins, CO
$75,000 - $85,000Onsite

About The Position

The Cooperative Institute for Research in the Atmosphere (CIRA) at Colorado State University (CSU) is a multi-million dollar research organization located on CSU's Foothills Campus in Fort Collins, Colorado. CIRA is a cooperative institute that is also a research department within CSU's College of Engineering, in partnership with the Department of Atmospheric Science. Its vision is to conduct interdisciplinary research in the atmospheric sciences by entraining skills beyond the meteorological disciplines, exploiting advances in engineering and computer science, facilitating transitional activity between pure and applied research, leveraging both national and international resources and partnerships, and assisting the National Oceanic and Atmospheric Administration (NOAA) the National Weather Service (NWS), CSU, the State of Colorado, and the Nation through the application of our research to areas of societal benefit. Based within NOAA/NESDIS/STAR in College Park, Maryland, the NESDIS Environmental Applications Team (NEAT) conducts integrated research and development to transform satellite observations into actionable environmental intelligence across oceanic, atmospheric, terrestrial, and polar domains. Core activities include ocean color science and applications, atmospheric radiative transfer modeling and retrieval development, and microwave remote sensing through systems such as the Microwave Integrated Retrieval System (MiRS), supporting environmental monitoring and forecasting. The team advances coastal and polar applications, with a particular emphasis on Arctic environments, including sea ice analysis, maritime risk assessment, long-term environmental trend analysis, and modern data visualization, while developing user-driven decision-support tools. NEAT is also expanding into next-generation analytical frameworks that integrate satellite remote sensing with cloud-based systems, artificial intelligence, and emerging Earth-system digital twin concepts to interpret large-scale environmental data efficiently. These efforts enhance situational awareness and operational readiness and are closely aligned with mission needs through collaboration with the NOAA Center for Satellite Applications and Research. CIRA seeks to hire a Research Associate to work on the CSU Foothills Campus, located 5 miles Northwest of the CSU main campus. The individual in this position will support multiple projects at CIRA and focus upon projects funded by the Office of Naval Research (ONR). Specifically, the individual in this position will report to the Project Manager & Software Infrastructure Engineer and join a team of multiple developers and scientists at CIRA working as part of a multi-institutional team to develop, maintain, operate, and grow the user base of the Geolocated Information Processing System (GeoIPS). They will also interact with other scientific teams at CIRA to assist scientists with integration of their scientific algorithms into GeoIPS. GeoIPS is a recently open-sourced, plugin-based Python framework for production meteorological applications. It is currently used in production environments by the US Navy to support Navy Meteorology and Oceanography officers. Since becoming open-source, teams at CIRA and the Naval Research Lab have worked together to adapt GeoIPS for broader community use and improve user experience. GeoIPS’ architecture is general to any dataset that has associated latitude and longitude coordinates. The two main goals of GeoIPS are to reduce the barrier to entry for geospatial scientific algorithm development and toto help scientists transition their work to those who want to use it. GeoIPS separates data reading, interpolation, processing algorithms, output formatting, and other functions into plugins that can be pieced together into novel and reproducible workflows. The system supports generation of imagery and structured data products, enabling consistent transformation from input geolocated data products to analysis- and publication-ready outputs.

Requirements

  • Bachelor’s degree in computer science, software engineering, earth science, or a related technical field PLUS 3-4 years of professional software development experience –OR– Master’s Degree in computer science, software engineering, earth science, or a related technical field.
  • 2+ years of experience developing Object-oriented Python applications.
  • Demonstrated experience working with a team using a version control system like git.
  • Demonstrated experience with writing unit or integration tests for software package(s).
  • Experience manipulating large geolocated datasets (e.g. satellite imagery) or complex data formats (e.g. NetCDF, HDF).

Nice To Haves

  • Experience developing applications or algorithms for Earth Science data processing.
  • 5+ years of experience developing Object-oriented Python applications.
  • Demonstrated experience using statistics to evaluate and make use of scientific data.
  • Demonstrated knowledge of remote sensing techniques or spectroscopic measurements and related algorithm development.
  • Experience writing comprehensive documentation for Python packages, preferably using RST and Sphinx.
  • Demonstrated experience working with a team using GitHub.
  • Experience writing tests for Python packages using Pytest.
  • Experience with packaging and distributing pure-Python applications and Python packages (e.g. using Poetry) that include C/C++ or Fortran extensions (e.g. using Meson).
  • Experience developing in complied language (e.g. C/C++, Fortran 95 or newer).
  • CI/CD development, preferably via GitHub Actions or GitLab-CI.
  • Knowledge of containers (e.g. Docker, Singularity, etc.) and container orchestration (e.g. Docker Swarm, Docker Compose, Kubernetes).

Responsibilities

  • Become fully acquainted with the architecture and inner workings of GeoIPS for geolocated data processing.
  • Make improvements to the current GeoIPS infrastructure in support of funded project goals.
  • Continually update GeoIPS documentation as improvements and enhancements are made to the system.
  • Continually develop and maintain unit and integration tests to ensure that implemented functionality remains in working condition.
  • Improve GeoIPS CI/CD pipelines including testing, packaging, and deployment.
  • Review code updates from other GeoIPS contributors to assess their need, functionality, completeness, and conformance to standards.
  • Approve code updates when they are ready for release, suggesting any changes as necessary.
  • Assist scientists with updating their algorithms to act as GeoIPS plugins.
  • Make updates to GeoIPS as required to allow integration of scientific algorithms including fixing bugs, improving efficiency, improving existing features, and adding new features.
  • Assist with development and presentation of GeoIPS training materials and workshops.
  • Collaboratively develop and present training materials to help new users become acquainted with GeoIPS.

Benefits

  • Robust benefits package
  • Collaborative atmosphere
  • Focus on work-life balance
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service