Mobile news apps (Apple News, Google News, Flipboard, NYT app) sit at an unusual intersection of feed personalization, time-sensitive push delivery, offline reading, and ad-supported business models. The interview tests whether you understand the constraints and the engineering tradeoffs.
Functional requirements
- Personalized feed of news articles
- Topic and source preferences
- Breaking-news push notifications
- Offline reading of saved or downloaded articles
- Search
- Comments and reactions
Architecture
Three pipelines: ingest (publishers send articles), ranking (personalization), delivery (feed + push).
Ingest
Publishers feed articles via:
- RSS / Atom feeds
- Direct API (newsroom-side push)
- News aggregator partnerships
Articles are normalized: extract title, author, body (HTML), images, publish time, topic tags. Stored in a content database.
Personalization
Server-side ranking. Inputs:
- User’s explicit topic preferences
- User’s historical reading behavior
- Article freshness
- Article popularity (signals from other users)
- Source diversity to avoid filter bubbles
Output: a ranked list per user. Cached for sub-second serving.
Push notifications
Two types:
- Editorial breaking news: human-curated, sent to broad audiences
- Personalized: ML-decided per user — “you read X yesterday; here is a follow-up”
Editorial pushes have strong social impact (they wake millions simultaneously). Personalized pushes have lower impact but tighter relevance.
Offline reading
User saves articles for offline. Implementation:
- Article body downloaded as HTML/text
- Images downloaded
- Stored in SQLite + filesystem
- Render in WebView with offline shell CSS
Many apps auto-download top stories overnight on Wi-Fi for “morning brief” reading on commute.
Article rendering
Native rendering for performance and consistency:
- Strip publisher CSS; apply your own typography
- Lazy-load images
- Embedded videos render in native players
- Reader mode is the default UX in 2026
Live updates
Breaking news scenarios — live blog of an event. Client subscribes to an SSE or WebSocket stream for the article. Updates appear without manual refresh.
Battery and data
- Background sync only on Wi-Fi by default
- Image quality down-tuned on cellular
- Auto-play video off by default to save data
- Push frequency capped per user to avoid annoyance
Ads
Most news apps are ad-supported. Architecture concerns:
- Ad SDK loaded conditionally based on consent (GDPR, CCPA)
- Ad rendering must not block content rendering
- Track ad viewability for accurate billing
Frequently Asked Questions
How does Apple News handle the difference between subscribed and free content?
Subscribed publications open in full reader; free articles may show only summary with link to publisher. Per-article paywall logic governs UX.
Why are some articles missing from my personalized feed?
Personalization filters can over-prune. Most apps offer a “less personal” view (chronological, by source) as a fallback.
How is breaking news different from regular?
Editorial classification at the publisher; aggregator may amplify based on velocity and corroboration. Push delivered with high priority.