Bird
Raised Fist0
HLDsystem_design~20 mins

Notification system design in HLD - Practice Problems & Coding Challenges

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

In a notification system, users can choose how they want to receive notifications (email, SMS, push). Which component is best suited to manage these preferences?

ANotification Dispatcher
BMessage Queue
CNotification Logger
DUser Preference Service
Attempts:
2 left
💡 Hint

Think about where user choices are stored and accessed before sending notifications.

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

You need to design a notification system that can send push notifications to 10 million users simultaneously. Which approach best supports this scale?

AUse a distributed message queue with multiple worker services sending notifications in parallel
BUse a single server to send all notifications sequentially
CSend notifications directly from the database triggers
DStore notifications in a file and send them manually
Attempts:
2 left
💡 Hint

Consider how to handle large volumes efficiently and avoid bottlenecks.

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

Which is a key tradeoff when choosing between push and pull notification delivery models?

APush notifications require clients to request updates; pull notifications send updates automatically
BPush notifications reduce server load but increase client battery usage; pull notifications increase server load but save client battery
CPush notifications are slower than pull notifications in delivering messages
DPull notifications cannot be used for mobile devices
Attempts:
2 left
💡 Hint

Think about who initiates the communication and resource usage on client and server.

🧠 Conceptual
advanced
2:00remaining
Ensuring message ordering in a distributed notification system

In a distributed notification system, what is the best way to ensure notifications are delivered to a user in the order they were generated?

ASend notifications from multiple servers without coordination
BStore notifications in a database without timestamps
CUse a single partitioned message queue per user to preserve order
DDeliver notifications randomly to reduce latency
Attempts:
2 left
💡 Hint

Think about how message queues can preserve order per user.

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

Your notification system logs every notification sent. Each log entry is 1 KB. If you send 1 million notifications per day and keep logs for 90 days, how much storage do you need?

AApproximately 90 GB
BApproximately 9 GB
CApproximately 900 GB
DApproximately 9000 GB
Attempts:
2 left
💡 Hint

Calculate total entries times size per entry.