Press "Enter" to skip to content

System Design Interview – Notification Service

Topics mentioned in the video:
– Functional (create topic, publish message, subscribe to a topic) and non-functional (high scalability, high availability, high performance, durability) requirements.
– High-level architecture of a notification service.
– FrontEnd service host components (reverse proxy, local cache, logs and metrics agents).
– Metadata service, distributed cache, consistent hashing ring, gossip protocol.
– Storage for messages: SQL/NoSQL database, in-memory store, distributed message queue, stream-processing platform.
– Message sender service, thread pool, semaphore.
– Duplicate messages, retry policy, message order, security, monitoring.

Inspired by the following interview questions:
Amazon (
Flipkart (
Microsoft (
Uber (

Leave a Reply

4 Comment threads
0 Thread replies
Most reacted comment
Hottest comment thread
0 Comment authors
Deok-Hwa SeoArpita ChattopadhyayTed WuVinicius Baggio Fuentes Recent comment authors
newest oldest most voted
Notify of
Vinicius Baggio Fuentes
Vinicius Baggio Fuentes

I had an interview at A Very Big Company that asked me a similar question and this video was extremely helpful.

Ted Wu
Ted Wu

This is somehow the best system design tutorial I've ever seen. Keep doing bro!

Arpita Chattopadhyay
Arpita Chattopadhyay

In the temporary storage, I am thinking Apache Kafka might be a good fit, since it can also handle streaming data

Deok-Hwa Seo
Deok-Hwa Seo

Thanks for the detailed explanation.