Profile

Research software engineer with 8 years turning research-grade and legacy scientific code into reliable, maintainable production systems — across Fortran/C++ atmospheric-model internals, HPC and cloud workflow orchestration, analysis-ready data engineering, and scientist-facing visualization. Independently architects and operates flagship tools end-to-end, and has developed a reusable AI-augmented engineering methodology applied across projects in multiple NCAR labs (RAL and ACOM).

Highlights — ~10× faster, bit-for-bit validated, on the NSTE source-term engine · 2026 BSSw Fellow & PI · independent flagship work across RAL and ACOM (CheMPAS-A) · current 1:1 AI-development mentorship, a lab reference point for the approach.

01Flagship Work

NSF NCAR — Research Applications Laboratory (RAL / WISP) · Software Engineer IIIJun 2024 – Present

nwp-compose ↗

Self-directed · built on initiative. A CLI that abstracts Cylc 8 so scientists generate a standardized, reproducible WRF/MPAS workflow from a declarative config: graph visualization, metrics, and error-handling without hand-authoring Cylc. Born from the Rwanda port; currently completing implementation and testing, with colleague validation and a lab-wide announcement to follow.

PythonPydantic v2Cylc 8Pyodide

MIEM ↗

CheMPAS-A (ACOM lab). Model Independent Emissions Module — a C++20 emissions library driven to MICM-ecosystem API parity with multi-platform CI, validated against operational CAMS inventories, adapting to a different lab's repo standards. Includes an internal, team-facing emissions visualizer.

C++20CMakeNetCDFGitHub Actions

MPAS on AWS

BACSWN / STIMBA. Implemented MPAS in AWS (CloudFormation + ParallelCluster) and containerized MPAS with Apptainer for portable, reproducible deployment.

CloudFormationParallelClusterApptainer

STIMBA forecast

BACSWN / STIMBA. Extended the running forecast into a Cylc 8 pipeline: a 6-hourly, RAP-initialized 3 km Bahamas MPAS run with streaming mpassit→UPP post-processing, S3 archiving, and EFA-tuned multi-node MPI. Runs on the ncarmm container images (portable, not baked into that build); set up an SQS-based ingest (in place of LDM) with a local queue-poller.

Cylc 8SLURM/EFAS3SQS

BEACON ↗

RAL flagship · in development. Prototyped and iterating on the in-browser model-eval dashboard comparing AI/ML weather models against traditional NWP: dual-persona UX, use-case "decision-profile" weighting (AIGFS / CREDIT / GFS / 4DWX-WRF), Parquet-driven browser analytics with no runtime backend. I wrote the .stat→Parquet conversion script, handed to the engineer running the METplus/Rocoto workflow for integration.

ReactParquet

atmos-stack-lab

Self-directed · exploration. A browser-native WRF/MPAS viz probe (NetCDF→Zarr v3 · chunk-streaming · WebGPU). Not for release as-is, but it shaped my visualization approach elsewhere (e.g., MIEM).

Cylc 8Zarr v3WebGPU

met-al + doculizer

Self-directed · in active development.
met-al — modern analysis/viz lab focused on METplus verification output (could feed BEACON later).
doculizer — built on MET's already-strong, AI-parsable documentation to make it more human-readable.

TypeScriptdeck.glFastAPITiTiler

BACSWN aviation

BACSWN / Aviation — two tasks. (1) A weather-avoidance routing evaluation that selected a heading-constrained A* approach (routing app in development). (2) A deployed FastAPI aircraft-CO₂ estimation REST API (peer-reviewed duration-based methodology).

PythonA*/DubinsFastAPI

02Delivery & Leadership

  • Modernized a bespoke set of WRF-Chem workflow scripts while transitioning them to a new Rwanda domain: parameterized the bash scripts to launch models over new domains without rewrites, plus an orchestrating script to run the pipeline end-to-end. This surfaced a lab-wide pattern of duplicated, bespoke, often cron-driven per-project workflow scripts, directly motivating nwp-compose (above).
  • Parallelized the "first-guess" step of NSTE (the source-term engine for DTRA-VIRSA): 285 s → 27 s on a dense 400 m grid (~10×), bit-for-bit identical to serial, via Java parallel streams with a tunable depth. On a separate project (SAHARA), applied Dask task-graph parallelism to its analysis pipeline.

03Recognition & Enablement

  • Selected as a 2026 Better Scientific Software (BSSw) Fellow and PI of the fellowship project — Maintaining Scientific Rigor in AI-Assisted Development: A Validation-Focused Methodology — establishing reproducible validation patterns for AI-assisted ("agentic") scientific software. The direction originated in a senior scientist's question about my AI-augmented development process.
  • Mentor a CheMPAS-A colleague in AI-augmented development: hour-long 1:1 walkthroughs, ongoing async guidance, and review of the code they produce, relaying emerging techniques as the field evolves. A growing reference point in the lab for the approach; will also lead an upcoming AI-tool-use tutorial (separately requested).

04Earlier Experience

STAR LLC — Software Engineer I → III2018 – 2024
  • Promoted to Software Engineer III in October 2021 (senior-engineer level in ~3 years), recognized for technical leadership, contributions to company technical decisions, and directing and guiding the work of a junior engineer.
  • Led the full-stack implementation of an operational WRF-ARW forecast system (two domains, four cycles per day) for a national weather agency.
  • Led modernization of a ReactJS forecast-workflow GUI from JavaScript to TypeScript, adding strong typing and security hardening across WRF modeling interfaces.
  • Maintained operational integrity of WRF systems for clients across three countries (national weather agencies and airports); separately, proposed AWS GovCloud cost reductions by right-sizing compute and eliminating idle resources.
  • Built WRF across four compiler toolchains (GNU, Intel oneAPI, AMD AOCC, NVIDIA HPC), initialized from HRRR/GFS/CFSR/CFSv2/ERA5, and assimilated Lidar/Radar/NEXRAD/Satellite/ADP via GSI/WRFDA; coordinated transition to AWS GovCloud for federal contracts.

2024 – present: limited maintenance & advisory on prior deliverables, in an NCAR-disclosed outside-work capacity (~a few hours/month).