Meta System Design Interview: News Feed
Based on questions reported for Meta interviews
The interviewer opens
Hi, and thanks for joining. Welcome to your interview for the software engineer role at Meta. We'll design a system together, with you sketching on the whiteboard on the right of your screen as you talk, and you can pause anytime with the Pause button at the top right if you need a break.
The problem is a news feed, the ranked home feed of a social app, and it's already up in the Problem tab. Please read through it and ask me anything you'd like clarified before you start drawing.
The problem
Design the news feed for a social app: when someone opens it, they see recent posts from the friends and pages they follow, ranked so the most interesting appear first, and can keep scrolling for more.
Must do
- Users create posts: text, photos, video, or a shared link
- Opening the app shows a ranked feed of posts from friends and followed pages
- Users scroll to load more of the feed, page by page
- Feed shows each post's author, content, and like and comment counts
Must hold
- The first page of the feed must load quickly, even at the daily peak
- Posting and reading the feed must stay available if one part is slow