SoloMedium9m

The Silent Push That Woke 50,000 Apps at 3am

#ios-critical — Apple throttled background execution for 24 hours

VP Engineering: Marketing sent silent push (content-available: 1) to 50,000 users at 3 AM. Each app downloaded 15MB in the background. Apple disabled background execution during the holiday sale.

The trap: Silent push abused as bulk delivery — no size limits, no device state checks, no batching.

Your task

Fix `handleSilentPushResponsibly()` in `PushNotificationHandler.swift`: Low Power Mode guard, manifest for large assets, schedule heavy downloads, lightweight Apple metrics.

Book: push wakes the app · Prod: 15MB × 50,000 devices = battery disaster + Apple throttle.

Skills you'll prove

swiftiospush-notificationsbackground-executionbgtaskschedulerbatterybook-vs-prod

Interview Tip

When asked about push notifications or background execution, say: "Silent push notifications (content-available: 1) are not for delivering content — they are for NOTIFYING the app that content is available. Apple strictly limits background execution. I fixed an incident where marketing sent a silent push to 50,000 users that triggered a 15MB download per device. Apple detected the battery drain and disabled our background execution for 24 hours. The fix: silent push delivers a tiny manifest (<1KB), and the actual download is scheduled using BGTaskScheduler with constraints for charging and WiFi. Keep CPU under 5 seconds per wake, never download more than 1MB, respect Low Power Mode, and batch users — do not wake everyone at once."

Browse freely — sign in when you're ready to open a ticket and prove your skills.