Notes on building
web products.
Short write-ups on the engineering problems I run into — mostly React, Node.js, and API design. New posts added as they’re written.
Sandboxing AI-Generated Code: How I Run Autonomous Agent Output Safely
How an autonomous coding agent can safely write, run, and test its own code — isolated Docker sandboxes, resource limits, and cleanup, from building a Devin AI clone.
AI Engineering · Aug 10, 2026Building a Multi-Provider LLM Gateway: What I Learned Cloning OpenRouter
Notes on designing a provider-abstraction layer that lets an app switch LLM providers with zero client-side changes, plus what actually made routing latency predictable.
Backend · Jul 22, 2026Preventing Race Conditions in Booking Systems with MongoDB Transactions
How atomic MongoDB operations and transaction-safe logic stop double-bookings under real concurrent load, from building a travel booking platform.
Real-time · Jun 15, 2026Real-Time Collaboration at Scale: WebSockets, Delta Updates, and Zero Data Loss
Notes on building multi-user real-time sync with Socket.IO — delta-based state updates, conflict handling, and cutting payload size for low-bandwidth users.
Backend · May 10, 20265 TypeScript Patterns I Reach for in Every Node.js API
Five practical TypeScript patterns for Node.js and Express APIs — request validation, discriminated unions for responses, and typing async error handling properly.
Frontend · Apr 18, 2026A React Performance Checklist Before You Ship
A practical pre-launch checklist for React and Next.js apps — render performance, bundle size, and the Core Web Vitals fixes that actually move the needle.