Design a Personalized News Feed Ranking System
Design the machine-learning and serving system that ranks a personalized social news feed. For each request, the system must retrieve eligible posts, score and order them using user, content, and context signals, enforce freshness and diversity constraints, and return the feed within a strict latency budget. Explain how labels and objectives are defined, how features and training data are produced, how models are evaluated offline and online, how feedback is incorporated safely, and how the serving path behaves during partial failures or model regressions.
Design Facebook Messenger
Design a messaging service for one-to-one and group conversations. A user may be signed in on several devices, move between reliable and unreliable networks, and expect messages to arrive quickly without losing conversation history. Group chats can range from a few friends to very large communities. The product should support sending, receiving, and catching up after time offline. Clarify the delivery and consistency guarantees you want to provide, then walk through the system.
Design Instagram (Feed & Photo Upload)
Design a system like Instagram that allows users to upload photos, follow other users, and see a newsfeed of photos from people they follow.
Design Uber
Design a ride-sharing service like Uber that connects riders with nearby drivers and facilitates the entire ride experience from requesting to completion.
Design Web Crawler
Design a web crawler that extracts text data from the web and stores it with the goal of using that text data to train a large language model (LLM) like ChatGPT. The crawler needs to run for only 5 days to collect this training data.
Evaluation Framework for Ads Ranking
Design an evaluation framework for an ads-ranking system. It should help teams decide whether a ranking change improves user and advertiser outcomes without violating product, marketplace, privacy, or safety guardrails.
Typeahead Suggestion / Autocomplete Design
Design a typeahead (autocomplete) service that returns the top-3 suggestions for the prefix the user is typing. Suggestions should be ordered by a combination of popularity (frequency) and recency. The system must provide real-time responses with very low latency, scale to large traffic, and be highly available.