How to Navigate Your First Technical Interview

Tips for preparing and acing your first technical interview.

Technical interviews can be intimidating. While most job interviews assess your soft skills, candidates going into a software development or engineering role will be asked to test their coding and critical thinking abilities right on the spot. What’s more, there’s no master list of questions you’ll be asked to answer in a technical interview. Acing a technical interview requires a strong understanding of your fundamentals, great problem-solving skills, and the ability to stay calm and clearly convey your thinking to the interviewer.

So how do you prepare, and what’s the best way to approach the actual interview?

While the technical interview may seem nerve-wracking, there are some things you can do ahead of time to help you prepare for success, both before and during the interview. Below, we’ve compiled some guidance on how to approach your preparation and to make the entire process feel a little less daunting.

Before the Interview

Start Preparing Weeks In Advance

In order to go in as prepared (and confident) as possible, you’ll want to start prepping ahead of time. Books such as Cracking the Coding Interview, Elements of Programming Interviews, and  Programming Interviews Exposed are good resources to help you brush up the basics of data and problem solving and give you an idea of the types of questions that could be asked. For example, Cracking the Coding Interview looks into the hiring process of top tech companies, and then goes into an analysis of 189 coding questions. Elements of Programming Interviews teaches potential candidates all about solving data structures, and contains over 300 questions to practice and learn from. Programming Interviews Exposed is the most introductory of the three and gives more logistical advice on how one should apply and how the hiring process works, as opposed to jumping right into practice questions and analyses.

Master the Fundamentals

Many of the questions your interviewers will ask come down to the fundamentals of programming (AKA data structures, algorithmic complexity analysis, class design, etc) so it’s important to feel confident with the basics. Fundamentals are crucial because they are the building blocks to everything you’ll need to know (and do), despite changing technology. All in all, everything comes back to the basics, and the only way to succeed and stay relevant is to master them.

“Think of fundamentals as the tools in your toolbox. They’re going to stay the same no matter what awesome new technology comes out…You should be comfortable discussing things like strings, arrays, basic syntax, data types, linked lists, trees, graphs, stacks, queues, and hash tables,” writes engineer Ahik Mandahar in an article for The Muse.

If you’re looking for additional resources to help you ace the fundamentals, websites such as GitHub and CodeSignal have helpful guides, so you can feel confident enough to take on any task. If you’re looking to brush-up on problem solving specifically, check out HackerRank, where you can do practice problems online. Pro tip: Be sure to time yourself to get an idea of how long certain problems take you, as you won’t have unlimited time in an interview.

Practice Thinking Out Loud and Writing Out Your Code on a Whiteboard

Many companies will ask you to write out code on a whiteboard while you’re solving a problem – if you don’t have any practice coding outside of your laptop, it can be jarring to write code by hand. Duck into an empty classroom and practice writing out the code on a chalkboard or whiteboard so the setting doesn’t trip you up.

“This is the most traditional type of technical interview and is where you are asked to solve an algorithm question using a marker and a whiteboard,” says Avi Flombaum, Co-founder and Dean at Flatiron School in an article for Forbes.  “You might be asked a question like: ‘Given an array_of_ints, find the highest_product you can get from three of the integers.’ Then you stand at a whiteboard discussing the right solution with your interviewer while writing out the code by hand. Interviewers want to see that you can code the solution without a computer and communicate effectively.”

Another helpful tip: Practice narrating your thought process out loud while you write out the code. Your interviewer will want to hear how you think through problems and why you’re making certain decisions, so if you’re not used to thinking out loud, it might trip you up in an interview. Minimize your discomfort and let your skills shine by practicing this interview format ahead of time.

Prepare a Github Portfolio and Get Comfortable Talking About Your Past Projects

By the time you have a technical interview, you should have a built-out GitHub portfolio so you can easily access your projects and files. In the interview, be prepared to talk about any projects you’ve listed on your resume or application in depth, including if you worked with a team, the kinds of technology you used, and any specific lessons you learned from the project. To make sure you’re as specific as possible, it’s helpful to review everything that went into your past projects before the interview.

During the Interview

If You’re Confused, Ask Questions

If someone asks you to do something you’re not sure how to do, or just don’t know, don’t panic. You can always ask the interviewer to explain it to you. “If they ask you a technical question, make sure you understand it before diving in and answering. If you don’t know the answer, that doesn’t mean you’re dead in the water,” Tracy Cashman, Talent Acquisition Partner at Rapid7. However, if you’re still stumped, come clean and be honest with the person interviewing you. Cashman suggests saying something along the lines of, “If I was on the job, here is what I would do to find the answer,” and then taking them through your thought process. That way, you’re still demonstrating your problem-solving skills and showing that you’re resourceful.

Communication is Essential

Although the technical interview can be intimidating since it requires solving problems in the moment, it’s also like any other job interview – the company wants to hear from you. “Companies want to see the candidate think in ‘real time,’ and while you may be brilliant at what you do, in an interview you have to be able to communicate this brilliance,” Ed Nathanson, Founder at Red Pill Talent, tells Cio.com. This holds true for an in-person technical interview or a technical phone screen, where you might share your screen with your interviewer and code in real time. That’s why it’s essential to practice thinking out loud – during the interview you can focus on showing off your skills and why you would make a valuable addition to the team instead of worrying if you’re rambling.

All in all, technical interviews don’t have to be scary and intimidating. While unfortunately you can’t anticipate what questions you’re going to be asked, you can familiarize yourself with the fundamental building blocks of all things technical. Go in with your best foot forward by practicing in advance and knowing what to expect ahead of time – you got this.

Back

Opportunity is waiting

It only takes 5 minutes to get connected with
the best employers in the world.

Create a Free Profile

No Cover Letters
Fast Track to Interviews
Hear Back Faster