Design Uber
A ride-hailing service is a genuinely different class of problem from the Easy tier's single-service designs: it needs to track constantly-moving location data for two kinds of users at once, match them against each other in real time, and keep that matching correct under real concurrency — several riders must never be matched to the same driver. Following the framework from How to Answer a System Design Interview Question.
Design WhatsApp
A messaging service is a direct, concrete application of persistent connections and delivery guarantees — the interesting problems aren't the UI, they're making sure a message actually reaches its recipient, in order, exactly once, even when that recipient is offline when it's sent. Following the framework from How to Answer a System Design Interview Question.
Design Twitter
The classic "design a news feed" problem, and one of the most-asked system design questions specifically because its core tension — how a feed actually gets assembled — is a direct, concrete instance of the Push vs. Pull Architecture tradeoff, applied at a scale where the "obvious" answer breaks. Following the framework from How to Answer a System Design Interview Question.
Design Instagram
Instagram shares its feed-and-follow shape with Design Twitter — the fan-out-on-write-vs-read tradeoff from that lesson applies here too, and is worth mentioning rather than re-deriving. What makes this problem genuinely different is what's actually being posted: large binary media (photos and videos) instead of short text, which turns storage and delivery — not feed assembly — into the interesting new problem. Following the framework from How to Answer a System Design Interview Question.
Design a Web Crawler
A web crawler is a different flavor of medium problem — there's no human user waiting on a response at all; the entire system is a distributed background job whose correctness hinges on not visiting the same URL twice and not overwhelming any single website it crawls. Following the framework from How to Answer a System Design Interview Question.
Design an E-commerce Checkout System
Checkout is the one part of an e-commerce system where "eventually consistent and probably fine" isn't good enough — selling the same last unit of inventory to two different customers, or charging a card twice for one order, are the kind of correctness failures that show up as real customer complaints and real financial loss, not a briefly stale page. Following the framework from How to Answer a System Design Interview Question.