Facebook | Onsite 2019 | System Design | Menlo Park | New Grad
Anonymous User
4141

I got asked the below question in my onsite with facebook Menlo Park back in Dec 2019.
Position: Research Scientist (= Software engineer for PhD grads) - L4

  • Design facebook chess. How do store all the games and events and player moves? How do you design "undo" if each player can undo their last (or their two last) move(s)? How do you compute and maintain the scoreboard of billions of players? Especially the top 100 (or thousands) games and winners.

Not sure what's a good approach for solving it. Any thoughts? What tables would you keep for this question? what would you draw? how would you sort billions of users and make the top winners available at all times?

**In general, what's the best way to improve my system design skills and prepare for interviews in about 3 weeks? I'm not very experienced in it. Any articles, youtube channels or other recommendations would be appreciated.
**

Comments (2)