I build LLM-backed products that survive contact with production. The interesting part is never the prompt; it's making an unreliable model behave like infrastructure: fallback chains, cost and denial-of-wallet limits, injection resistance, and fail-closed content safety, all hardened by the incidents that caused them. My work runs live, with real users and real money on the line. If you need someone who can make a model you can't fully trust into a feature you can ship, that's the whole job for me.
Founder of Midnight Dev. TypeScript / React / Next.js, Python, Supabase, with Claude and Gemini integrations throughout.
- yapoleons-court — AI-native game where the model can't touch the score: the server owns scoring, so injection and sycophancy structurally can't move it.
- gemini-reliability-proxy — the reliability layer extracted from production: fallback chains, cost caps, denial-of-wallet limits.
- ai-citation-patterns — dated, sourced research on how AI answer engines (Google AIO, ChatGPT, Perplexity, Claude, Gemini) select and cite content.
- midnight-seo-skills — the Claude Code skill suite I run my SEO portfolio with: audits, topical maps, link acquisition, local pack strategy.
- Yapword — a daily word game featuring Yapoleon, a snarky AI emperor. Live on the web and the App Store.
TypeScript · React · Next.js · Python · Supabase · PostgreSQL · Stripe · Tailwind CSS · Vercel
- 🌐 midnightdev.dev
- 🎮 Play Yapword



