Resources to learn solving system design interview problems

Nadbor picture Nadbor · Feb 25, 2014 · Viewed 27.7k times · Source

System design questions are a type of questions that tech companies tend to ask in the interviews in addition to more common algorithmic and knowledge based questions. This term covers both abstract Object Oriented Design

sketch a class diagram for the game of monopoly

and more down to earth performance oriented questions like

How would you design an event logging system for a large Facebook game?

An increasing number of these questions touches on topics of concurrency and distributed computation nowadays. The problem with these types of questions is - good resources are hard to find. Unlike algorithmic questions there are no online judges that tell you immediately whether you are doing things right. Questions posted on sites like careercup come with no answer or an unreliable one. The books that there are that deal with system design are too broad in scope to be useful for interview prep. So: how do you prepare for system design questions short of designing systems for a couple of years? Are there tutorials online? Question - answer (explanation) - type guides?

Answer

fersarr picture fersarr · Jun 3, 2014

I found this answer in Quora which has some very useful documents, videos and articles. Both answers are really good:

http://www.quora.com/Job-Interviews/How-should-I-prepare-system-design-questions-for-Google-Facebook-Interview

Also:

How to Rock a Systems Design Interview

How do I design an arbitrary system in an interview?

System design - This is a very complete step-by-step guide/tutorial

System Design Tutorials - A collection of commonly asked System Design Interview Questions with Solutions