Problems / Design a product, medium

Build a notification system

Design a notification system from an empty canvas: accept requests from other services, queue them, and have workers deliver push, email and SMS through the providers, with dedupe and per-user rate limits.

Unlock it once for 15 credits; everything inside it is free (runs, changes, Submit, results, hints). Sign in with Google to start; new accounts get free credits.

What it must do

Scale

Request types to route: send (80%, write), status (20%, read). Budget: $50,000 a month.

Estimate first

The test cases

You start from an empty canvas. When you run the tests, each one simulates your design with its own traffic and failures:

TestWhat it doesPasses when
Normal dayThe normal day: the traffic in the brief, nothing broken.Success ≥ 99.9%; p99 latency ≤ 100 ms (send)
A marketing campaignAt 5 s a campaign goes out: requests quadruple for 8 s.Success ≥ 99%; p99 latency ≤ 300 ms (send)
A provider slows downAt 5 s the push, email and SMS provider answers 10× slower for 8 s. While this test runs, brokers redeliver unacknowledged messages after 5 s and 0.2% of acknowledgements are lost, as in production: only idempotent consumers avoid duplicates.Success ≥ 99%; p99 latency ≤ 300 ms (send); No duplicate side effects
Budget: $50,000/monthThe normal day's design must cost at most $50,000 a month.Cost ≤ $50,000/month

Must include

More design a product problems