Related System Design
Design Job Scheduler
Design a distributed job scheduler capable of handling recurring and one-time tasks at scale.
Design a scalable notification service that sends emails, SMS, and push notifications to millions of users.
Let's design a scalable notification system that supports email, SMS, and push notifications. Where would you like to start?
Use this as one discussion aid, not a single correct answer. Your design should follow from the requirements, scale, and trade-offs you establish.
graph LR
A["Design a Notification System"]
A --> F1["Decoupling Message Queues - Kafka/RabbitMQ"]
A --> F2["Reliability & Retry Strategies Exponential Backoff, Dead Letter Queues"]
A --> F3["Distributed Deduplication Idempotency keys via Redis"]
A --> F4["User Preferences & Compliance Opt-in/Opt-out, GDPR"]
A --> F5["Rate Limiting & Throttling Per-user vs Per-campaign"]
A --> F6["Observability Tracing, Open Rates, Delivery Latency"]Practice drawing this system component-by-component on a live whiteboard while the interviewer probes at your target level.
Continue to DashboardContinue preparing
Related System Design
Design a distributed job scheduler capable of handling recurring and one-time tasks at scale.
Related System Design
Design a ride-matching service like Uber or Lyft with real-time location tracking.
Related System Design
Design a scalable news feed system where users can post tweets and follow other users.
Related System Design
Design a high-velocity video recommendation feed (For You Page).