Blog
Notes on backend performance, GraphQL, and building scalable systems.
June 20, 2026
We Shipped 3x Faster With AI — and Made Our Worst Architectural Decision in 5 Years
AI accelerated our delivery, but it couldn't see the landmines in our codebase — temporary fixes, client-driven abstractions, and payment-critical edge cases. How we ship fast without digging the hole faster.
Read article →March 15, 2025
Optimizing a GraphQL API with NestJS
How I identified bottlenecks in a NestJS GraphQL API and improved performance by ~15% using DataLoader, resolver tuning, Redis caching, and query complexity limits.
Read article →April 2, 2025
JavaScript: Call Stack, Web APIs & the Event Loop
A practical walkthrough of how JS stays single-threaded yet handles async work—call stack, Web APIs, callback queue, the event loop, and microtasks vs macrotasks.
Read article →April 18, 2025
Deploying a MERN App on a VPS with NGINX, PM2 & SSL
Step-by-step: Ubuntu VPS, Node and PM2, deploying your app, NGINX as a reverse proxy, and HTTPS with Let's Encrypt (Certbot).
Read article →