I build software and keep it running in production.
WHAT I STAND FOR
Three things I never compromise.
Quality
Written so it can still be read and changed six months from now, by me or by whoever comes after me. No shortcuts that quietly turn into someone else's problem.
Clean code · Typed · Reviewed
Security
Who can see what, who can change what, and what happens when someone tries what they shouldn't. Decided at the start, not patched in after the first scare.
JWT · Rate limiting · OWASP
Performance
How long your users wait is a design decision, and it answers to numbers rather than opinions. Measured on real phones and real connections, not on my machine.
Core Web Vitals · Edge · Observability
NOTES
Things I write about.
I gave Claude Code a voice so I could stop watching the terminal
Oct 20269 min read
I had agents working on another monitor and spent the day glancing over to see whether they had finished or were waiting on a permission prompt. Now they tell me out loud, with a summary Claude writes itself and a voice that runs on my machine, no APIs.
Read →PERFORMANCEI tried Astro for this site and stayed with Next.js
Aug 20266 min read
Astro won on the metric I thought mattered. I stayed with Next because the site stopped being static content the day the home page started measuring live services.
Read →GET IN TOUCH
Let's work together.
A site that needs to exist, a system to build from scratch, something old that nobody wants to touch anymore, or an extra senior pair of hands on your team — tell me what the problem is and I'll tell you how I'd approach it.