Member-only story

Dissecting ByteByteGo’s Notification System Design Solution

A closer look into the proposed system design outlined in the solution with an effort to extract the important lessons

Basil A.
7 min readNov 19, 2023

In this article, I refer to the Notification System Design solution by ByteByteGo, as detailed at https://bytebytego.com/courses/system-design-interview/design-a-notification-system. It is a paid subscription, but subscribing is not necessary to understand the lessons discussed in this article.

For the rest of this article I’ll go ahead breaking down the design decisions in a Q&A format…

Why is there a separate queue for each notification type?

For each notification type a separate queue has been introduced along with dedicated workers to process the messages for that queue. This was necessary and preferred over a single queue for all notification message types which aims to avoid issues when a third-party notification service (e.g. Twilio) becomes no longer available for a short time. This might flood the single queue with numerous SMS notification messages that would result in affecting other types of notifications waiting on the same queue but never reaching their workers due to Twilio being down.

Would there be any cases that would require further segregating queues?

--

--

Basil A.
Basil A.

Written by Basil A.

A Software Engineer with interests in System Design and Software Engineering done right.

No responses yet