Problems / Design a product, hard
Design the Twitter home timeline from an empty canvas: tweets fan out to followers’ timelines, timelines are read from a cache, and tweets are searchable, at 3,000 requests a second.
Unlock it once for 25 credits; everything inside it is free (runs, changes, Submit, results, hints). Sign in with Google to start; new accounts get free credits.
Request types to route: home (80%, read), tweet (10%, write), search (10%, read). Budget: $5,000 a month.
You start from an empty canvas. When you run the tests, each one simulates your design with its own traffic and failures:
| Test | What it does | Passes when |
|---|---|---|
| Normal day | The normal day: the traffic in the brief, nothing broken. | Success ≥ 99.8%; p99 latency ≤ 100 ms (home); p99 latency ≤ 300 ms (search) |
| A big live event | At 5 s a live event starts: traffic triples for 8 s. | Success ≥ 99%; p99 latency ≤ 250 ms (home) |
| Cache flushed | At 5 s the cache on the request path is emptied, as after a restart or a bad deploy. | Success ≥ 99%; p99 latency ≤ 400 ms (home) |
| DDoS attack | At 5 s 20,000 requests a second of flood traffic arrive for 10 s, alongside real users. | Success ≥ 99%; Attack blocked ≥ 95% |
| Budget: $5,000/month | The normal day's design must cost at most $5,000 a month. | Cost ≤ $5,000/month |