Systems
I design and run data systems: migrations out of legacy databases, geospatial warehouses on PostGIS, healthcare ETL on AWS Redshift and dbt, and a telemetry pipeline that ingests live radio signals.
Mostly Python and SQL, with Rust where the processing needs to be fast. The work below is either running in production or documented in full on this site.
Selected case study · 2026
ADS-B Aircraft Tracking & Geospatial Analysis
A self-hosted aircraft surveillance stack: live 1090 MHz transponder broadcasts decoded on a Raspberry Pi, ingested into PostGIS, enriched against a 520,000-aircraft reference index, and watched by a rule-based detection pipeline.
- Ingest
- An RTL-SDR receiver on 1090 MHz, decoded by dump1090 on a Raspberry Pi, with a Python service filing each message into the database. Over a million position messages so far.
- Storage
- PostgreSQL with PostGIS, enriched against a 520,000-row aircraft reference index. Materialized views pre-compute the heavy spatial queries so the dashboard reads stay fast.
- Query & API
- A FastAPI layer with twelve endpoints: statistics, positions, routes, receiver range, corridor density, hourly traffic, aircraft detail, and the detection feed.
- Analysis
- A rule-based detection pipeline on a two-minute cadence, six rules in production. It flagged a cluster of low-altitude military rotorcraft over Denver on its own.
Applied spatial · 2026
Denver Urban Tree Classification
18,272 tree crowns segmented from LiDAR and classified into five forestry management classes from free public imagery. Accuracy was checked with spatial blocks held out of training whole.
Read the full case study →Implementation work
The engagements below share a shape. Each one started inside an unfamiliar source system: work out the schema and how the records actually relate, build the SQL and Python transformations, then move the data through staging, validation, and reconciliation until both sides agree. These were domains where a bad migration has consequences: fire-department incident records, healthcare data. The quality checks had to hold.
The storage layer changes between engagements. So far that has meant MySQL, MSSQL, and PostgreSQL on the relational side and Redshift in the warehouse. Learning the next system's particulars is part of the work.
Fire and public-safety data systems
2024 – presentNFIRS and hazard-data migration pipelines for multiple fire departments, PostGIS geospatial warehouses for emergency management, and an automated sanctions-tracking system correlating OFAC lists with AIS vessel data. Custom Python and Rust tools for high-performance processing.
Geospatial validation and integration
2024Data validation and integration for large-scale mapping platforms and emergency-response systems: FEMA flood maps, USGS data, and census boundaries brought into shared spatial infrastructure, with automated quality-control checks on incoming data.
Healthcare data pipelines
2023 – 2024Healthcare ETL and analytics on AWS Redshift with dbt: automated data-validation protocols, quality frameworks built for healthcare data requirements, HIPAA-compliant staging environments, and reporting in QuickSight.