← All Problems
MediumMessaging40 min
Design a Notification System
Design a scalable notification system that supports push notifications, SMS, and email across millions of users.
MetaAppleGoogleUber
Functional Requirements
- Support multiple channels: push, SMS, email, in-app
- Handle millions of notifications per day
- Users can configure notification preferences
- Support scheduled and triggered notifications
- Provide delivery tracking and analytics
Steps (0/6)
Step 1: Clarify Requirements
Types: push (iOS/Android), SMS, email, in-app. Is it real-time or can it be slightly delayed? What scale (10M notifications/day)? Do we need templating? Rate limiting per user? Retry on failure?
Key Points
- Multi-channel: push, SMS, email, in-app
- Near real-time delivery, some delay acceptable
- ~10M notifications/day → ~115/sec average, bursty
- User preferences and opt-out must be respected
1 / 6