Ch 9: System Design and Scalability Flashcards

1
Q

System Design and Scalability Questions:
General Notes

A
  • May seem intimidating, but can be some of the easiest questions
  • Usually not many “tricks” or “gotchas”
  • Designed to see how you would perform in a real world scenario
  • These questions are largely about the PROCESS rather than the ultimate design
  • Ask Questions
  • Engage the interviewer
  • Discuss trade-offs of design decisions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Handling System Design Questions
(8 Points)

A
  • Communicate
  • Acknowledge interviewer concerns
  • Drive
  • Use the whiteboard
  • Go broad first
  • Estimate when necessary
  • Be careful about assumptions
  • State your assumptions explicitly
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

System Design Questions:
Communicate

A
  • A key goal of system design questions is to evaluate your ability to communicate
  • Stay engaged with the interviewer
  • Ask questions
  • Be open about the issues of your system
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

System Design Questions:
Go broad first

A
  • Don’t dive straight into the algorithm part
  • Don’t get excessively focused on one part
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

System Design Questions:
Use the Whiteboard

A
  • Helps your interviewer follow your proposed design
  • Get up to the whiteboard in the very beginning
  • Draw a picture of what you’re proposing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

System Design Questions:
Acknowledge Interviewer Concerns

A
  • Your interviewer will likely jump in with concerns
  • Don’t brush them off; validate them.
  • Acknowledge the issues they point out and make changes accordingly
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

System Design Questions:
Be careful about Assumptions

A
  • An incorrect assumption can dramatically change the problem
  • Ex: How fresh data must be is an important consideration
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

System Design Questions:
State your assumptions Explicitly

A
  • When you DO make assumptions, STATE them
  • This allows interviewer to correct you if needed
  • Shows that you are AWARE of your assumptions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

System Design Questions:
Estimate When Necessary

A
  • In many cases, you might not have the data you need
  • May need to estimate storage space
  • Use data you DO know to help estimate what you don’t
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

System Design Questions:
Drive

A
  • As a candidate, you should stay in the driver’s seat
  • Obviously, still TALK to your interviewer
  • You should be driving the discussion.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

System Design Step
Step by Step

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly