Interview Prep Cheat Sheet

This is my cheat sheet to prepare for interview loops with US companies. Updated in 2021.

Coding

  • Leetcode, leetcode, leetcode, get familiar with standard library, programming language and algorithm implementation

    • Do about 50 questions easy and medium across all types of problems
    • Pick one programming language and focus on knowing it well, I use Python
  • Be familiar with your text editor and ready to share your workflow, with so many people being remote, it is now common to have to do that

Architecture interview

Behavioral and experience interviews

  • Prepare the situations you want to talk about in behavioral and experience interviews, don't come up with situations on the fly, chances are you will pick the one that are not the most helpful to discuss
  • Have presentations of the most important projects of your career ready to present
  • It is a common mistake to say too much when talking about a situation or your experience. It can get boring for the interviewer who expects to cover many questions. If you struggle with that, look into the STAR model and write down the situations you want to talk about using that framework.
  • In fact, have a spreadsheet ready with your situations:

    | Theme               | Situation                      | STAR Model description |
    |---------------------+--------------------------------+------------------------|
    | Conflict at work    | Working on project XYZ in 2020 | ...                    |
    | Leadership          | ...                            | ...                    |
    | Giving feedback     | ...                            | ...                    |
    | Receiving feedback  | ...                            | ...                    |
    | Missing a deadline  | ...                            | ...                    |
    | Reprioritizing      | ...                            | ...                    |
  • Those interviews impact the leveling, especially at higher level

Attitude, mindset and remarks

  • Leetcode hard questions are really hard, if you get asked one, and you haven't prepared it, it is extremely difficult to solve it
  • Nowadays (2022), fewer and fewer companies ask hard algorithmic questions, ten years ago, most did
  • You may get an offer after failing one interview, especially if it is coding, failing two is generally not okay. Invest in your resilience.
  • When you interview, take note of what you learn about the company, ask insightful questions and do some soul-searching: is the role going to work for you? Will you enjoy it?
  • Communication is just as important as technical skills, it isn't so much about showing your skills than it is about matching what the interviewer expects
  • Build a relationship with your recruiter and be honest with them, they are here to help you