I'm Chris.

I build production AI systems end to end — for operations where correctness, real-time performance, and trust actually matter. And I'm the same person on the client call and in the codebase.

The short version

I taught myself to code in 2020 — no CS degree, no bootcamp, just a laptop and stubbornness. Seven months in, I landed my first engineering job at Kero Sports, where I spent the next two years building the backend systems behind their micro-betting products for basketball, football, and baseball. Real-time pricing, automated trading, and market infrastructure that runs in production for 150+ sportsbooks including Caesars. That's where I learned what "production" really means — hard real-time, no second chances.

These days I work independently, shipping AI-native products end to end — designing the data model, building the backend and infrastructure, and carrying it all the way to a product people actually use. I'm drawn to deep, unglamorous domains where the architecture decisions genuinely matter: healthcare and revenue cycle, real-time systems, and agentic workflows where AI and humans work side by side. A current slate of that work is below.

Coming up self-taught shapes how I build. I'm pragmatic, ship-first, and skeptical of complexity that exists to impress other engineers. The code that ships is the code that matters.

Both sides of the table

Most software projects split the job in two: an engineer who builds the thing, and a project manager who talks to the client. I'm both. On most projects I run the timeline, sit in the client calls, and write the code — one person, no telephone game.

The skill underneath it is translation. I can sit with someone who doesn't work in tech — an office coordinator, an agency owner, a front desk — and explain what we're building, why it works the way it does, and where it stands, in plain English. Then go build it. Clients shouldn't need an interpreter to talk to the person writing their code.

Most projects don't die in the code. They die in the gap between the people who need the software and the people who build it. Closing that gap is half my job.

How I work

Ship first, refactor with reason.

I'd rather get something real in front of users this week than design the perfect system over six. The system gets better when the feedback loop is real.

Boring infra, sharp seams.

Event-driven boundaries, typed contracts, predictable state. Boring tech in the foundation buys you the freedom to be ambitious at the edges.

Production is the real test.

I cut my teeth in hard real-time — pricing and trades that can't be wrong and can't be late. I build to that bar: correct under real load, not just on the happy path.

Allergic to theatre.

Came up self-taught — never had time for over-engineered patterns that only impress in code review. The code that ships is the code that matters.

What I work in
Backend
PythonFastAPINode.jsTypeScriptBicep
Frontend
Next.jsReactReact NativeExpoTailwind
Data & messaging
MongoDBPostgreSQLSupabaseSQL ServerRedisKafkaAzure Service Bus
AI & agents
Anthropic SDKClaudeMCPVercel AI SDKCursor agentsn8nHiggsfield
Cloud
AzureAWSGCPVercelRailway
Selected work