System Design (HLD)
High-level design fundamentals, load balancing, databases at scale, caching, distributed systems concepts, and the real interview favorites — design TinyURL, WhatsApp, Uber, Netflix — asked at companies like Meta, Amazon, and Google.
WhatsApp Deep Dive
Design WhatsApp — what are the key functional and non-functional requirements (2B users, 100B messages/day, latency, consistency)?
intermediateTests whether you can scope a huge system design problem correctly before jumping to components.
How does WhatsApp use WebSocket for real-time messaging? Why not HTTP polling?
intermediateTests whether you know a persistent connection avoids the latency and overhead of constantly re-establishing HTTP requests.
What is the difference between sent, delivered, and read ticks in WhatsApp? How is each implemented?
intermediateTests whether you know each tick maps to a distinct acknowledgment event traveling back through the delivery pipeline.
How does WhatsApp handle message delivery when the recipient is offline?
advancedTests whether you know messages queue server-side until the recipient's connection re-establishes, then flush in order.
How does WhatsApp handle group messaging at scale — fanning a message out to up to 1024 members?
advancedTests whether you know large-group fanout is a genuinely harder scaling problem than 1-on-1 messaging.
What is End-to-End Encryption (E2EE)? How does WhatsApp implement it using the Signal Protocol?
advancedTests whether you know the server never has the keys to read message content, and how key exchange still works per-device.
How does WhatsApp store and deliver media (images, videos) — CDN, chunked upload, compression?
advancedTests whether you know media takes an entirely different storage/delivery path than lightweight text messages.
How would you design WhatsApp's message delivery system to ensure no message is ever lost?
advancedTests whether you can combine acknowledgments, persistent queuing, and retry logic into a genuinely reliable delivery guarantee.
HLD Fundamentals & Scalability
What is High-Level Design (HLD)? How does it differ from Low-Level Design (LLD)?
beginnerTests whether you know HLD is about system architecture and component boundaries, while LLD is about class-level implementation detail.
What are Functional Requirements vs Non-Functional Requirements?
beginnerTests whether you know to separate what a system does from how well it needs to do it (latency, scale, availability).
What is the difference between horizontal scaling and vertical scaling?
beginnerTests whether you know the tradeoffs between adding more machines versus making one machine bigger.
How do you design a system to handle 1 million requests per second?
advancedTests whether you can reason through caching, load balancing, sharding, and async processing together at extreme scale.
What is the thundering herd problem? How do you prevent it?
advancedTests whether you know why many clients retrying or waking up simultaneously can itself take a system down.
Real System Design Problems
Design Pastebin — store and share large blocks of text with expiration.
intermediateA simpler cousin of the URL shortener: object storage for large text content (not just a short key-value pair), expiration handling, and a read-heavy caching strategy for popular pastes. Good for warming up estimation skills since the storage math is interesting (average paste size × daily pastes × retention period).
Design a real-time Leaderboard — ranking millions of players by score.
intermediateThe 'sorted data at scale' problem: a relational database struggles with real-time rank queries at scale, which is exactly why Redis sorted sets (ZADD/ZRANK/ZREVRANGE) are the standard answer, giving O(log n) rank/update instead of a full sort on every query. At senior level, the probe extends to multi-dimensional rankings (daily/weekly/all-time) and historical leaderboard snapshots.
Design a Content Management System (CMS) — versioning, drafts, and publish workflows at scale.
advancedThe read-heavy content delivery problem: content versioning, draft-vs-published state management, and how content is cached when it must be invalidated the instant something is published. The cache invalidation strategy on publish — pushing a fresh version out to every edge/cache layer without serving a stale draft — is the most interesting part.
Design a Hotel Booking System (like Booking.com) — inventory and double-booking prevention.
advancedThe inventory-and-double-booking problem: how room availability is modeled and queried efficiently across date ranges, how concurrent bookings are prevented from double-booking the same room (locking vs optimistic concurrency), and how the booking and payment are completed as one consistent operation rather than two independently-failable steps.
Design a Digital Wallet (like PayPal or Venmo) — atomic transfers and idempotent payments.
advancedThe financial consistency and idempotency problem: how transfers between accounts are made atomic, how the system prevents double-charging on a retried request, and how transaction history is stored for auditability. Idempotency keys on every payment operation are the central design detail interviewers probe hardest.
Design a Live Video Streaming platform (like Twitch) — low-latency ingest and fan-out to millions.
advancedThe ingest-transcode-and-low-latency-delivery problem: how a live stream is ingested from a broadcaster, transcoded into multiple quality levels in near-real-time (unlike YouTube's offline transcode pipeline), and delivered to potentially millions of concurrent viewers with only a few seconds of latency.
Design a Distributed Cache (like Redis Cluster) — consistent hashing and hot-key handling.
advancedThe consistent-hashing-and-replication problem: how data is distributed across cache nodes using consistent hashing, how virtual nodes improve distribution evenness, what happens when a node fails, and how the cache handles a hot key that receives wildly disproportionate traffic compared to every other key.
Design a Flight Booking System — seat inventory and concurrent reservation across dates.
advancedThe seat-inventory-and-concurrent-reservation problem: how seat availability is queried efficiently across many flights and dates, how two users racing to book the last seat on a flight are handled correctly, and how the booking and payment complete as one consistent operation.
Design an Ad Serving System — real-time auction and targeting in milliseconds.
advancedThe real-time-auction-and-targeting problem: how ads are selected and ranked within a strict millisecond budget, how targeting criteria are matched against user attributes at scale, and how impression/click events are collected reliably enough to be trusted for billing.
Design Google's Web Indexing Pipeline — petabyte-scale crawl, parse, and index.
expertThe petabyte-scale data-pipeline problem: how the web is crawled at scale, how HTML is parsed and content extracted, how an inverted index is built and continuously updated across hundreds of machines, and how index freshness is maintained. Expect to reason about a MapReduce-style (or equivalent) batch processing pipeline, not a single-machine design.
Design Amazon's Order Management System — cross-service consistency at massive scale.
expertThe multi-service saga problem at Amazon's scale: how an order touching payment, inventory, fulfillment, and notification services stays consistent when any one of those services can fail mid-flow, how the system handles an item going out of stock AFTER payment is already taken, and how order state is tracked reliably across the entire lifecycle.
Design a Distributed SQL Database (like Google Spanner) — global strong consistency.
expertThe global-strong-consistency problem: how a database achieves strong consistency across geographically distributed nodes despite network delay, how a mechanism like TrueTime provides globally consistent timestamps, and what cross-region transactions actually cost in latency. This is asked almost exclusively for the most senior distributed-systems roles.
Design Netflix's Video Recommendation System — offline training meets real-time serving.
expertThe large-scale ML-serving problem: the full pipeline from user-behavior data collection through offline model training to a real-time recommendation-serving layer, how recommendations get personalized for hundreds of millions of users, and how the system handles the cold-start problem for a brand-new user with no watch history yet.
Design Meta's Social Graph Storage System — billions of relationships at query speed.
expertThe graph-at-social-network-scale problem: how billions of friendships and follow relationships are stored and queried, how the graph is partitioned across machines without making common queries prohibitively expensive, and how operations like mutual-friends or second-degree-connections execute efficiently at this scale.
Design a Global Real-Time Multiplayer Game Backend — low-latency state sync across regions.
expertThe low-latency-state-synchronization problem: how game state stays synchronized across players in different geographic regions with minimal perceived lag, how conflicts are resolved when two players' actions affect the same game state simultaneously, and how matchmaking pairs players by both skill and geographic proximity.
Design Uber's Surge Pricing System — real-time demand sensing and price computation.
expertThe real-time-demand-sensing-and-pricing problem: how supply and demand are measured in real time across many geographic zones, how prices are computed and pushed to users within seconds of a demand shift, and — the hardest part — how the system avoids a feedback loop where a price change itself causes a demand change that triggers yet another price change.
Design Amazon's Global Payments Infrastructure — multi-region financial consistency.
expertThe multi-region financial-consistency problem: how a payment system maintains strong consistency across regions while still meeting real-time payment latency requirements, how regulatory requirements in different jurisdictions constrain where data can physically be stored, and how currency conversion and settlement work across markets.
Design Google's Advertising Auction Infrastructure — billions of bids per day, in milliseconds.
expertThe real-time-bidding-at-enormous-scale problem: how billions of ad auctions per day are conducted within a millisecond budget, how targeting signals get applied at the moment of auction, how the billing system accurately tracks spend across billions of auctions, and how advertiser budget depletion is enforced in real time so no advertiser overspends.
Design Meta's Cross-Platform Identity System — one identity across Facebook, Instagram, and WhatsApp.
expertThe unified-identity-across-products problem: how user identities are linked across products that each have different underlying data models, how privacy requirements and regulatory constraints differ across products and jurisdictions, and how a change to one identity correctly propagates to every linked product.
Design AWS's Infrastructure Provisioning System — validating, queuing, and executing resource requests globally.
expertThe infrastructure-as-code-and-resource-management problem: how cloud resource requests are validated, queued, and executed across a global fleet, how capacity is managed so resources are actually available when requested, and how the system handles PARTIAL provisioning failures where some resources in a stack succeed and others fail.
Design a Global Event Streaming Platform (like Kafka at LinkedIn scale) — trillions of messages per day.
expertThe streaming-infrastructure-at-internet-scale problem: how a message queue processing trillions of messages a day is architected, how topics are partitioned and replicated across a global fleet of brokers, how consumer lag is monitored and managed, and how the platform survives the failure of an entire data center without losing messages or needing manual intervention.
Design a project management tool like Jira — issues, boards, workflows, permissions.
advancedTests whether you can model a complex, permission-heavy, highly configurable domain, not just a simple CRUD app.
Design a real-time collaboration tool (like Google Docs) where multiple users edit the same document simultaneously.
expertTests whether you know operational transformation or CRDTs are what make concurrent editing actually converge correctly.
Design a URL shortening service like TinyURL.
intermediateThe most classic system design opener — tests encoding strategy, collision handling, and read-heavy scaling.
Design a real-time chat system like WhatsApp.
intermediateTests whether you can design delivery guarantees, message ordering, and real-time connections at massive scale. Asked at: Meta, Google, Uber
Design a search system for knowledge base articles used by millions of users.
advancedTests whether you know when to move beyond database LIKE queries to a dedicated search engine like Elasticsearch.
Design Slack/Teams — channels, threads, and search at scale.
advancedTests whether you know channel-based fanout and message search have different scaling characteristics than 1-on-1 chat. Asked at: Salesforce, Microsoft, Atlassian
Design Twitter — posting tweets, following, and timeline generation.
intermediateTests whether you know the fanout-on-write versus fanout-on-read tradeoff for celebrity accounts with millions of followers. Asked at: Meta, X, Amazon
Design YouTube — video upload, transcoding, storage, streaming.
intermediateTests whether you can design a pipeline for chunked upload, async transcoding, and adaptive bitrate streaming. Asked at: Google, Microsoft
Design a distributed messaging system that guarantees ordered, reliable delivery across regions.
expertTests whether you can combine partitioning, replication, and ordering guarantees into one coherent messaging backbone.
Design a centralized logging and monitoring system for hundreds of microservices.
advancedTests whether you know how ingestion, indexing, and query layers need to scale independently for a system like this.
Design Uber — rider requests, driver matching, trip tracking.
advancedTests whether you can design geospatial indexing and real-time matching under tight latency constraints. Asked at: Uber, Lyft, Google
Design a workflow automation system (like Zapier) that triggers actions based on configurable rules across many integrations.
expertTests whether you can design a pluggable trigger-action engine that scales across arbitrary third-party integrations.
Design a rate limiter for an API — prevent abuse at scale.
advancedTests whether you can design a distributed rate limiter, not just a single-process token bucket. Asked at: Amazon, Stripe, X
Design a distributed key-value store like DynamoDB or Cassandra.
advancedTests whether you can bring together consistent hashing, replication, and CAP tradeoffs into one coherent design. Asked at: Amazon
Design a distributed job scheduler that avoids duplicate execution across multiple instances.
expertTests whether you know a naive cron-per-instance setup breaks the moment you scale beyond one node.
Design a flash sale system for 10 million users all trying to buy one product at exactly the same second. How do you prevent overselling?
expertTests whether you can combine an atomic inventory decrement, a request buffer, and idempotency into one design under extreme concurrent load.
Design a notification system — push, SMS, email — at 100M users/day.
advancedTests whether you can design multi-channel fanout with retries, rate limiting per user, and provider failover.
Load Balancing
What is a load balancer? What are its main responsibilities?
beginnerTests whether you know a load balancer does more than just 'spread traffic' — health checks, TLS termination, and failover too.
What is the difference between Layer 4 (TCP) and Layer 7 (HTTP) load balancing?
intermediateTests whether you know L7 can route on content (path, headers) while L4 only sees connection-level information.
Explain load balancing algorithms: Round Robin, Weighted, Least Connections, IP Hash.
intermediateTests whether you know which algorithm fits which traffic pattern, especially when backend capacity is uneven.
What is sticky session (session affinity)?
intermediateTests whether you know why pinning a user to one server helps stateful apps but hurts even load distribution.
Saga Pattern Deep Dive
What is the Saga pattern? What problem does it solve in microservices, and why can't you just use a traditional ACID transaction across services?
beginnerTests whether you know distributed ACID transactions don't scale, and Saga is the practical alternative.
Walk through an e-commerce order flow using Choreography Saga — Order Service → Payment Service → Inventory Service.
advancedTests whether you can trace event-driven, peer-to-peer coordination step by step without a central coordinator.
Walk through the same e-commerce order flow using Orchestration Saga with a central coordinator.
advancedTests whether you can contrast this against choreography and explain when a central coordinator is actually worth the coupling.
How do you implement a Choreography Saga using Kafka — what events are produced and consumed at each step?
advancedTests whether you can turn the abstract pattern into a concrete topic/event design.
How do you debug a failed Saga — how do you know which step failed and what was compensated?
advancedTests whether you know a Saga needs its own observability (state tracking, correlation IDs) since there's no single transaction log to inspect.
What is the difference between Saga and Two-Phase Commit (2PC)? Why is Saga preferred in microservices?
advancedTests whether you know 2PC's blocking, coordinator-dependent model doesn't fit the availability goals of microservices.
Databases & Storage
What is the difference between SQL (RDBMS) and NoSQL databases?
beginnerTests whether you know the schema, scaling, and consistency tradeoffs, not just 'SQL is relational, NoSQL isn't.'
What is ACID vs BASE? When do you sacrifice consistency for availability?
intermediateTests whether you know these are two fundamentally different philosophies for what a database guarantees under failure.
What is the CAP theorem? Give real database examples for CP and AP systems.
intermediateTests whether you can name real databases (like DynamoDB or Cassandra vs. traditional RDBMS) and place them correctly on CAP.
What is database sharding? What are the sharding strategies?
intermediateTests whether you know range-based, hash-based, and directory-based sharding, and the hotspot risk each carries.
What is consistent hashing? How does it minimize resharding?
intermediateTests whether you know why consistent hashing avoids remapping almost every key when a node is added or removed.
What is an LSM Tree? How does Cassandra use it?
advancedTests whether you know how log-structured merge trees turn random writes into fast sequential ones for write-heavy databases.
NGINX & Reverse Proxies
How do you configure NGINX as a load balancer using the upstream block?
intermediateTests whether you know the practical configuration, not just that NGINX 'can do load balancing.'
How does NGINX handle SSL termination — what is the benefit of terminating SSL at the load balancer instead of at each backend?
advancedTests whether you know centralizing TLS termination simplifies certificate management and offloads CPU work from application servers.
How does NGINX handle 10,000 concurrent connections without spawning 10,000 threads?
advancedTests whether you know NGINX's event-driven, non-blocking architecture is what makes this possible on modest hardware.
What is the difference between a forward proxy and a reverse proxy?
intermediateTests whether you know one hides the client from the server, and the other hides the server from the client.
Caching
What is caching? At how many layers can you cache in a system?
beginnerTests whether you know caching can happen at the browser, CDN, application, and database layer, each solving a different problem.
What is the difference between Cache-Aside, Write-Through, Write-Behind, and Read-Through?
intermediateTests whether you know the tradeoffs each caching strategy makes between latency, consistency, and complexity.
What is cache eviction? Explain LRU, LFU, and FIFO policies.
intermediateTests whether you know which eviction policy fits which access pattern, and why LRU is the common default.
What is a cache stampede (thundering herd)? How do you prevent it?
advancedTests whether you know how to stop thousands of requests from simultaneously hammering the database when a hot key expires.
What is a hot key problem in Redis? How do you solve it?
advancedTests whether you know why one extremely popular key can overload a single Redis shard even when the cluster overall has headroom.
Distributed Systems Trade-offs
What does the CAP theorem actually state? Why can a distributed system only guarantee two of Consistency, Availability, and Partition tolerance, not all three?
intermediateTests whether you understand the actual proof intuition, not just the acronym.
What is the difference between Leader-Follower (Master-Slave) and Leaderless replication?
advancedTests whether you know the coordination and conflict-resolution tradeoffs each replication model makes.
Compare rate limiting algorithms: Token Bucket vs Leaky Bucket vs Fixed Window vs Sliding Window.
advancedTests whether you know each algorithm handles burstiness and window-boundary edge cases differently.
What is the difference between push-based and pull-based architecture for notifications and feeds?
intermediateTests whether you know the tradeoff between instant delivery cost and on-demand fetch cost at scale.
What is the difference between stateful and stateless architecture? Why do cloud-native designs prefer stateless?
intermediateTests whether you know statelessness is what makes horizontal scaling and failover trivial instead of painful.
What is the difference between vertical partitioning and horizontal partitioning (sharding)?
intermediateTests whether you know one splits a table by columns and the other by rows, and which one actually improves write scalability.
What is the difference between write-through cache, write-back cache, and cache-aside pattern?
advancedTests whether you know the durability-versus-latency tradeoff each write strategy makes.
Messaging & Distributed Systems
What is a message queue? Why is asynchronous communication important?
beginnerTests whether you know how decoupling producers from consumers improves resilience and lets each side scale independently.
What is Kafka? Explain Topics, Partitions, Producers, Consumers, Consumer Groups.
intermediateTests whether you can explain Kafka's architecture at the system-design level, not just the API surface.
What is the Two Generals Problem? What does it imply for distributed systems?
advancedTests whether you know why perfectly reliable communication over an unreliable network is provably impossible.
What is leader election? How do Zookeeper and Raft implement it?
advancedTests whether you know how a distributed system agrees on a single coordinator without a single point of failure.
What is a distributed lock? How does Redis implement Redlock?
advancedTests whether you know how to coordinate mutual exclusion across multiple machines, not just within one process.
What is a Merkle Tree? How is it used in Cassandra anti-entropy or Git?
advancedTests whether you know how hash trees let two systems find data differences without comparing every single record.
Location & Ride-Hailing
AI/ML Systems (Trending)
Design a system like ChatGPT — LLM serving at scale.
advancedTests whether you can reason about GPU batching, request queuing, and streaming token responses under massive concurrent load. Asked at: OpenAI, Google, Microsoft
Design a recommendation engine — collaborative filtering.
advancedTests whether you can design the offline model training and online low-latency serving halves of a recommendation system. Asked at: Netflix, Amazon