Mock Interviewer

Ask Coach

Ask Coach
Clarify requirements before you design — kept separate from your stage notes.

Tap a question to start, or type your own below.

Notification System Design

Visual Problem Diagram

Notification System Design architecture diagram

Scenario

A product sends password reset codes, receipts, marketing campaigns, and urgent alerts through email, SMS, and push. A marketing blast must not delay password resets, providers rate-limit traffic, and retries must not spam users with duplicates.

Design a notification system delivering push, email, SMS, and in-app messages based on product events and user preferences. Providers impose hard rate limits, users expect transactional messages to arrive quickly, and retries must not spam people with duplicates.

You should support event ingestion, template rendering, channel routing, preferences, quiet hours, dedupe, scheduling, retries, provider failover, DLQ, delivery status, and observability. Be ready to explain why "exactly once" is not a real end-to-end promise for notifications.

Constraints

Functional

Ingest notification requests, render templates, route to channels, check preferences, schedule, retry, track status, and support transactional and marketing lanes.

Non-functional

Durable enqueue, fast 202 response, low latency for transactional messages, provider rate-limit compliance, dedupe on retries, auditable opt-out handling.

Scale

Tens of millions of users, campaign bursts, provider quotas, many templates and locales, multiple devices per user.

Stages ahead

1Requirement Analysis
2API Design
3High-Level Design
4HLD Extensions
5Trade-offs

Log in to start practicing

Preview the problem below. Sign in to start your timed session, save progress, and use the AI coach.