Kevin McGrath

PI/Software Engineer/Research Associate IV

kevin.m.mcgrath@noaa.gov


Cooperative Institute for Research in the Atmosphere
Colorado State University
1375-C20 Campus Delivery
Fort Collins, CO 80523-1375-C20

256-886-8896

Madison, Alabama

Technical Summary

  • Degreed Meteorologist, Electrical Engineer, and GIS professional specializing in the processing and visualization of real-time remote sensing and forecast model data
  • Experienced Principal Investigator providing project management services
  • Extensive software engineering experience supporting operational forecasters by maintaining the real-time acquisition of meteorological data and the generation, dissemination, archiving, and visualization of products
  • Programming Languages: Python, Bash, JavaScript, PHP, Perl, C, HTML/CSS, SQL
  • Technologies: AWS cloud architecture, React.js, Next.js, jQuery, Bootstrap, MapServer, GeoServer, GDAL, OpenLayers, Docker, Apache HTTP, Rocoto, ecFlow, ELK stack, LDM, NOAAPort, AWIPS II, McIDAS
  • Developer Tools: Visual Studio Code, Conda, Eclipse, Git/GitHub/GitLab, Redmine, Jenkins, Gerrit
  • Data Formats: Zarr, Icechunk, GRIB, NetCDF, HDF, GeoTIFF, GeoJSON, JSON, XML, HDF, Shapefile

Recent Professional Experience

Principal Investigator / Research Associate IV at Colorado State University, CIRA – Telework from Madison, AL
May 2019 – Present

  • Stationed at the National Weather Service’s Meteorological Development Lab (MDL)
  • Principal Investigator of CIRA’s main grant with the MDL leading a team of geographically dispersed research associates
  • Supervise a team of geographically-dispersed CIRA research associates
  • Oversee all tasks on the MDL grant to include project management, budgeting, planning, and reporting, as well as liaising with the federal project leads
  • Provide full-lifecycle software engineering expertise for projects at the MDL, including requirements analysis, design, development, configuration, documentation, review, and testing
  • Lead software developer of the AWS-based Whole Story Uncertainty & Probabilities (WSUP) web application.
    • This GIS tool provides forecasters with 1200+ elements from the National Blend of Models (NBM), Global Ensemble Forecast System (GEFS), National Digital Forecast Database (NDFD), Real-Time Mesoscale Analysis (RTMA), and Unrestricted Mesoscale Analysis (URMA), and various storm surge models in real-time utilizing technologies like MapServer, OpenLayers, Bootstrap, jQuery, Python, PHP, JavaScript, and AWS (EC2, S3, load balancers, Lambda, etc.). Features include displaying forecast evolution over time (dProg/dt), comparing forecast values with min/max station records, animation download tool, user-selectable color tables, and cursor sampling.
    • Design and manage real-time processing of model data on a Linux-based NWS supercomputer (WCOSS) with output disseminated by the WSUP Viewer and NOAA Open Data Dissemination S3 buckets in various formats (GRIB, TIF, GeoJSON, etc.). The processing uses a combination of Python, Bash, and the PBS HPC job scheduler. A Rocoto-based workflow management solution defines, launches, and tracks over 900 hourly tasks and their associated dependencies.
    • All code for this project is under Git version control with Jenkins and Gerrit used for code review and merging with Redmine used for task tracking
  • Member of a team utilizing AI/ML techniques to produce probabilistic fire weather guidance. Responsible for developing ecFlow-based real-time data flow pipelines running on an NWS HPC system (WCOSS).
  • Design data transformation and storage pipelines for the NWS Data Lake project, like converting GRIB data into cloud-optimized Icecunk format for use by stakeholders, including NWS Viz and Artificial Intelligence (AI)/Machine Learning (ML) projects

Software Engineer and Research Meteorologist at Jacobs Technology – Huntsville, AL
March 2009 – April 2019

Education

Recent Publications