Fundamentals
System Design › FundamentalsThe CAP Theorem Explained Simply (Consistency, Availability, Partition Tolerance)
The CAP theorem without the confusion — what consistency, availability and partition tolerance mean, why partition tolerance is mandatory so the real choice is CP vs AP, concrete bank vs social-feed examples, where real databases land, and the PACELC nuance.
System Design › FundamentalsDatabase Sharding: Splitting Data When One Machine Isn't Enough
Database sharding explained — how splitting data across many databases scales storage and writes, choosing a shard key, range vs hash vs geo strategies, the hotspot and cross-shard query problems, resharding, and why you should shard late.
System Design › FundamentalsDatabase Replication: Copies for Speed and Survival (Primary-Replica Explained)
Database replication explained — how primary-replica setups copy data to scale reads and survive failure, sync vs async replication and replication lag, the read-your-writes trap, replication vs sharding, and multi-primary trade-offs.
System Design › FundamentalsDatabase Indexing: How One Line Makes Queries 1000x Faster
Database indexing explained from scratch — full table scans vs index lookups, how B-trees work, what to index (WHERE, JOIN, ORDER BY), composite indexes and the left-most rule, the read-vs-write trade-off, covering indexes, and EXPLAIN.
System Design › FundamentalsSQL vs NoSQL: How to Choose the Right Database (With Examples)
SQL vs NoSQL explained without the hype — how relational tables and ACID differ from the four NoSQL types (document, key-value, wide-column, graph), when to use each based on your data, and why real systems mix both (polyglot persistence).
System Design › FundamentalsCaching Strategies: How to Make Systems Fast (Cache-Aside, Write-Through & More)
Caching explained from scratch — cache hits and misses, where caches live, the four caching patterns (cache-aside, write-through, write-back, write-around), eviction (LRU, TTL), and the hard problems: staleness, invalidation and the thundering herd.
System Design › FundamentalsLoad Balancing Explained: How One URL Serves Millions of Users
How a load balancer spreads traffic across many servers so no single one is overwhelmed and none is a single point of failure. Covers round robin vs least connections, health checks, sticky sessions, L4 vs L7, and load balancer redundancy — with a clear diagram.
System Design › FundamentalsScalability Explained: Vertical vs Horizontal Scaling (With Examples)
Scalability made simple — the difference between scaling up (a bigger machine) and scaling out (more machines), why statelessness is the golden rule, when to use each, auto-scaling, and how to answer 'how would you scale this?' in an interview.
System Design › FundamentalsHow to Approach Any System Design Interview (The 6-Step Framework)
A repeatable 6-step framework for system design interviews: clarify requirements, estimate scale, define the API, model the data, draw the high-level design, then deep-dive into bottlenecks and failures. Works for any question, from URL shortener to designing Uber.