Problems / Design a product, hard
Design BookMyShow from an empty canvas: browse shows and seat maps, hold seats without ever double-booking one, pay, and get a confirmation, even when a blockbuster opens.
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: browse (88%, read), hold (10%, write), pay (2%, write). Budget: $48,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.5%; p99 latency ≤ 300 ms (browse); p99 latency ≤ 800 ms (hold); p99 latency ≤ 3.0 s (pay) |
| Bookings open for a blockbuster | At 5 s bookings open for a blockbuster: traffic jumps to 5× for 8 s, and everyone wants a seat. | Success ≥ 99% (browse); Success ≥ 99% (pay); Success ≥ 55% (hold); p99 latency ≤ 800 ms (hold) |
| 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 ≤ 600 ms (browse) |
| A server dies | At 4 s one server of the first app service on the request path dies for 10 s. | Success ≥ 99% |
| Budget: $48,000/month | The normal day's design must cost at most $48,000 a month. | Cost ≤ $48,000/month |