Code Room
System designMedium
Question
Design a basic notification sender for an app that needs to send emails (and later SMS) — things like a welcome message, a password reset, or a daily digest. The app should not block while the email is delivered, and a transient failure from the email provider shouldn't lose the notification. Volume is modest, a few thousand sends a day. Cover the components, how the app hands off a notification, and how you handle provider failures.
What a strong answer looks like
Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.
Learn the concepts
Loading whiteboard…
Run or narrate your approach, then ask the coach.