🌐

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.

HLD Fundamentals & Scalability

WhatsApp Deep Dive

Q

Design WhatsApp — what are the key functional and non-functional requirements (2B users, 100B messages/day, latency, consistency)?

intermediatePro

Tests whether you can scope a huge system design problem correctly before jumping to components.

Q

How does WhatsApp use WebSocket for real-time messaging? Why not HTTP polling?

intermediatePro

Tests whether you know a persistent connection avoids the latency and overhead of constantly re-establishing HTTP requests.

Q

What is the difference between sent, delivered, and read ticks in WhatsApp? How is each implemented?

intermediatePro

Tests whether you know each tick maps to a distinct acknowledgment event traveling back through the delivery pipeline.

Q

How does WhatsApp handle message delivery when the recipient is offline?

advancedPro

Tests whether you know messages queue server-side until the recipient's connection re-establishes, then flush in order.

Q

How does WhatsApp handle group messaging at scale — fanning a message out to up to 1024 members?

advancedPro

Tests whether you know large-group fanout is a genuinely harder scaling problem than 1-on-1 messaging.

Q

What is End-to-End Encryption (E2EE)? How does WhatsApp implement it using the Signal Protocol?

advancedPro

Tests whether you know the server never has the keys to read message content, and how key exchange still works per-device.

Q

How does WhatsApp store and deliver media (images, videos) — CDN, chunked upload, compression?

advancedPro

Tests whether you know media takes an entirely different storage/delivery path than lightweight text messages.

Q

How would you design WhatsApp's message delivery system to ensure no message is ever lost?

advancedPro

Tests whether you can combine acknowledgments, persistent queuing, and retry logic into a genuinely reliable delivery guarantee.

Saga Pattern Deep Dive

Databases & Storage

NGINX & Reverse Proxies

Caching

Distributed Systems Trade-offs

Q

What does the CAP theorem actually state? Why can a distributed system only guarantee two of Consistency, Availability, and Partition tolerance, not all three?

intermediatePro

Tests whether you understand the actual proof intuition, not just the acronym.

Q

What is the difference between Leader-Follower (Master-Slave) and Leaderless replication?

advancedPro

Tests whether you know the coordination and conflict-resolution tradeoffs each replication model makes.

Q

Compare rate limiting algorithms: Token Bucket vs Leaky Bucket vs Fixed Window vs Sliding Window.

advancedPro

Tests whether you know each algorithm handles burstiness and window-boundary edge cases differently.

Q

What is the difference between push-based and pull-based architecture for notifications and feeds?

intermediatePro

Tests whether you know the tradeoff between instant delivery cost and on-demand fetch cost at scale.

Q

What is the difference between stateful and stateless architecture? Why do cloud-native designs prefer stateless?

intermediatePro

Tests whether you know statelessness is what makes horizontal scaling and failover trivial instead of painful.

Q

What is the difference between vertical partitioning and horizontal partitioning (sharding)?

intermediatePro

Tests whether you know one splits a table by columns and the other by rows, and which one actually improves write scalability.

Q

What is the difference between write-through cache, write-back cache, and cache-aside pattern?

advancedPro

Tests whether you know the durability-versus-latency tradeoff each write strategy makes.

Messaging & Distributed Systems

Real System Design Problems

Q

Design a project management tool like Jira — issues, boards, workflows, permissions.

advancedPro

Tests whether you can model a complex, permission-heavy, highly configurable domain, not just a simple CRUD app.

Q

Design a real-time collaboration tool (like Google Docs) where multiple users edit the same document simultaneously.

expertPro

Tests whether you know operational transformation or CRDTs are what make concurrent editing actually converge correctly.

Q

Design a URL shortening service like TinyURL.

intermediatePro

The most classic system design opener — tests encoding strategy, collision handling, and read-heavy scaling.

Q

Design a search system for knowledge base articles used by millions of users.

advancedPro

Tests whether you know when to move beyond database LIKE queries to a dedicated search engine like Elasticsearch.

Q

Design a real-time chat system like WhatsApp.

intermediatePro

Tests whether you can design delivery guarantees, message ordering, and real-time connections at massive scale. Asked at: Meta, Google, Uber

Q

Design Twitter — posting tweets, following, and timeline generation.

intermediatePro

Tests whether you know the fanout-on-write versus fanout-on-read tradeoff for celebrity accounts with millions of followers. Asked at: Meta, X, Amazon

Q

Design Slack/Teams — channels, threads, and search at scale.

advancedPro

Tests whether you know channel-based fanout and message search have different scaling characteristics than 1-on-1 chat. Asked at: Salesforce, Microsoft, Atlassian

Q

Design a distributed messaging system that guarantees ordered, reliable delivery across regions.

expertPro

Tests whether you can combine partitioning, replication, and ordering guarantees into one coherent messaging backbone.

Q

Design YouTube — video upload, transcoding, storage, streaming.

intermediatePro

Tests whether you can design a pipeline for chunked upload, async transcoding, and adaptive bitrate streaming. Asked at: Google, Microsoft

Q

Design a centralized logging and monitoring system for hundreds of microservices.

advancedPro

Tests whether you know how ingestion, indexing, and query layers need to scale independently for a system like this.

Q

Design Uber — rider requests, driver matching, trip tracking.

advancedPro

Tests whether you can design geospatial indexing and real-time matching under tight latency constraints. Asked at: Uber, Lyft, Google

Q

Design a rate limiter for an API — prevent abuse at scale.

advancedPro

Tests whether you can design a distributed rate limiter, not just a single-process token bucket. Asked at: Amazon, Stripe, X

Q

Design a workflow automation system (like Zapier) that triggers actions based on configurable rules across many integrations.

expertPro

Tests whether you can design a pluggable trigger-action engine that scales across arbitrary third-party integrations.

Q

Design a distributed key-value store like DynamoDB or Cassandra.

advancedPro

Tests whether you can bring together consistent hashing, replication, and CAP tradeoffs into one coherent design. Asked at: Amazon

Q

Design a distributed job scheduler that avoids duplicate execution across multiple instances.

expertPro

Tests whether you know a naive cron-per-instance setup breaks the moment you scale beyond one node.

Q

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?

expertPro

Tests whether you can combine an atomic inventory decrement, a request buffer, and idempotency into one design under extreme concurrent load.

Q

Design a notification system — push, SMS, email — at 100M users/day.

advancedPro

Tests whether you can design multi-channel fanout with retries, rate limiting per user, and provider failover.