Baue einen Dienst, den jedes Team mit einem Notification-Typ + Empfänger aufruft, und lass den Dienst Channel, Template, Nutzerpräferenzen und Priorität auflösen. Der zentrale Entwurfszug sind Priority Lanes - ein OTP darf nicht hinter einem Marketing-Blast an 2 Mio. Nutzer warten.
Architektur
Services ─▶ Notify API ─▶ [validate + enrich] ─▶ Kafka topics
├─ otp/txn (high lane)
└─ marketing (bulk lane)
│
┌──── Dispatcher (per lane) ────┐
│ prefs check ─▶ template render │
└────┬──────┬──────┬────────────┘
Push Email SMS In-App
(provider adapters + rate limit)
