So you’re preparing for your coding interviews?
Great! You’re in the right place.
Back in 2015 when I was preparing for my coding interviews, there was basically one option for interview prep: Cracking the Coding Interview.
Now things are totally different, though.
There are blog posts, books, courses, coaches, and so much more. So where do you even get started when you have an interview coming up?
If you’re here, my guess is that you have an interview coming up pretty soon and you’re trying to figure out the best way to prepare.
Well I’m glad you’re here. There’s so much info out there and so much of it is crap. On this page, I’ve compiled a set of the most valuable resources out there to get you started on your interview prep journey.
No matter what you’re looking for, I’ve got you covered below. We’ve got:
Hi, I'm Sam!
Back in 2016, after going through my own interviews, I founded Byte by Byte.
Since then, I’ve helped hundreds of students land jobs at top tech companies like Google, Facebook, Uber, Amazon, Snap, and more. I’m so excited to help you on your interview journey!
Where to Start Your Coding Interview Prep
Are you brand new to coding interviews? Feeling pretty rusty?
This is a great place to start.
Coding interviews are a skill. Just because you’re a great engineer doesn’t mean you’re going to be a great interviewee. In fact, unless you’ve practiced for your interviews (or done competitive programming), I’ll bet that you can use a bit of work.
When learning any new skill, one of the absolute most important parts is having a clear roadmap of where you’re going. You need to know what success looks like so that you can develop a path to get there.
Before going any further, I’d highly recommend that you develop an interview roadmap:
Coding interview roadmap: How to develop a foolproof interview study plan
Most people go into their coding interview prep without a plan. They just start going and hope that they will ultimately get where they want to go. However, you can easily cut your study time in half by making a clear plan and following it. This article will show you how to do just that.
Coding interview roadmap: How to develop a foolproof interview study plan
Most people go into their coding interview prep without a plan. They just start going and hope that they will ultimately get where they want to go. However, you can easily cut your study time in half by making a clear plan and following it. This article will show you how to do just that.
Once you have your roadmap, it’s critical that you know how to study properly and also what to expect from your interviews.
One of the biggest mistakes that I see people make at Byte by Byte is that they don’t really know how to effectively approach their studying.
They spend all this time.
Day after day after day.
And make 0 progress.
Don’t let this be you! These two posts will give you an overview of how to study and exactly what to expect from your interview.
The only 6 types of questions you need to know to ace any coding interview
There are six common question formats for coding interviews. If you are prepared for those, you'll be ready for 90%+ of coding interviews.
How to study data structures and algorithms to rock your interview
When studying for interviews, most people focus on practice problems. However if you skip studying data structures and algorithms, you're missing out.
The only 6 types of questions you need to know to ace any coding interview
There are six common question formats for coding interviews. If you are prepared for those, you'll be ready for 90%+ of coding interviews.
How to study data structures and algorithms to rock your interview
When studying for interviews, most people focus on practice problems. However if you skip studying data structures and algorithms, you're missing out.
Finally, before we move on, I want to show you exactly how to separate yourself from everyone else who fails their interviews over and over again.
After all, there’s one thing that separates those who succeed from those who fail.
It’s not how much you know.
It’s not how likeable you are.
It’s simply knowing what to do when you get stuck.
After all, everyone gets stuck at some point during their interviews. That’s totally normal. But the thing that separates those who succeed from those who fail is that the great interviewees know how to get unstuck.
In this post, I will show you my top 10 techniques for getting unstuck in your interviews:
10 ways to get unstuck and never fail another coding interview
It happens time and again. People fail coding interviews because they don’t know what to do when stuck on a problem. Developing a clear plan of attack helps you to succeed at any whiteboard coding interview.
10 ways to get unstuck and never fail another coding interview
It happens time and again. People fail coding interviews because they don’t know what to do when stuck on a problem. Developing a clear plan of attack helps you to succeed at any whiteboard coding interview.
Now that you have all of the basics, let’s move on to the specific topics that you need to know for your interview.
Coding Interview Prep Topics
There are a ton of different things that you need to know for your coding interview. And unless you’re currently a student, my guess is that you probably haven’t touched them in a while.
That’s totally okay, but let’s make sure that you’re up to speed on everything.
In this section, I’ve shared links to the best articles I know on each topic area.
However, all topic areas are not created equal. In fact, when we’ve studied the questions asked at different companies, we’ve found a dramatic imbalance in the sorts of questions they asked.
If you don’t have time to do everything, these are the topics that you should focus on.
These are the most important topics that you should be prepared for for your interview.
Protip: People usually assume Arrays and Strings are simple. However, oftentimes they’re not as easy as you think, so don’t skip over them.
Once you’ve mastered these core topics, it’s also worthwhile to move onto some of the less common topics. These are just in alphabetical order because you should focus your attention on your weakest areas:
- Bit Manipulation
- Hash Tables
- Linked Lists
- Object Oriented Design
- Queues
- Sorting and Searching
- Stacks
- System Design and Scalability
Above anything, make sure that you dedicate adequate time to studying these topics. One of the big mistakes people make when interviewing is not making sure that their foundations are solid.
Don't do another coding interview…
…Until you've mastered these 50 questions!
Coding Interview Prep by Company
Have an interview coming up at one of the FAANG companies? That’s Facebook, Apple, Amazon, Netflix, and Google (and usually Microsoft too, go figure).
Even if you’re not interviewing at any of these companies, they have truly become the model for so many different companies, that it can be super valuable to learn about how they conduct their interviews.
Generally speaking, I don’t recommend dedicating a lot of time to company-specific interview prep. However, if you have already spent a good amount of time preparing, you may find these resources useful.
- Google Interview
- Amazon Interview
- Facebook interview
- Apple Interview
- Netflix Interview
- Microsoft Interview
If you don’t see the company you’re looking for here, I also highly recommend Glassdoor.com. They have a ton of information on most companies you will be interviewing for and you can learn a lot about the interview processes.
Coding Interview Resources
Finally, I want to share a selection of resources with you that you may find helpful. There are so many different options out there, but here are a few that I personally stand behind and recommend.
These are some favorites, but you can find our full list of resources here.
Note: Some of these links are affiliate links, so I may earn a small commission (at no cost to you).
Coding Interview Mastery
If you're preparing for coding interviews, this is your one-stop-shop for your interview prep. In this premium course you will learn a step-by-step framework for solving any coding interview problem, even ones that you've never seen before.
I know you're probably busy, so I've built this course to fit into your schedule. The course takes just 1-2 hours per day and everything is laid out for you in step by step exercises.
Coding Interview Mastery: System Design
Ready to start nailing your system design interviews? Then this is the course for you. In this program, you'll learn step-by-step strategies for tackling any system design problems, as well as all the tools you need to know to be successful.
This is my personal all-time favorite book on interviewing. It is the book that I used back in the day when I was preparing for my interviews and it is still super relevant today.
Because this has become the defacto coding interview bible, practice problems from Cracking the Coding Interview come up frequently in real-world interviews.
If you would like a slightly more challenging and technical book, many people also like/prefer Elements of Programming Interviews.
Effective Java
This is a coders bible essentially. It comes in multiple coding languages, but you want to develop your skills in Java, this is a must-read. This goes over language specific coding techniques, and skills to create a more robust, efficient code.
Clean Code
This is a fantastic book that goes over how to write code well and how to do it properly. Robert makes software development easier to understand, and is especially useful if you do not have a software development background.
Exponent
If you're looking for a great collection of reasonably priced resources, Exponent is a great option. With monthly and yearly subscription options and access to a variety of training for software engineering interviews, product management interviews, and more, it's worth checking out.
Interview Cake
Interview Cake is a great online course and collection of resources for preparing for your interviews. The team over at Interview Cake has worked really hard to keep the content as concise and relevant as possible.
Check out the review that I did of Interview Cake here and you can get 50% off your purchase if you use our link.
Mock Coding Interviews
If you’ve never interviewed before, mock interviews can be an incredibly valuable way to test out your interview skills and make sure that you’re on the right track.
I don’t recommend that you overdo it on the mock interviews. There is very much a diminishing return.
However, I highly recommend that you do at least a couple.
There are several options for mock interviews these days. You can certainly find a friend and interview each other, but if that isn’t an option, I’d recommend one of these:
- Interviewing.io
This is currently the best option for mock interviews. They offer both free peer-to-peer mock interviews as well as paid mock interviews with engineers from top companies. I highly recommend these professional interviews if you have the budget. - Pramp
Pramp is a free option that offers peer-to-peer mock interviews. The advantages here are of course the price and also that you get to learn from being on the other side of the table and acting as the interviewer.
Definitely try out these different mock interview services and see which works best for you.
And that’s all for now!
We’ve covered a ton of stuff and it will probably take you a while to get through it all. Take your time. There’s no rush.
If you found this useful, make sure that you download our free guide below and I’ll send a bunch more great content your way. And I’d really appreciate you sharing with any of your colleagues.