Push Notifications
Studies in this cluster, in series order. Each one keeps its own URL.
System design
Capacity, trade-offs, and request paths you can defend on a whiteboard.
Push Notifications
6 studies- 1.Push Notifications Architecture — APNs, FCM & Event-Driven AlertsMobile push is a distributed system: token registries, APNs/FCM provider APIs, priority and collapse, rich-content extensions, abuse-safe critical alerts, and a funnel from send to engagement. This hub maps the cluster. In-app realtime and durable buses are cousins — cross-link, do not re-teach.
- 2.iOS Notification Service Extension — Rich Content, Mute Rules & Time BudgetsNSE runs briefly before iOS presents a remote notification. You get a short wall-clock budget to mutate title/body/attachments or apply mute rules. Timeout or crash fail-open: the user still sees the original payload.
- 3.FCM & Multi-Platform Fan-out — Tokens, Topics, Collapse Keys & PriorityFCM is a common fan-out plane for Android (and often a pass-through toward APNs/web). Interviews test token lifecycle, topics vs device multicast, collapse keys, priority, and how your service abstracts APNs vs FCM behind one outbound pipeline.
- 4.Critical & Time-Sensitive Alerts — Interruption Levels, Channels & Abuse ControlsCritical and time-sensitive paths bypass Focus/DND in limited, entitlement-gated ways. Interviews look for product judgment: which events deserve interrupt, how Android channels and iOS interruption levels differ, and how you stop abuse that would get the app removed or all notifications disabled.
- 5.End-to-End Notification Analytics — Send, Delivery, Receipt & EngagementPush without a funnel is flying blind. Senior interviews expect queued → accepted → delivered → displayed → opened → engaged, plus clock skew, attribution, privacy (no PII in payloads), and tracing notification_id across services. Provider accept is not 'the user saw it'.
- 6.Reliability, Dedup & Idempotency — Retries, Provider Receipts & Device StateRetries without idempotency create duplicate banners; provider receipts without token hygiene create silent loss. Persist send intent, keep notification_id stable, classify retryable vs terminal errors, and run a device state machine. Exactly-once bus theory lives in Kafka + idempotency clusters — cross-link, do not re-teach.