System design interview question
Design a Global Real-time Notification Delivery System at Scale (like Firebase Cloud Messaging)
Design a notification delivery platform that must handle 500M monthly active users across 6 continents, delivering 50 billion notifications per day with strict latency requirements (p99 < 100ms). The system must support multiple notification types (push, in-app, email, SMS), handle device token management across iOS, Android, and web clients, respect user preferences and do-not-disturb schedules, provide real-time delivery status tracking, and maintain 99.99% uptime. Consider how you would architect this to handle traffic spikes (e.g., during breaking news or promotional campaigns), ensure reliable delivery with retry mechanisms, support A/B testing and analytics, and scale across regions while managing costs effectively.
Practice this question step by step with an AI interviewer that reviews your requirements, your architecture and your trade-offs, and scores the design.