Master The Coding Interview

This production is focused on helping you get through the grueling interview process at larger tech companies like Google, Microsoft, Facebook, Amazon and more. Learn the skills and techniques to survive the most grueling interviews in the world. The questions are annoying, but the jobs are worth it.


Let's Get Started!

This is a quick introduction to what this production is all about and what (I hope) you'll learn. Please watch it. There are some supplies you'll need to get and some mental space you'll need to clear if you're to get the most out of this production.

11 minutes


Review: Big-O Notation

It's a thing you'll need to know if you plan to get through any interview. It's actually quite useful and in this post I'll hopefully make the case that's it's simple as well.


Review: Data Structures

Let’s review data structures! It’s fun and exciting! In this section you’ll review and then build your very own data structures along with me! I’ll be using JavaScript to code mine, but feel free to use whatever language you like.

19 minutes


Review: Algorithms and Strategies

Now the fun starts! We have our data structures and now we need to focus on the algorithms we’re likely to be asked about in an interview. But that’s not enough! What you really need to do is to be able to tease out the strategy that you’ll need to use in combination with your data structures and algorithms. That will help you answer almost any interview question.

17 minutes


Your Interview Mindset

You're not going to make it through this section unless you have the right frame of mind. Simply wanting a job isn't enough - you need to calm yourself and focus.

6 minutes


Getting Past the Screener

Before you get to the white board you'll likely have to pass an introductory screening interview - a short call (or in person meeting) to suss out what you know.


Databases: How Would You Implement...?

Screener questions tend to have a bit more broad and, typically, based on your experience... sometimes not. Think about how you would answer this one about databases.


JavaScript: What Time Is It?

Sometimes a potential interviewer will 'cosplay' with you - pretending that you work at the company and seeing how you might solve one of their realworld problems.


Understanding the Mechanics of The Interview Question

Don't hate me... and PLEASE don't skip this video. Let's walk through Fibonacci together as a way of understanding how interviewers will flex and extend a single question to dig into your brain.

12 minutes


Practice: Stock Price Calculation

This is a real interview question that comes straight from Amazon. You'll be writing this one by hand so remember your strategies.

20 minutes


Practice Question: Product of All Numbers But This

A straightforward problem that, at first, seems daunting - until you break it down and apply the strategies you know.

22 minutes


Practice Question: Smallest Range of K Lists

This is a tough one and you might struggle with it some. If you do, practice speaking aloud to get help from the interviewer.

22 minutes


Jon Skeet: Creating a C# Linter

Another traditional question: create a linter for X language. This is more about parsing a string and remembering where you are within it.

19 minutes


Jon Skeet: Falling From Great Heights

Not all interview questions have to do with code - some are purely logical, designed to see how you would try and solve a really, really hard problem. Skeet couldn't figure this one out...

37 minutes


Jon Skeet: Binary Tree Troubles

It's a rule of interviews: 'ask a binary tree question' and that's exactly what I do in this video with Jon. Traversing in different ways, trying to balance along the way.

38 minutes


Jon Skeet: Creating a Queue from Scratch

This is another very popular question from larger companies, and requires you to be familiar with linked lists, arrays and stacks.

34 minutes


Jon Skeet: Anagram Checker

Let's end things with one that's a bit simpler - creating a string walking function that evaluates anagrams.

18 minutes