How to prepare for the coding interview
Mastering the coding interview is a skill that you need to practice
You have the skills that it takes to build amazing websites, complex applications, or fast and reliable APIs. You want to land your dream job as a developer, so you start taking interviews, and all of a sudden, you question yourself if everything you were learning was right and whether you are ready to take on a job.
I think we have all been there. Interviewing as a developer is challenging, and it’s a skill on its own as often interview questions cover topics we don’t usually work with, as perhaps web developers. So what can we do to overcome the interview and get the job? 2 pieces of advice, take interviews to get practice, join a site that will help you prepare specifically for the skills you need to ace the interview.
Interviews are like programming: you need to practice, practice, practice to become better at it.
Code interview
Hiring developers or software engineers is a process that is somewhat different from other fields. Usually, at least two types of interviews a candidate must go through before getting an offer. Those consist of the classical interview with HR where both parties introduce themselves and explain what the value proposition is, what the company has to offer, and the developer’s experience. The second interview type is a technical interview or a coding interview.
In this second type, you as the candidate need to prove to the hiring side that you have the skills necessary to succeed in the company, at least in theory. In practice, it is often the case that the technical interview goes more about computer science theory and resolving algorithms that you hardly will ever use for the type of work they do. I don’t entirely agree with this method, but it’s kind of like an industry standard. Another common approach is the coding case, a small project you can work from home and submit. During the interview, you usually need to defend your work and explain the design or programming decisions you made.
Because those coding cases or the interview questions are often so particular, you need to train them, and good for us, there are plenty of sites that will help you do exactly that.
Today we will review my favorite platforms for preparing for the coding interview and land your dream job.
Note: I have no affiliation with any of the sites below, and the list is in no particular order. They all offer great selections, and you should go with the platform you feel the most comfortable.
AlgoExpert
AlgoExpert is probably my favorite. Although you need to pay to get access to the platform, AlgoExpert provides a rich experience, with a tailored set of questions and challenges with video explanations, solutions, and a fantastic interface.
Here are some of the features of the platform:
- 115 Hand-Picked questions
- 70+ Hours of Video Explanations
- Data Structure Crash Course
- Support for 9 different programming languages: JavaScript, Python, Swift, C++, Java, C#, Go, Kotlin, and TypeScript.
- Code Execution Environment
- Space-Time complexity Analysis
- Mock Coding Interview: The best way to practice code interview is going through the same experience. AlgoExpert lets you pair up with other people to practice with mock interviews.
CoderByte
CoderByte is another platform that helps you to prepare for coding interviews. CoderByte comes with a prep material that helps you to get a job in leading tech companies.
CoderByte offers three different interview kits:
- Algorithm and data structure kit
- Google interview prep kit
- React interview prep kit
Here are some of its features:
- More than 300 challenges to practice
- Common challenges among the most important companies in tech
- Code Execution Environment
- It comes with a community to discuss solutions
- Mock interviews
- Free challenges + subscription
LeetCode
LeetCode is one of the most popular platforms with over 1750 questions to practice and a vast community and experts. One of the coolest things is the option to filter challenges by companies like Google, Netflix, Facebook, and practice over challenges commonly asked at those particular companies.
Here are some of the features:
- Filter by company
- It supports a huge list of programming languages
- Free + subscription
GeeksForGeeks
GeeksForGeeks slightly different from the rest as it is powered mainly by user-contributed questions, similar to hacker rank. It catalogs questions by company, which makes it super interesting.
The GeeksForGeeks team also write articles to teach various programming concepts. It is a good source of many programming questions but hard to find a good question.
Cracking the Coding Interview by Gayle Laakmann McDowell
I know, it’s not a platform, but it’s a great book that will help you a long way into mastering the coding interview. The book features a collection of frequently asked questions by the top tech companies covering topics such as Big O notation, data structures, algorithms, dynamic programming, object-oriented programming, etc.
The book’s author tells her story with interviews, working in giant tech companies like Microsoft, Apple, and Google.
Buy it on Amazon
Conclusion
Getting an offer from companies is a different experience than working as a developer, and thus, we must prepare and practice this skill to land our dream jobs. These sites are similar and overlap a lot in features, so don’t focus too much on which platform to join and learn, use the one where you feel more comfortable and practice, practice, practice. It’s the only way to get better.
Thanks for reading!