Position Overview:
The Cooperative Institute for Satellite Earth System Studies (CISESS) at the University of Maryland is seeking a motivated Scientific Software Developer for a two-year project supporting PrecipWatch, a web-based platform for satellite precipitation data processing, visualization, and analysis.
Besides producing several precipitation products in near-real-time, PrecipWatch also provides a unified, interactive interface for displaying and analyzing precipitation products from multiple satellite and radar-based sources, including NOAA’s Microwave Integrated Retrieval System (MiRS), Enterprise Microwave Rain Rate and Type (EMRRT), Snowfall Rate (SFR), CMORPH2 blended precipitation analysis, Enterprise Rain Rate (ERR), and Multi-Radar/Multi-Sensor System (MRMS). An initial demonstration system has been developed using Python, Flask, JavaScript, and OpenLayers. The selected candidate will continue developing the existing platform, improving processing efficiency, and expand its visualization and data integration capabilities.
Key Responsibilities:
- Develop and maintain Python-based scientific data processing pipelines for satellite precipitation products.
- Process NetCDF, HDF, and geospatial datasets into web-compatible raster tiles and GeoJSON layers.
- Develop and enhance interactive web applications using JavaScript, HTML, CSS, and model web frameworks.
- Improve satellite swath visualization, map rendering, and data processing performance.
- Develop backend services and REST APIs using Python-based web frameworks.
- Implement interactive visualization features, including animations, timelines, data queries, and precipitation product comparisons.
- Support automated data processing, expanded historical data coverage, and near-real-time data updates.
- Collaborate with NOAA and university scientists on scientific software development, testing, and documentation.
Required Qualifications:
- Bachelor’s or master’s degree in Computer Science, Software Engineering, Atmospheric Science, Earth Science, Engineering, or a related field.
- Strong programming skills in Python.
- Experience with web programming languages, including JavaScript, HTML, and CSS.
- Familiarity with scientific data processing, data visualization, or web application development.
- Strong problem-solving, debugging, and communication skills.
Preferred Qualifications:
- Experience with OpenLayers, Leaflet, React, or Vue.js, or similar web frameworks.
- Experience with Flask, FastAPI, Django, or REST API development.
- Familiarity with NetCDF, HDF, NumPy, Xarray, and GeoJSON.
- Experience with geospatial data processing, GIS, raster tiles, and map projections.
- Familiarity with Linux, Git, REST APIs, and automated data processing workflows.
- Experience with cloud computing, databases, or scalable data processing.
- Knowledge of satellite remote sensing, meteorological datasets, or precipitation products.
Appointment Duration, Work Location, and Eligibility Requirements:
- Appointment Duration: Two-year, project-funded position. Continuation beyond the initial two-year period is subject to university appointment policies and funding availability.
- Work Location: The selected candidate will be required to work on-site up to three days per week at a NOAA facility in College Park, MD.
- Citizenship and Residency: Applicants must be U.S. Citizens or lawful permanent residents (Green Card holders), subject to confirmation of NOAA facility access requirements.
- Background Check: The selected candidate must successfully complete the required background investigation and obtain authorization for access to the NOAA facility.
- Education: A bachelor or master degree is sufficient. A Ph.D. or postdoctoral research experience is not required.
Application Information:
Interested candidates should submit a CV and a brief description of relevant software development experience.
Application Contact: Shuyan Liu, liusy@umd.edu