Writing

Notes from the build.

Essays about engineering, leading teams, AI systems, and the products I am building day to day. Each post comes from something I have actually shipped.

March 2026 · 6 min read

Leading a small engineering team without losing your hands-on edge

When I moved from senior engineer to running a team of five, the job changed in ways I did not fully expect. My calendar filled with other people's problems and the amount of code I shipped each week dropped sharply. This post is about the habits I have built since then to stay close enough to the work to make good architecture calls, while giving the team enough room to own their decisions and grow into harder problems.

Leadership Engineering Management
Read article →
January 2026 · 9 min read

Building Crito Voice AI: what actually worked in production

Crito Voice AI is a production phone receptionist for hotels at Skyware IT, built on LiveKit, OpenAI, Deepgram, and ElevenLabs. I built the first version independently, end to end, for the company. This post walks through architecture, the latency budget that shaped every decision, mid-conversation tool calls, and the logging strategy that made flaky calls reproducible.

Voice AI LiveKit OpenAI
Read article →
November 2025 · 8 min read

Multi-tenant SaaS from day one without over-engineering it

I have shipped two multi-tenant platforms that are still in production: Maktab for private schools and Crito Smart PMS for hotels. Both needed proper tenant isolation from the very first release, and the architecture decisions I made on day one quietly defined the next two years of work. In this post I cover the trade-offs between schema-per-tenant and row-level isolation, how to keep tenant context out of every individual query, and what I deliberately deferred until the second or third paying customer arrived.

Architecture PostgreSQL SaaS
Read article →