Full-stack engineer with 20 years in regulated systems. I modernize legacy government platforms by day, and I direct AI coding agents under test-driven guardrails to ship my own production AI products, including a HIPAA-compliant one.

I've spent 16 years as the lead technical contributor for a state licensing agency serving 21,000 professionals, modernizing a legacy .NET/SQL Server platform that handles licensure, investigations, and compliance. Most recently that meant moving the back office onto Vue, JSON, and REST APIs, cutting record CRUD time roughly 10x while preserving the existing XML/XPath business rules. All of it runs under real constraints. The data is regulated, the agency answers to the public, and the systems don't get to go down.
Outside that job, I design and ship production AI products on my own, directing AI coding agents under a custom rules and automated test-loop setup I built myself. Those include Pool Pilot (computer vision + Firebase), ParrotPadMD (HIPAA-compliant medical dictation live across major EHRs), Attuned, an AI Game Master, and TrailWright QA, a local-first AI test generator. I like the seam between legacy systems and applied AI, knowing where AI can replace a workflow outright, where it needs a deterministic fallback, and where a human has to stay in the loop.

A React Native app that reads pool and hot tub test strips with the phone camera and tells you what to add. Expo, Firebase, Firestore, RevenueCat for billing, and a Claude vision pipeline behind a server-side proxy. Shipped in nine languages.

HIPAA compliant dictation that works in any text field of any browser-based EHR, including Epic, Athena, and eClinicalWorks. Most tools lock a physician into one vendor's workflow. This one does not. Chrome MV3 extension, Firebase Functions, Google Speech-to-Text medical models, specialty vocabulary packs, and streaming transcription on Cloud Run.

A health coach that already knows the context of your day. Instead of one prescriptive program, onboarding folds the app around whatever you actually want to track, and an adaptive engine learns how you respond over time. Expo SDK 54, Firebase, and Claude.

An AI that runs the whole table. It narrates out loud, handles 5E rules, tracks the party, and generates scene art as the story moves. The model proposes and a rules engine validates. Nothing touches game state until the engine approves it, which is what keeps a campaign coherent past turn thirty.
A local-first Playwright automation generator. It turns plain language into deterministic tests and runs entirely offline, which matters in regulated environments.
Lead technical contributor for agency of ~40 staff and 21,000 licensees. Architect systems supporting licensure, investigations, compliance, and public safety.
Implemented BI environment (warehouse, OLAP, SSRS). Built SQL pipelines, data integrations, and web applications.
Built custom ColdFusion/MS SQL applications using proprietary frameworks.
Supported large‑scale server farms in high‑availability environments.

How a large language model actually works, one guessing game at a time, told aboard a starship with an 8-bit paint job and an omnipotent narrator who will not stop talking. Twenty-seven hand-built demos you can run and a tribunal at the bottom of every deck. The core, the bridge that makes it a chat, the away missions that make it an agent, the command habits that make it useful, and the curve that says where it goes next.
Beam aboardThree new essays. Deterministic by default, What the human is for, and Marketing on a budget. See everything in Writing.
Have a project at the seam of legacy systems and applied AI, a question about something I've built, or a role worth a conversation? Email is the fastest way to reach me.