Bird
Raised Fist0
HLDsystem_design~20 mins

Design a notification system in HLD - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Notification System Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Architecture
intermediate
2:00remaining
Identify the core components in a notification system architecture

Which of the following lists contains the essential components needed to build a scalable notification system?

ANotification queue, Image processor, Delivery service, User database
BUser database, Notification queue, Delivery service, Analytics module
CUser database, Notification queue, Video streaming service, Analytics module
DUser interface, Payment gateway, Notification queue, Cache
Attempts:
2 left
💡 Hint

Think about components that handle user data, message queuing, sending notifications, and tracking results.

scaling
intermediate
2:00remaining
Scaling the notification delivery for millions of users

You need to design the delivery service to handle millions of notifications per minute. Which approach best supports this scale?

ADistribute notifications across multiple worker servers using a message queue
BUse a single server with multi-threading to send all notifications
CSend notifications directly from the database server to reduce latency
DBatch all notifications and send them once per hour to reduce load
Attempts:
2 left
💡 Hint

Consider how to handle high volume and avoid bottlenecks.

tradeoff
advanced
2:00remaining
Choosing between push and pull notification models

What is a key tradeoff when choosing push notifications over pull notifications in a mobile app?

APush notifications provide real-time updates but require persistent connections
BPush notifications reduce server load but increase client battery usage
CPull notifications guarantee delivery but cause higher latency
DPull notifications are faster but consume more network bandwidth
Attempts:
2 left
💡 Hint

Think about how push notifications work compared to clients requesting updates.

🧠 Conceptual
advanced
2:00remaining
Ensuring notification delivery guarantees

Which strategy best ensures 'at least once' delivery of notifications in a distributed system?

ASend notification once and do not retry on failure
BStore notifications only on client devices to avoid server retries
CSend notifications in batches without tracking individual status
DUse a message queue with acknowledgement and retry on failure
Attempts:
2 left
💡 Hint

Consider how to handle failures and retries in message delivery.

estimation
expert
2:00remaining
Estimating storage needs for notification logs

Your system sends 10 million notifications daily. Each notification log entry requires 1 KB of storage. How much storage is needed to keep logs for 30 days?

A30 TB
B3 TB
C300 GB
D300 TB
Attempts:
2 left
💡 Hint

Calculate total notifications over 30 days and multiply by size per notification.