System design interview question
Design a Real-Time Notification Delivery System for Mobile Apps
You need to design a notification delivery system that sends push notifications to mobile users across iOS and Android platforms. The system should support 5 million registered users with peak delivery rates of 500K notifications per minute during marketing campaigns. Notifications must be delivered within 30 seconds for 99% of cases, and the system should track delivery status (sent, delivered, failed) for analytics. Consider handling user preferences (do-not-disturb hours, notification categories), managing different device tokens per user, and gracefully handling platform-specific failures (APNs, FCM 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.