Design a News Aggregator
SnapchatSoftware Engineer · OnsiteLast updated
This question evaluates a candidate's ability to design scalable content ingestion and distribution systems, encompassing API-driven fetching, scheduling, deduplication, storage, ranking, freshness guarantees, API rate limiting, and efficient article serving.
Design a news aggregation system that collects articles from many external news sources and serves a unified feed to end users. A key constraint is that the sources do not provide RSS feeds, so the system must periodically call source APIs to fetch new content.
Discuss the end-to-end design, including ingestion, scheduling, deduplication, storage, ranking, freshness, API rate limiting, and how articles are served efficiently to clients.
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.