System design interview question
Design a Multi-Region Real-Time Notification Delivery System (Similar to Firebase Cloud Messaging)
Design a notification delivery platform that sends 500M notifications daily across 150M active users in 50+ countries with 99.99% uptime SLA. The system must handle variable payload sizes (100B to 100KB), support multiple delivery channels (push, SMS, email, in-app), prioritize notifications by urgency level, and guarantee at-least-once delivery semantics with deduplication. Key constraints include 100K concurrent connections per region, sub-second latency for high-priority notifications, and the ability to handle traffic spikes (10x during major events). Describe the architecture including message queueing, delivery guarantees, state management, scaling strategies, and failure recovery mechanisms.
Practice this question step by step with an AI interviewer that reviews your requirements, your architecture and your trade-offs, and scores the design.