Zachary Miller — Portfolio New Orleans, Louisiana
Geography · GIS · Software

Zach Miller

Geospatial Software Engineer & GIS Specialist·FAA Part 107 Drone Pilot

"I fly the sensors, then build the software that turns their data into decisions."

LSU Geography grad building production software at Marathon Petroleum's Garyville refinery by day — and running five live multiplayer games on the side.

Zach Miller
Zach MillerNew Orleans, LA
Refinery Projects

Production Software at Marathon Petroleum

Built solo for the drone inspection program at the Garyville refinery — every one of these is in real use by real crews.

RefineryDroneOps

The site's quarterly inspection dashboard

Maps ~96 process-unit polygons with sub-unit photo routing, a thermal viewer verified within 0.1°F of DJI's commercial reference tool, and self-contained single-file HTML snapshot publishing for vendor handoff. The system of record for how inspection flights get reviewed at the site.

~96 process units mapped0.1°F thermal viewer accuracy1 file snapshot publishing
Python · FastAPI · Leaflet

DJI → FLIR Thermal Converter

Byte-level reverse engineering, in daily production use

When DJI's official SDK failed across camera firmwares, I reverse-engineered DJI's proprietary APP3 thermal storage and FLIR's FFF binary container — re-encoding radiometric data via Planck-equation inversion, accurate to <0.01°C round-trip. Ships as one offline .exe used daily by the inspection team.

Python · NumPy · ctypes · PyInstallerView source ↗

Spring Can AI Inspection

Computer vision replacing a fully manual process

Compares monthly drone captures of pipe-support spring cans to detect lever movement, corrosion, and physical damage — then generates color-coded PDF reports. What used to be a manual, photo-by-photo review now runs as a pipeline.

Python · computer vision · Claude Vision

FlightLive

Pre-flight airspace check for the site's drone crews

One locked map of live aircraft, METAR weather, and animated NEXRAD radar around the refinery. The Rust backend classifies aircraft behavior, detects airspace conflicts by dead-reckoning, and predicts whether an aircraft will be audible on site — all in a single 6 MB executable.

Rust · Axum · React · Mapbox GLView source ↗

GVL UAS Dashboard

Mission analytics in a single HTML file

An interactive refinery map and mission catalog that quantifies the value of every flight — cost avoided, days saved, and safety hours kept off elevated structures — packaged as one self-contained file that opens anywhere, no install, no server.

React · Mapbox GL · Recharts
Games

Five Games, All Live

Solo-built multiplayer worlds with real users — custom backends, real-time sync, payments, and auth.

Hunch ● LIVE — WORLD CUP 2026

Fantasy + bracket pool, running through the tournament right now

Reverse-engineered FotMob's undocumented endpoints to ingest 27 per-player stats with 30–50 s event-to-UI latency, replacing $200+/mo sports APIs. Pure-Rust scoring engine, passwordless multi-device auth, atomic deploys with online-safe SQLite snapshots.

Rust · Axum · sqlx · React 19Play ↗

PitchMinds ● LIVE

A football manager where ~500 players are autonomous AI agents

Every player has a personality, memories, and an emotional state — and your conversations with them shape match outcomes. A three-loop AI architecture runs on a Groq → Cerebras → Sambanova failover chain at zero per-match inference cost, with 3D avatars and live pundit commentary.

Node · PostgreSQL · React · Three.jsPlay ↗

Pub Golf ● LIVE

AI-planned bar crawls, scored like golf

Point the AI at a city and get a custom course with real bars, photos, and routes — or build your own. Live group rounds join with a 5-character code or QR scan, with photo highlights per hole and a comedic penalty system issued by "the Caddy." Premium via Stripe.

React · Firebase · Mapbox GL v3 · StripePlay ↗

RogueXI ● LIVE

A football roguelike: draft legends, win stat duels, climb the gauntlet

Draft real footballers past and present as stat cards and battle through an endless gauntlet one duel at a time — with a world leaderboard, card collection, and roguelike meta-progression that lets you bank one starter from each finished run.

