About
I build thoughtful, performant things for the web, and occasionally turn a storefront into an immersive 3D space you can walk through.
What I do
I came up in the hand-coded era of the web. For years I wrote everything myself, HTML, JavaScript, CSS, PHP, and SQL, one careful line at a time. It was slow work, and it was the best teacher I could have asked for. You come to understand how the web really fits together when you have built every piece of it by hand, why it breaks, and what good actually feels like.
These days I build differently. I'm an AI-first product engineer, and I lean on modern tools like Claude Code to bring immersive web experiences to life, the kind you can step into and explore. The fundamentals haven't gone anywhere. They're what let me steer, and what let me catch the confident answer that's quietly wrong. But AI amplifies human creativity and ability like no technology before it. It has changed what a single person can imagine and ship, and it keeps the focus where it belongs, on the ideas and the craft instead of the boilerplate.
Highlights
-
Engineering
Full-stack work built on hand-coded fundamentals and accelerated with modern AI, always with an eye on performance and security.
-
3D & interactive
Immersive browser-based 3D with Three.js, faster to build with AI in the loop, like the walkable 3D version of this very site.
-
Product thinking
Shipping the right thing, not just the thing. AI handles more of the build, so I can spend my time on the judgment that decides what good looks like.
Timeline
-
Started using Codex, Supabase (PostgreSQL), Drizzle ORM, and Playwright
-
Started using Claude Code, Next.js, and Redis
-
Started experimenting with LLM development tools and prompt engineering
-
Writing mostly full-stack TypeScript at this point
-
Did a lot of localization / internationalization work
-
Started using Kubernetes, Kafka, and Microservices
-
Started using AWS, Docker, and GCP / Firebase
-
Started using Angular 2.x, ReactJS, Material UI, Node.js, and TypeScript (MEAN / MERN-stack)
-
Developed a lot of backend REST API's
-
Started using MongoDB / NoSQL and AngularJS
-
Started writing unit tests and using CI/CD pipelines
-
Did a lot of ETL automation work (cron + PHP / Python scripts)
-
Started using Bootstrap (still mostly PHP / Apache / MySQL on the backend)
-
Started using Git
-
Built a lot of sites with Wordpress and Django
-
Wrote my first Python script
-
Started writing a lot of jQuery
-
Worked at my first online start-up (now defunct)
-
Learned general Linux (LAMP) server administration
-
Started building full-stack web applications
-
Wrote my first CSS, JavaScript, PHP, and SQL (LAMP-stack)
-
Wrote my first HTML
Prefer the scenic route?
Step into the 3D experience