Cracking the technical interview

“Live coding is super stressful. I had to practice it, a lot.”
“You have to show to the interviewer how you think.”
 — anonymous

Meet the final hurdle between you and getting a job. The technical interview.

In most cases, you will find yourself facing a technical interview after an initial chat with HR. An invite to a technical interview is, obviously, good news. It means that you the recruiting manager has shortlisted you. Your chance of getting the job could now be as high as between 1:4 and 1:2. Not bad!

Let’s work on increasing your odds of winning. To do so, you need to master two things: Programming basics and clear communication. And practice.


Step 1: Be on top of the basics

Each company has their own set of technical interviews questions and procedures. Often you will do not one but at least two such interviews. All interviews have one thing in common. They test your ability to think in and apply foundational computer science concepts. There is a lot of good stuff out there to re-familiarize yourself with these basics. We recommend two resources:

  1. Take a look at the Data structures and algorithms course at Udacity. It gives a solid overview of the computer science basics like lists, sorting algorithms, maps, trees, and graphs. And it’s free!

  2. Check out this guide to computer science. The authors give book and video lecture recommendations for nine subjects. Most if not all resources are available online for free. Focus on programming, computer architecture, algorithms and data structures.


Step 2: Communicate clearly

Once you are done with studying up on the basics, move to the next challenge. Communicating your thought process to the interviewer. This matters for two reasons.

  1. The technical interview tends to be too short to complete a given coding challenge. As a result, the interviewer will not always care about your final answer, but about understanding your thought process.

  2. The technical interview is not only about technicalities. It’s an opportunity to build an emotional relationship. Hence all your communication should portray you as technically capable, relatable person that the interviewer would like to work with.

Take a look at this article here. We found their advice particularly helpful. These are their main insights:

  • Talk Out Your Reasoning and Problem Solving Process

  • Solve a Problem in a Technical Interview not once, but twice

  • Don’t Be Afraid to Share Your Opinions, When Applicable

  • Never End an Answer With “I Don’t Know”

  • Always Play for the Team


Step 3: Practice, practice, practice

Technical interviews are hard. Initially, you will very likely fail to get the job. This is because in interviews, practice makes perfect.

Even the best developers we know had to go through interviews with at least ten companies. Don’t expect to win immediately. Instead, expect yourself to learn to make a better impression in the technical interviews to come.

To speed up this trial and error process, take a look at this Udacity video lesson. It’s the final part of the course we had recommended above. Work through the videos here, it takes less than 20 minutes. Then move on to some free practice interviews here.

That’s it for now. We hope you enjoyed the read. Now take action. As always, we are rooting for you.

Keep us posted.

— Your friends at  Imagine .  Thanks to our growing network of recruiters, headhunters, and talents who have provided valuable insights for this article. Special thanks to Youssef Mamdouh and Udacity for contributions to this article.  This post is part of a longer series. For more visit us here:  https://medium.com/imagine-foundation

— Your friends at Imagine.

Thanks to our growing network of recruiters, headhunters, and talents who have provided valuable insights for this article. Special thanks to Youssef Mamdouh and Udacity for contributions to this article.

This post is part of a longer series. For more visit us here: https://medium.com/imagine-foundation