React · Vite · custom REST APIPlay ↗

Cadastral ● LIVE

Pack the world: every real city is a one-of-one card on a living map

Open passports to claim real cities as one-of-one collectible cards, chart trade routes along the Silk Road, and send surveyors on expeditions. A genuine player-to-player trading economy on an interactive world map — a card game built out of geography itself.

React · MapLibre GL · Firebase · Tone.jsPlay ↗
Tools & Open Source

Geospatial Tools

Utilities and systems built around coordinates, imagery, and maps.

Tide

A real-time geospatial streaming engine — the whole planet, live

A live globe streaming ships (AIS), aircraft (ADS-B), earthquakes (USGS), wildfires (NASA EONET), and wildlife photographs worldwide in real time. Six Rust crates built from scratch — hand-written R-tree spatial index, H3 hexagonal level-of-detail, crash-safe write-ahead log — under a custom raw-WebGL2 renderer that composites a live photo atlas in a single draw call.

100K+ entities at 60 fps~720 ns R-tree insertp99 6.3 ms fan-out · 250 clients × 25K events/s
Rust · tokio · TypeScript · WebGL2 · GLSLView source ↗

Coordinate TransformerVanilla JS · zero libraries

Three-way conversion between a plant's local site grid, Louisiana State Plane, and WGS84 — a hand-rolled least-squares affine solver fit to 16 ground-control points, with per-point residual reporting for surveying-grade transparency.

Photo → KMZVanilla JS · File System Access API

Turns a folder of geotagged photos into a Google Earth flight path with embedded imagery — using a hand-written EXIF/TIFF parser and a hand-written ZIP writer. No libraries, no server, no upload.

Cintoo 360° CSV GeneratorVanilla JS · custom UTM projection

Extracts GPS from 360° panoramas and projects WGS84 → UTM from first principles (ellipsoid math, meridional arc — no proj4) to position imagery inside a digital twin. In company-wide use.

Fotmob ScraperPython · standard library only

Scrapes football data for ~1,400 World Cup players by exploiting Next.js build-ID JSON endpoints — rate-limited, SQLite-backed, and dependency-free. The data layer behind Hunch.

Legend

Skills

Languages
Rust, Python, TypeScript, JavaScript, SQL, GLSL
GIS & Geospatial
ArcGIS Pro & Enterprise, coordinate systems & projections, LiDAR point clouds, photogrammetry, orthomosaics, H3 indexing, Mapbox GL, MapLibre, Leaflet, WebGL2
Backend
Axum, tokio, sqlx, FastAPI, Node/Express, PostgreSQL, SQLite, Docker, nginx, Cloudflare Pages, Fly.io, Prometheus, Grafana
Frontend
React 19, Vite, Tailwind, raw WebGL2, Three.js, custom shaders, PWA
AI & Data
Claude API & Vision, Groq / Cerebras / Sambanova, multi-agent architectures, binary-format reverse engineering, data pipeline design
Drone Ops
FAA Part 107, multi-sensor fleet (thermal / OGI / LiDAR / acoustic), DJI Terra & FlightHub 2, RTK GNSS survey
Record

Experience & Education

Drone Pilot / UAS Data Specialist

Bronto Industrial @ Marathon Petroleum Refinery — Garyville, LA

Fly a multi-sensor DJI fleet (thermal, OGI, LiDAR, acoustic) under Part 107 inside an active refinery, and solo-build the software layer of the drone program — the dashboards, pipelines, and tools above. GIS workflows in ArcGIS Pro & Enterprise feed the site's digital-twin initiative.

GIS Analyst

Ritchie Ecological & Environmental Solutions — Mandeville, LA

Created environmental site maps and processed spatial datasets in ArcGIS Pro; produced client-ready deliverables and supported spatial analysis.

BS Geography, Minor in Environmental Science

Louisiana State University — Baton Rouge, LA

FAA Part 107 Remote Pilot Certificate, October 2025.