Software builder focused on shipping real products and keeping them working once users show up.
I build software products and stay involved after launch, when usage patterns emerge, edge cases arise, and systems are put to the test under real-world conditions.
My experience spans frontend, backend, and AI-driven systems, with the majority of my time spent on features that sit directly in the user's path: search, data workflows, and real-time interactions.
Over the last few years, I’ve worked on and operated products used by real users:
- A document intelligence product processing 10k+ documents in production with 99.9% uptime.
- A semantic search experience across 200+ code repositories, where a BM25 + embeddings hybrid outperformed pure vector search on real queries.
- A real-time email indexing system with LLM provider fallback, keeping workflows running during outages and rate limits.
- WebSocket-driven features with Redis caching, keeping user-facing latency consistently under 2 seconds.
Several of these systems supported paid features or internal workflows where reliability directly affected user retention and revenue.
Some decisions mattered more than the code itself:
- Used Postgres + pgvector instead of managed vector databases to keep costs predictable and queries inspectable.
- Added multi-LLM routing after a single-provider failure broke production once.
- Iterated on chunking strategies multiple times, once real documents exposed weaknesses in default RAG approaches.
- Chose faster iteration over perfect abstractions while usage patterns were still forming.
I’m comfortable making decisions before they’re fully provable, and revisiting them quickly when reality disagrees.
Tools I’ve used long enough to know where they help, and where they don’t.
I bias toward shipping early and tightening the loop with real usage.
I care about momentum early, clarity later. I’m comfortable building with incomplete information, correcting course fast, and tightening systems once usage makes the right shape obvious.
Boring systems that work beat clever systems that don’t.
Working with small teams building real products where engineering decisions directly affect users and the business.
Open to full-time remote roles. Comfortable overlapping with US/EU hours when it matters.