System design interview question
Design a Real-time Notification Delivery System for a Social Platform (like Facebook)
Design a notification delivery system that handles 500M daily active users across 15 geographic regions, processing 2M notifications per second during peak hours with sub-second delivery latency requirements. The system must support multiple notification channels (push, in-app, email, SMS), handle user subscription preferences, support batch notifications with deduplication, maintain delivery guarantees (at-least-once), and provide real-time analytics on delivery success rates. Users expect personalized, prioritized notifications with backpressure handling during traffic spikes, and the system must gracefully degrade when downstream services (FCM, Twilio, SendGrid) experience outages.
Practice this question step by step with an AI interviewer that reviews your requirements, your architecture and your trade-offs, and scores the design.