Design a Notification System
A Snapstreak shows an hourglass when two friends are closing in on 24 hours without trading a Snap, and that hourglass rides in on a push notification fired at a precise moment. Hold that image, because it tells you this prompt is two systems wearing one name. Most of the volume is real-time: a friend sent you a Snap, posted to their Story, replied in chat, or showed up on the Map. Those are events that already happened and need to reach one or a few people fast. The streak reminder is the opposite shape. Nothing happened. The system has to notice that something is about to stop happening and fire ahead of a deadline.
Name that split first and the design organizes itself. One path is event-driven and reactive, triggered by a Snap leaving a sender's phone. The other is timer-driven and predictive, triggered by a clock reaching a streak's warning window. They share a back half, the part that coalesces, rate-limits, and delivers, but the front halves have nothing in common. Spend the hour on the streak scheduler and the real-time fan-out, because those are the two halves with a Snap-shaped answer.
- 2 diagrams
- 5 sections
- about 40 min
Premium lessonSnap interview guide
These took digging.
What candidates walked out with, from 20,000+ reports, forum threads behind logins and write-ups in Chinese. Then solved step by step.
100 companies. Checked every month.
Unlock all 100 companies$49 a year · less than $1 a week · Cancel anytime
Snap interview guideKnow what Snap asks before you walk in.
19 coding · 5 system design · 15 behavioral questions
Get their questions first.
InterviewLegend is independent and not affiliated with or endorsed by any company it covers.