Multi-channel notification platform

DesignMedium40 min

Your task

Design a multi-channel notification platform (push, email, SMS, in-app) for a 100M-user product where dozens of internal services emit notification-worthy events. Requirements: never send the same logical notification twice, honor per-user channel preferences and quiet hours/timezones, cap each user at a sane volume so we don't spam them, and degrade gracefully when a downstream provider (e.g. APNs or an SMS gateway) is throttling. Walk through the pipeline.

It covers

  • Dedup
  • Rate limiting
  • Multi channel