You know the algorithms and the architecture. Now you practice performing under interview conditions, because interviewing is its own skill β separate from coding.
Study: Cracking the Coding Interview
The classic resource. Start with the YouTube material first β it's faster and gives you the shape of things:
- Cracking the Coding Interview β Gayle Laakmann McDowell (2012) β the foundational talk from the book's author.
- Cracking the Facebook Coding Interview β The Approach β how to think through problems methodically.
- How to: Work at Google β Example Coding/Engineering Interview β watch a real mock interview play out.
Book alternative: Cracking the Coding Interview, 6th Edition (189 programming questions and solutions).
Start mock interviewing
Reading is not practicing. Run mock interviews β and you can practice these loops with me in the community.
The whiteboard (coding) process
- Know your language and its syntax cold β you don't want to fumble basics while thinking about the problem.
- Ask questions before you start coding. Clarify the inputs, outputs, and constraints.
- Write readable code. Interviewers are evaluating how you'd write code on their team, not just whether it runs.
- Give your brute-force option first, then improve it.
- Be prepared for follow-ups: scaling, Big-O analysis, and extra constraints (offline mode, two simultaneous users, etc.).
The architecture whiteboard
- Draw a black-box diagram β boxes and arrows for the major components.
- Be ready for database design β sketch a data model diagram showing your entities and how their tables relate.
- Walk through it out loud, scaling from few users to many (see the System Architecture chapter).
Behavioral questions
These matter as much as the technical loops. Prepare real stories for:
- What's your biggest failure? Your biggest accomplishment?
- Why should we hire you? How can you help our company?
- What are your goals?
- "Tell me about a timeβ¦" β a conflict with another person, a mistake you made, a time you felt confident in your work.
Have concrete examples ready; don't improvise these in the room.
Practice architecture whiteboarding β for real
Start in a web editor, then move to a physical whiteboard (because that's where the real interview happens):
Then get up and draw on an actual physical whiteboard. Verbally talk through the problem, your questions, and your reasoning as you draw β exactly as you will on the day.
Do this now
Watch the How to: Work at Google mock interview, then do your own: pick a LeetCode problem, stand at a whiteboard (or paper), and solve it out loud β clarify, brute-force, improve, analyze Big-O. Record yourself or do it with someone. When you're ready, book a mock loop with me in the Discord.