HLD prep is optimised for larger screens
Open on a laptop or desktop (1024px+) for the diagram canvas and the section sidebar side-by-side.
Problem Understanding
Restate the problem in your own words.
Design a Notification Service (Push, Email, SMS)
Design a multi-channel notification service: producer microservices emit semantic events ('order shipped', 'comment on your post'), the service translates them into per-user push, email, SMS, and in-app notifications, applies user preferences and quiet hours, and delivers reliably even when one channel is down. The hard parts are the routing graph (event → channels), fan-out at user level, idempotency across retries, and rate-limiting the outbound channels (push providers, email IPs).
- SlackIn-app + push + email + mobile, with channel-level + user-level preferences and DND windows.
- Uber rider/driver alertsTime-sensitive push notifications with strict latency budgets; SMS fallback when push fails.
- Amazon SES + SNSAWS’ hosted email + multi-channel pub-sub used by countless SaaS products.
- Firebase Cloud MessagingMobile push de-facto standard; topic-based fan-out plus device tokens.
Your task: read the problem above, then write what the system is, who uses it, the rough scale, and the headline UX expectation — in your own words. Submit for AI review when you're ready.
Click any step in the sidebar to jump around — sections don't have to be done in order. Press ? any time to see all shortcuts.