System design

All articles
Multi-Cloud Redundancy: The Gap in Our Resilience Thinking

Multi-Cloud Redundancy: The Gap in Our Resilience Thinking

March 19, 2026 System design

Multi-region is not enough. Recent outages exposed the gap between region and provider redundancy.

Read article
PostgreSQL's GiST Exclusion Constraint: The Database-Level Answer to Double Bookings

PostgreSQL's GiST Exclusion Constraint: The Database-Level Answer to Double Bookings

March 1, 2026 System design

PostgreSQL's GiST exclusion constraint prevents overlapping hotel bookings at the database layer — making double bookings structurally impossible. One declarative rule that catches what application-le...

Read article
Race Conditions in Hotel Booking Systems: Why Your Technology Choice Matters More Than You Think

Race Conditions in Hotel Booking Systems: Why Your Technology Choice Matters More Than You Think

February 1, 2026 System design

Race conditions in hotel bookings: PHP needs only DB protection, Node.js/FastAPI need both DB and app-level locks. Use atomic updates by default, pessimistic locking for complex logic.

Read article
Lambda Functions and API Gateway: Are You Ready for Your Next Infrastructure Change?

Lambda Functions and API Gateway: Are You Ready for Your Next Infrastructure Change?

January 13, 2026 System design

Can your Lambda functions survive a datacenter migration? Are you prepared for a technology change? Here is how the infrastructure needs to be built.

Read article
The Hidden Performance Killer: How One WHERE Clause Fixed Our 5-Second Notification Query

The Hidden Performance Killer: How One WHERE Clause Fixed Our 5-Second Notification Query

December 3, 2025 System design

Our 5M row notification table caused 4-second queries. Adding WHERE id > cutoff_id improved locality of reference in the clustered index, dropping query time to 250ms. One WHERE clause, 16x faster.

Read article
Beyond pgvector: Choosing the Right Vector Database for Production

Beyond pgvector: Choosing the Right Vector Database for Production

November 14, 2025 System design

When Vector Search Becomes Your Production Nightmare: A Deep Dive into Vectors, Indexes, and the Databases That Handle Them

Read article
Building Resilient Python Applications with Tenacity: Smart Retries for a Fail-Proof Architecture

Building Resilient Python Applications with Tenacity: Smart Retries for a Fail-Proof Architecture

August 18, 2025 System design

Building resilient Python applications requires more than simple retry loops—intelligent retry strategies using Tenacity, combined with exponential backoff, jitter, and precise exception handling, for...

Read article
Search Is Dead. It’s Time for Systems That Understand

Search Is Dead. It’s Time for Systems That Understand

June 23, 2025 System design

Search is undergoing a radical shift—from keyword matching to true intent understanding. Inspired by LinkedIn’s recent blog on their AI-powered job search, this post explores how the future of discove...

Read article
LangGraph vs ReAct: When Should You Use Which for Your Next AI Agent?

LangGraph vs ReAct: When Should You Use Which for Your Next AI Agent?

June 29, 2025 System design

Building an AI Agent? Should you trust your LLM to decide what to do next or control every step? This short guide explains when to use a ReAct agent for flexible tool use and when LangGraph makes sens...

Read article