Design a large-scale news app with caching
RipplingSoftware Engineer · OnsiteLast updated
This question evaluates a candidate's ability to design a scalable news application with emphasis on caching strategies and cross-device read-state synchronization, assessing skills in system architecture, API design, data modeling, distributed caching, and consistency handling.
Scenario
Design a simplified news app (mobile + web) for a very large user base.
Users can:
- open the app and see a personalized news feed
- open an article to read it
- see which articles are read/unread
The interviewer wants you to focus on read tracking and caching.
Requirements
- Feed API: return a ranked list of articles for a user.
- Article API: return article content (text + images) quickly.
- Read state:
- when a user reads an article, it should eventually show as “read” on other devices
- read state should not be lost if offline briefly
- Scale assumptions:
- 50M DAU, peak 1M requests/sec globally
- P95 latency: Feed < 200 ms, Article < 300 ms
Deliverables
- APIs and data model
- Caching strategy (client, CDN, server)
- How you store and sync read state
- Handling invalidation, personalization, and hot content
Solution walkthrough is for members
Get the full walkthrough with reference code and complexity analysis, plus Kitty Coach at 300 messages a day. Hints, the code runner and community answers stay free.