hey!
I build software with an unreasonable amount of attention to the little things.
Most of my work lives somewhere between modern web development, backend systems, cloud infrastructure, and occasionally wondering why a desktop application needs an entire browser engine to render three buttons.
I'm especially comfortable with Node.js, TypeScript, Astro, Svelte and SvelteKit, and I spend a lot of time around platforms like Cloudflare and Google Cloud.
I contribute to various open-source projects and publish my own work under the GNU GPLv3. I like software that users can inspect, modify, improve, and actually own.
I'm also a perfectionist.
That is occasionally a very useful trait.
Occasionally.
languages & runtimes
web
cloud & infrastructure
software should feel fast.
interfaces should feel intentional.
complexity should justify its existence.
open source should stay open.
native code > chromium wrappers, when it makes sense.
"good enough" is usually where the polishing starts.
Open source is a pretty fundamental part of how I learned to build software, so I try to return the favor.
I contribute fixes, features, cleanup, documentation, and the occasional strongly-held opinion across projects I use and care about.
My own projects are licensed under GPLv3 — if you use the software, you should have the freedom to understand it, change it, and improve it.
+ fast software
+ thoughtful interfaces
+ maintainable code
+ open standards
+ native applications
+ boring infrastructure that works
+ details most people will never notice
- unnecessary abstraction
- 400 MB desktop apps for a settings panel
- "we'll clean it up later"
- shipping things that feel unfinished


