Code RoomNotification preferences fan-out
HardPrep Room Coding #3677

Notification preferences fan-out

System designDistributed systemsMid–Senior~45 min

Design a notification preferences + fan-out service for a collaboration app with ~3M users. Events (mentions, comments, assignments) trigger notifications across channels (in-app, email, push, Slack). Users set fine-grained preferences (per-channel, per-event-type, quiet hours, digest vs immediate, mute specific threads). A single event can fan out to many recipients (e.g. a comment on a doc watched by 500 people). Requirements: respect preferences exactly, dedupe duplicate triggers, batch 'digest' notifications, and deliver immediates within seconds.

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.

Clarify5:00 left
Estimate5:00 planned
Design15:00 planned
Deep dive12:00 planned
Failure8:00 planned
0:00
Which questions mattered is sealed until you submit. Telling you now would just be handing over the edge cases.