The technical interview is unlike any other job interview: it’s a specialized, rigorous process that tests your coding skills, problem-solving abilities, and personality.
But even though interviewing for a tech job is intimidating (with whiteboard challenges, remote coding challenges, and even full days of onsite interviews sometimes), it’s a lot easier when you know what to expect and have invested time into tech interview prep.
That’s why I wanted to create an epic, comprehensive guide to technical interviews and coding interview preparation for tech newbies!
Disclosure: I’m a proud affiliate for some of the resources mentioned in this article. If you buy a product through my links on this page, I may get a small commission for referring you. Thanks!
In the guide, you’ll learn how to ace a technical interview even if it’s your first one!
We’ll start by covering what a technical interview entails. Then, we’ll get into what you can expect during a technical interview in each stage of the process and what you can do to stand out. And we’ll wrap up with tips on preparing for a technical interview (plus what not to do).
Inside, you’ll also find coding interview tips and advice from technical interview experts who have gone through the process themselves AND conducted tech interviews from the other end of the table. Their first-hand knowledge will teach you how to prepare for a technical interview with real-world considerations in mind.
⭐ Psst! My favorite interview prep tool is Interview Cake ⭐
Note: Right now, many tech companies have temporarily or permanently moved staff to remote work instead. If you’ve been invited for a virtual tech interview, learn about the remote interview process, plus some virtual technical interview tips for success.
What Is a Technical Interview?
Unlike other types of interviews, tech interviews involve challenges and assignments. They’re more like an exam than a typical question-and-answer interview.
Like the phrase “Show, don’t tell,” you have to prove that you have the skills required to do the job, rather than just tell the interviewer that you have them.
Contrary to popular belief, the purpose of the technical interview is not to trick you with riddles, brain teasers, or impossible questions. Instead, it’s to see how you tackle real-world problems–like the ones you might be facing once you have the job!
Tech Interview Basics
So, what happens in a technical interview? Every company is different, but let’s take a look at the average situations you might face.
The stages of a technical interview
Often, tech interviews will come in three basic stages:
📞 1st stage: the technical phone or video screen. Good news! The company liked your resume and wants to talk to you more. This short social & technical screening stage is designed to see if you are qualified and enthusiastic enough to proceed to the next technical round. This interview stage typically lasts 15-30 minutes.
📝 2nd stage: remote coding interview/assignment. Some companies will want to test your coding skills with a preliminary test before having you actually come in. It may be conducted over the phone, via Skype or Zoom, or could be a homework-type assignment. If the company is respectful of your time, a remote coding challenge should only take a few hours.
💻 3rd and final stage: onsite interview/whiteboarding challenge. This is the stage that most people call the actual “technical interview.” It involves an in-person interview with coding challenges you have to complete on a whiteboard in front of the interviewer(s). This could also be done remotely over video conference if the company is remote. Whiteboard interviews typically last 1-2 hours, but the whole onsite technical interview can be several hours to a full day.
As I said before, though, every company’s tech interview process is different. Here are a few examples of how some popular tech companies organize their interview stages:
- Google: initial phone or Google Hangout interview (30-60 min); onsite interview (~4 hours made up of 4 separate interviews)
- Facebook: Initial technical screening (30-50 min); onsite interview (1 full day)
- Uber: initial phone screen (30-60 min); in-person interview (1 full day made up of 6 back-to-back interviews)
How to prepare for a software developer interview also depends on the seniority of the role you’re applying for—e.g. is it more of a junior or senior position? Junior software developer interview questions and technical rounds may not be as intense.
To find more about what the company you’re interviewing with might ask you, or more about their interview process, do a little research. Check to see if the company has a tech blog. Sometimes companies devote entire blog articles to their interview process and what to expect (here’s an example from a company called Asana).
Failing that, Glassdoor has an “Interviews” tab for lots of companies big and small, where current and former employees, as well as people who have interviewed with that company, share the interview questions they were asked and what the interview process was like. For example, here is Google’s interview tab on Glassdoor.
If you’re still coming up short, shoot the recruiter or hiring manager a quick email asking what the interview process will look like. Knowing the exact steps in the interview process can help you figure out how to prepare for coding interviews there.
💬 Who you’ll be talking to at your interview
Of course, this is another factor that will differ from company to company, but you’ll usually be looking at one of two situations based on company size:
- At a startup or smaller company: member(s) of the engineering team, a senior developer, or even the CTO. All interviewers typically have technical experience and may be your future bosses or coworkers.
- At a larger company: recruiter, HR staff, or a member of the engineering team. Some interviewers might have little tech knowledge, and it might not be people you’ll directly work with if hired.
You may even have multiple interviews with different people–perhaps a whiteboarding technical interview with the tech team, a culture interview with HR, an executive interview with the CTO, and so on.
Whatever the case, one good job interview preparation tip is to try researching your interviewers first by looking them up on LinkedIn. It can ease your interview anxiety to put a face to a name, plus you might find something you can connect over (you went to the same university, you have similar interests, or something like that to break the ice).
For more on using LinkedIn to get a foot in the door, check out this guide to getting job referrals even as a tech newbie.
👔 What to wear to your tech interview
One of the most common questions people have during any job interview preparation process is what to wear. Although most tech companies have a relaxed, casual workplace, it’s still important to dress smartly. The general rule of thumb is to dress one level above the company’s dress code (e.g. if the company allows jeans and T-shirts, you should dress in business casual).
To find the dress code, search for the company on social media platforms like Facebook/Instagram, look at their careers page, or consider asking the recruiter/HR staff.
🗒️ What to bring to your coding interview
You don’t really have to bring anything special to a technical interview beyond what you’d bring to a normal one. You’ll probably want to have basics like these:
- Printed copies of your resume
Don’t worry about bringing a laptop or coding samples (unless the interviewers specifically request those items).
❓Types of interview questions you may face
There are a wide variety of questions you may come up against during your tech interview — it’s not all whiteboards and code. Well-rounded software engineers should be able to answer questions that pertain to both their hard and soft skills. Here are a few question types you might be asked.
Behavioral: These questions get at how you’ve acted in a specific situation in the past. These are based on real life situations you’ve encountered. Examples include:
- Tell me about a time when you handled a challenging situation.
- Give me an example of a time when you worked effectively under pressure.
- What happened when you made mistake at work?
Situational: These interview questions deal with hypothetical situations in the future and what you might do in that specific scenario. Example include:
- What would you do if you were unsure about the goals or direction of a coding task?
- What would you do if your coworkers didn’t complete their part of a coding project on time?
- What would you do if your teammate asked you to review their code and it was full of bugs?
Education: You may be asked interview questions that are specific to your education, including if and where you went to college, if you’re self-taught and how you taught yourself, etc.
Technical knowledge: Technical interview questions that assess your real skills and knowledge is the heart of the tech interview. These can be tech oriented trivia-type questions like “How can you make sure that your code is both safe and fast?” or “When do you use polymorphism?”, or questions about the code you write on the whiteboard.
What to Expect When You’re Interviewing
Let’s break down each stage of the typical technical interview process, with quick tech interview tips for how to pass a technical interview and stand out in each part.
Congrats, you’ve already made it past one of the hardest stages: your tech resume caught the eye of the recruiter/company! The phone screen is your chance to make a good first impression.
You can showcase your tech experience to a degree here, but some technical screenings over the phone will be less tech-focused than others. More importantly, focus on conveying your soft skills (enthusiasm, communication, teamwork, etc.).
During the technical phone interview
Here are a few more tips on how to prepare for a technical phone interview:
- Be excited about the company or project, and that positivity will come across in the interview.
- Know your audience. If you’re interviewing with a recruiter (with no programming knowledge), play up your soft skills and don’t get too technical. If you’re interviewing with a software developer, show off that tech knowledge!
- Be honest: tell the interviewer what most interests you in a job and what kinds of projects you’d like to work on.
- Answer behavioral questions by showing, not telling. Use specific, memorable details and tell a story.
What interviewers are looking for in the phone screen
Beyond just pure tech skills, which they’ve already read about on your resume, interviewers in a phone screen want to see:
👩💻 Passion for tech/coding
🗣️ Communication skills
🤗 Culture fit
🤝 Alignment with company mission/values
How to stand out over the phone
Even if you’ve applied to hundreds of jobs, tailor your answers to the exact one you’re interviewing for. “When a candidate answers the interview questions in a way that is specific to the company and the position, it shows that they have done their research,” says Refael Zikavashvili, co-founder and CEO of Pramp. “It makes me believe them when they say they want the job. Not just any job, but THIS position that they are interviewing for.”
Also, look for opportunities to show your value alignment. “When they make it clear that they support the big picture and the mission of the organization, it’s a great sign that they will be a good fit,” says Refael.
Download the LinkedIn profile checklist
Created with aspiring techies in mind.
Remote Coding Challenge
“The coding challenge is typically a lot less rigorous than the whiteboard,” says Chris Lee of Launch School. However, that doesn’t mean you can brush it off or apply less effort, as you’ll often be asked to justify your choices.
This technical round has some flexibility in how companies handle it. So first, let’s go over some of the common types of remote programming interview questions or challenges.
- Some companies will give you a real-time monitored challenge to see how you code. Often this is done via a video interview + a web-based code editor like CoderPad, Collabedit, or even a Google Doc.
- Other companies (usually startups) may simply require you to complete an at-home assignment instead within a set time limit–usually 48 hours.
- Really small startups may not include a remote coding challenge at all–instead bringing you in for an onsite interview immediately after the phone interview–but bigger companies often do. (General rule: the bigger the company, the more structured the hiring process is.)
Coding interview preparation tips for the remote coding challenge
During a real-time coding challenge, communicate with your interviewer and think out loud. Make it a collaborative process (use “we” instead of “I”), since interviewers want to know that you’re a team player. And remember to slow down. These real-time challenges are not usually timed, so take your time, think it through, and give the interviewer a chance to give you hints.
During a take-home coding assignment, take time to plan out your code before writing it out. Make sure you fully understand the instructions and requirements. Re-read them several times before starting and once more after you’re finished with the challenge to make sure you’ve ticked every box.
💡 Check out this comprehensive article focused on acing the take-home challenge for other awesome tips.
What interviewers are looking for in the coding challenge
- Coding skills
- Testing code as you write it
- Problem-solving skills
- Collaboration skills
How to stand out in a remote coding challenge
One way to stand out in your remote coding challenge technical round is to go above and beyond. Sometimes remote coding challenges will come with optional “bonus” requirements. Complete those requirements to impress your interviewers.
Don’t cheat or get help from others to make yourself look better. “During follow-up live interviews, it’s common for employers to probe the candidate to explain why certain choices were made,” says Chris (Launch School). “This is why it’s imperative that you don’t get help on the code challenge; if you do, you will be exposed during the follow-up conversation.”
Onsite Interview and Whiteboard Challenge
Now we’ve arrived at the most intimidating part of the entire tech interview process. At tiny startups, onsite technical interviews might be a lot less formal than at bigger companies. Heck, there may not even be a whiteboard to do a coding exercise on!
Still, whatever the company size, it never hurts to know how to prepare for software engineering interviews, so you’re ready for any situation that may arise in your tech interview. (More on how to prepare for technical interviews further down!)
What to do during the onsite technical interview + whiteboard challenge
1. Ask clarifying questions before you even start writing code.
Instead of starting to write out your code immediately, slow down. Even if you think you already know how to solve the problem or answer the question, ask clarifying questions. By doing this, you might get hints from the interviewer, plus you want to make sure you fully understand the challenge/question before diving in.
“I appreciate it when someone takes the time to evaluate the question he faces in the tech interview,” says Refael (Pramp). “It shows me that this person is calculated and rather than just writing code, he sees the whole picture.”
“Ask questions around [your initial] assumptions of the question, and try to reason about the question from a bottom-up perspective,” adds Chris.
2. Talk through your code (think out loud) to give the interviewer a window into your thoughts.
What happens in a technical interview is as much about the journey as the destination. “It’s designed to test a candidate’s communication and problem-solving skills,” says Refael. “More important than the solution is how they work at getting the solution. Can they articulate their thoughts while writing out the code on the whiteboard? Are they putting together a clear response to the question?”
Certain types of programming interview questions aren’t even supposed to have easy answers, making them even more about the thought process. “Is it an algorithm design problem? If so, sometimes you’re not supposed to know the answer right away,” says Parker Phinney, founder of Interview Cake. “You’re supposed to have to try a couple ideas and think creatively and maybe even take some ideas your interviewer feeds you and run with them. Just relax and keep thinking out loud and trying new ideas.”
A helpful tip for explaining your thought process is to act like you’re part of the team. If this were a real-life situation, how would you discuss, explain, and solve the problem? This can also give your interviewers an idea of how you’d collaborate on the team if they were to hire you.
3. Speak clearly and precisely.
Being in a high-pressure situation like a programming interview might have you a little flustered, but work through it. Being as clear and specific as possible can help you keep yourself collected. “Since programmers work with abstract concepts, speaking clearly and precisely is paramount,” says Chris (Launch School). “Though it may not seem like it at first, the vast majority of programming roles are, at the core, social roles.”
A few of Chris’s specific tips to help your interview skills:
- “Pay attention to vocabulary, even on seemingly simple concepts.
- Refer to a concept by its formal name. For example, instead of saying ‘it calls that function and the result is 5,’ say ‘the add_numbers function call returns 5, which is assigned to the variable sum.’
- Avoid pronouns and ambiguous words like ‘result’ (usually, there is not a ‘result’ but some output, side effect, or return value). The second example demonstrates clarity of thought and precision of language, leaving the reader with an unambiguous account of what the code is doing.”
4. If you’re stuck, stay calm, think out loud, and try new ideas
Not sure of the answer to some coding interview questions? Start with what you do know. “Coding interviews are a lot like math exams in high school and university: often, you’ll get ‘partial credit’ for showing your work and putting in some effort to find a solution,” says Refael (Pramp). “If you can demonstrate your thought process, the interviewer will understand that you’re doing your best to find a solution.”
Honesty is key here, because good interviewers can spot when you’re bluffing. “Don’t panic or try to fib your way through it,” Refael continues. “Be honest that you don’t know, but explain where you would look to solve the issue if you faced it in your daily work.”
If you’re really struggling to solve the problem, what can you do? Try breaking it down even further and solve a much simpler version. For example, you could write a very basic solution and optimize it later. The point is to get some code on the whiteboard and talk out loud as you’re figuring things out. In most cases, you’ll get points for trying and showing how your brain works. Plus, writing things out visually can often inspire a solution.
How to pass a technical interview isn’t always about getting everything 100% right, but staying cool and rational under pressure will always help!
5. Check for errors & walk through your solution at the end
Companies want to hire software engineers who can write bug-free code, or at least know how to check for errors. Towards the end of writing out your solution, begin to check for any errors. This can show interviewers that you’re not just interested in writing code, but that you want to write good code.
When you’re done with your code, walk through your solution so interviewers understand fully what you did and why you did it.
What interview skills employers look for in the onsite technical interview
- Coding skills
- Problem-solving ability
- Ability to think creatively
- Communication skills
- Analytical thinking skills
- Culture fit
- How you handle feedback
- Ability to solve problems in a structured and systematic way. “Along the way, interviewers will also expect candidates to demonstrate knowledge of performance and optimization tradeoffs between space and time complexity,” says Chris (Launch School). “This will require applying algorithms and data structures to the current problem.”
- Understanding of the bigger picture. “Candidates may be asked to zoom out of application code and think about how data may flow between systems and the larger infrastructure impact,” explains Chris. “The goal is not to see if the candidate knows a specific piece of knowledge, but if they understand how systems interact and consequences of infrastructure decisions.”
How to stand out in the whiteboard interview
Keep it simple and clear! “Designing efficient algorithms is sort of table stakes. Here’s something that really stands out: writing particularly easy-to-read code,” says Parker (Interview Cake). “And like 80% of that is just picking really great variable names. Don’t use shorthand names like ‘x’ and ‘y’ to try to move faster–you’ll just confuse yourself and your interviewer and you’ll look reckless. Take an extra second to pick a variable name that really makes it clear what the variable holds, what type it is, etc.”
💡 Check out this article for 7 other ways to stand out during your coding interview.
Start coding now
Stop waiting and start learning! Get my 10 tips on teaching yourself how to code.
After the Technical Interview
When the technical interview is over, take a breath: you made it through! There are a few things you can do to follow up, but for the most part, it’s just a waiting game now.
Tips for after the tech interview
- Keep some emotional distance from the process. “Expect to get rejected a lot, and it’s important to not view it as personal judgment,” advises Chris.
- Even if you don’t get the job, have the perspective that the interview was great practice for the future. If it was your first one, now you know what to expect from a technical interview! Glean insights from the experience and use them to propel yourself forward.
How to be a memorable candidate
📧 Send a short and sweet thank you email to the recruiter/hiring manager within 24 hours of the technical interview. Ask if there is anything else they need from you, or if there is anything about your interview that gave them pause so you can address it, if possible.
📤 Make a note of everyone you speak to during the interview and reach out to them with a quick note of thanks as well. You can send emails to them individually if you made more of a connection, or send a group email with a general note of thanks to everyone. It will definitely help the team remember you!
📨 If you haven’t heard back after a week, send a brief follow-up email to the tech recruiter or your possible future manager, reiterating your interest in the role and asking about potential next steps.
Now that we’ve gone over what happens in a technical interview, let’s backtrack a little and go over the very first step: how to prepare for a technical interview!
Coding Interview Preparation
There’s a lot that goes into preparing for a programming interview. Technical interview preparation is more than thinking up clever answers to “what is your greatest weakness,” after all! Learning how to prepare for technical interview questions may require a bit of a time investment, but it’s well worth it.
How to prepare for a technical interview
Some elements of coding interview preparation should ideally start well before you even land the interview. Other job interview preparation steps can be accomplished closer to the day itself.
So, here are some of the most important coding interview preparation tips to master in the days, weeks, or months leading up to your job applications and interviews:
1. Prepare a 30-second to 1-minute elevator pitch for the “tell me about yourself” question and examples/stories for other interview questions
It’s important that you go prepared to talk about non-coding topics like your employment history, career goals, past projects, etc. The technical interview could just be one part of many if you’re at a company with a long interview process, and you’ll probably have to answer some version of this question when you meet new interviewers. It’s a great time to demonstrate soft skills and passion.
It’s also a good idea to prepare some real-life examples and anecdotes/stories ahead of your interview. Doing this can help you prepare for pretty much any behavioral or situational interview question. This works because if you have some examples/stories ready to go, you can apply them to nearly any interview question — which is important because you can’t really prepare for every single software developer interview question you might come across.
So, for example:
- You could think of an accomplishment you’re super proud of. That one example could be applied to questions like “Describe a time you went above and beyond at work” or “What’s your proudest accomplishment?”
- You could have an example of a time you made a mistake at work. That one example could be applied to questions like “Tell me about a time you made a mistake at work” or “Give me an example of a time you overcame a challenge”
Other stories/examples to prepare include:
- When you worked as part of a team
- When you solved a difficult problem
- When you showed leadership
- What you’re passionate about and why
Think about how to adapt your anecdotes to fit common software developer interview questions you might face.
2. Before you go, study up on the most important CS fundamentals
Don’t stress yourself out like you’re cramming for an exam and trying to learn everything–but do dedicate extra preparation time to key technical interview skills.
For software engineer interview prep or really anything computer-science related, Start with these must-study topics:
- Data structures
- Big O Notation
- Sorting and search algorithms
- Hash tables
- Dynamic programming
💡 Need a more guided study of these topics? Check out The Ultimate Data Structures & Algorithms Course for a deep dive into the most common topics that come up in technical interviews, with 100+ popular interview questions asked by Google, Microsoft, Amazon, and other big companies.
💡 Another great resource for learning everything you need to know about algorithms and system design is Interview Camp. Their weekly live sessions and 60+ hours of self-paced content will help you conquer your coding interviews by learning real-life techniques.
Of course, depending on the exact position you’re applying for, there might be other topics you think you should brush up on during your coding interview practice. How to prepare for software developer interviews is obviously different from how to prepare for data science interviews.
3. Pick one programming language and know it really well
Companies usually let you choose the language you’re most comfortable with. But which language should you use? Go for the language you have the most practice with. Even if the company uses a different tech stack, choosing the language you know inside and out will often be the better option.
💡 You can use my 10%-off AlgoExpert discount to get access to coding practice questions with written solutions in nine popular programming languages. Just use the code ltcwm when you check out.
Check out these LTCWM resources for places to go to brush up on your coding skills:
- 100+ of The Best Places to Learn to Code For Free
- The Best Places to Learn Web Development Online
- Recommended Beginner Coding Resources and Tools
4. Do regular coding challenges/smart practice
During your coding interview preparation, it’s important to study the right way. Start early so you don’t have to cram. How early? It will depend on your level of experience, how many hours per day/week you can dedicate to studying, and how soon your interview is, but if possible, start preparing before you even have a tech interview scheduled. 4-8 weeks is a good amount of time to aim for.
According to this Redditor: “If you can dedicate 1 to 2 hours most nights, you can prepare for a FAANG coding interview in 2 weeks without being completely burned out. Another 2 weeks and you can be prepared for the onsite with more coding, system design, and behavior interviews.”
Aim to solve 2-3 coding interview practice questions per day. A great resource providing software developer interview questions is Interview Cake. My review of Interview Cake is definitely positive: not only do you get a ton of practice technical job interview questions, you learn the right way of thinking about them.
Practice coding by hand on a whiteboard or piece of paper (without the help of a code editor). Consider imposing a deadline on yourself to get accustomed to working under time pressure. The more realistic a scenario you can create, the more effective your coding interview preparation will be.
You can use my 20%-off Interview Cake discount to get the full course with comprehensive information and a ton of practice technical interview questions–or join the email list to get one coding interview question per week for free. Plus read my review of Interview Cake.
5. Understand tech fundamentals
In the majority of cases, technical interviewers aren’t going to grill you on obscure concepts or expect you to recite complex formulas from memory. “Most questions will not be based on gotcha-knowledge,” says Chris (Launch School). “Instead, the interview conversation will be probing your ability to deconstruct complex concepts and seeing if you can peel back the layers.”
For example, he continues, “An interviewer may ask ‘If you had a page that’s experiencing performance issues, how would you go about figuring out the bottleneck?’ This open-ended question is simultaneously assessing a candidate’s knowledge of fundamentals, and at the same time allowing the candidate to show off their depth of understanding. It’s these open-ended questions where interviewers can [identify] those who can work at a deeper engineering level. The only way to stand out is to understand the fundamental concepts that underpin the feature in question.”
6. Come to the interview with a relevant project to talk about
“A lot of people will advise job hunters to build a project and showcase that during the interview,” says Chris. “This is a great tactic because it allows the candidate to flip the conversation from being grilled to showcasing their ability.”
However, just like you should tailor your cover letter to the company you apply to, you should think about a highly relevant project to feature during your software engineer interview prep. “A good general rule would be to build projects that, at minimum, match the complexity of work for the job you’re applying,” advises Chris. “Prospective employers will then be able to see that you not only can but actually have done work at the level that they require.”
Don’t have a relevant project? Start building one the second you’ve sent out your job application! Or start contributing to open source projects.
“Smart candidates should target specific roles,” Chris continues. “Study the requirements of the role and the type of projects the role is expected to work on. Then map out a way to independently produce projects of approximately equal complexity. You’ll stand out if you bring that type of project to the interview.”
7. Learn to manage your time effectively
The more focused and efficient you can be during your tech interview preparation, the better you’ll do when you’re actually in the hot seat. Set a timer when practicing. Aim to finish a problem in about 30-45 minutes (including debugging at the end).
If you run into snags, think of ways you’d explain your hesitation and potential next-step ideas to the interviewer. Here are some more time management strategies that can help during your tech interview prep.
8. Do mock coding interviews
Having a technical interview cheat sheet, reading books like “Cracking the Coding Interview,” (from Amazon) and doing online coding challenges on sites like Interview Cake are all amazing, but if you want to take it even further, live coding interview preparation might be what you need to really get comfortable and polished.
“Pramp.com is an excellent place for getting realistic coding interview practice–and it’s free!” says CEO Refael. “While solving coding problems can help you improve your technical abilities, mock interviews with peers can also enhance your soft skills: the way you communicate, your body language, etc.”
Ultimately, interviewing is a skill, and your interview skills are sharpened with practice. Knowing how to prepare for coding interviews comes with time! “Practice, practice, practice,” says Chris (Launch School). “Your 20th interview will be dramatically different from your 1st, so try to get to the 20th in a practice setting and your first ‘real’ interview will actually be your 21st.”
💡 With AlgoExpert, you can schedule a mock coding interview with an actual human being.
9. Get a study buddy or find a coding mentor
Got a friend or peer with similar job goals? Recruit them to help! Study coding concepts and work through problems together. Take turns interviewing one another so you understand the perspective of the interviewer as well.
10. Have a process you can rely on to deconstruct questions
Technical interviews can get tough–you’re probably not going to be thrown softball questions the whole time. “In a good interview, you will always be made to feel uncomfortable and be given a problem that you can’t just solve right away,” says Chris (Launch School).
However, by anticipating this and forming a system to “deconstruct” questions, navigating the hard ones becomes a lot easier. “If you don’t have a process, it’s not going to be possible to figure one out on the fly,” Chris explains. “Think about how to do this before the interview. For example, one that I recommend to people is PEDAC.”
11. Never turn down an opportunity to interview
This circles back around to the idea of practice! Even if a company isn’t your dream place to work, if they invite you for the tech interview stage, go. “Don’t turn down an opportunity to interview–the more coding interviews you complete, the stronger a candidate you’ll become,” says Refael (Pramp).
After all, best case scenario: you get a job. Worst case scenario: you’re one step closer to knowing how to ace a technical interview!
12. Take a little time to reflect on impostor syndrome.
If you catch yourself feeling like you don’t belong at a technical interview or you’re not truly qualified for the job…you’re not alone! “Impostor syndrome affects the vast majority of us, especially during interviews,” says Parker (Interview Cake). “Most of us really underestimate ourselves!”
That’s where reflection time comes in. As Parker continues: “With a bit of effort, it’s possible to really shift your mindset from ‘I’m an impostor’ to ‘We all have our strengths and our weak points. I’m pretty good at some stuff, and I’m excited to learn more about some other stuff.'”
In the end, preparing for a programming interview often comes down to practice. Sign up for Interview Cake for tons of other resources to help you sharpen your skills for the technical interview. (And get a special 20% Interview Cake discount using my link!)
Meaningful questions to ask the interviewer
Interviews are a two-way street. You should be learning about them just as much as they’re learning about you!
Asking thoughtful questions is also a good way to stand out in the interview. “The age-old adage ‘people don’t remember what you say, but they remember how you made them feel’ is so true when it comes to interviews,” says Refael (Pramp). “When a candidate keeps the flow going in a friendly conversation, instead of making me feel like I am conducting an interrogation, I will remember our brief time together fondly.”
Of course, you should tailor your questions to the specific situation, but here are a few meaningful questions you can ask:
- What do you like most about working here?
- What frameworks, tools, tech stack, etc. does your company use?
- Can you describe the development process here?
- How do you test your code?
- Does the company offer opportunities for professional development, training for engineers, etc.?
- What’s the most challenging project you’ve worked on here?
- Is there anything about my resume/application that gives you pause? (this can be a great way to get out ahead of something on your application that the interviewers think is a weakness/red flag)
The other upside: while you’re listening to their answer, you get a little break from talking!
Common technical interview mistakes to avoid
Knowing what not to do can be just as important as knowing what to do, so let’s quickly cover a few common technical interview mistakes.
1. Not preparing enough
Seriously, there’s no such thing as too much coding interview preparation. “The good news is, most candidates don’t put in that time. So it doesn’t take much to really pull ahead of the pack,” says Parker (Interview Cake). “It’s such a bummer as an interviewer to watch a candidate really come up short and just think to yourself, ‘I can tell you’re smart–if you had just reviewed some of this stuff I’m sure you’d be able to get this.’”
2. Jumping into the code without taking a moment to think it through
You might be eager to start solving the problem, but take a few minutes to question your assumptions and make a game plan first! “Starting too quickly gets a lot of people into trouble when they could have taken a moment to prevent confusion down the road,” says Refael (Pramp). “Some of the most common mistakes candidates make are avoidable. Pause for a moment to think through the problem-solving process.”
3. Being too arrogant or opinionated
People would rather work with a humble person than an arrogant know-it-all. Especially for those with fewer years of experience, “it’s more important to come across as being malleable and eager to learn, so the employer can envision you in a variety of projects and roles,” says Chris of Launch School. “Even seemingly innocent statements like ‘I love X and don’t like Y’ may come across as ‘I’m limited in my ability to work in a certain way.'”
By considering your “soft” interview skills and choosing your words carefully, you can avoid these misunderstandings. As Chris advises, “A candidate should be tempered in their preference. For example: ‘I’ve been enjoying X lately, but also have experience with Y.'”
4. Not making conversation/chit-chat
Remember, your interviewers are human! It can be extremely valuable to find a point of connection. “An interview is not just about answering questions correctly, but also about a conversation,” says Chris. “Ask good questions. Laugh and make jokes at appropriate junctures. At the end of the interview, even if you missed a few questions, the overall feeling the interviewer has about you should be positive. If you know that you are not a great conversationalist, make sure to focus on improving this.”
Useful Technical Interview Resources
For further tech interview preparation, check out these resources!
🖥️ Online courses to help you prepare:
- Free 7-Day Interview Crash Course (Interview Cake)
- Interview Cake Full Course (20% Interview Cake discount through Learn to Code With Me! Get the job, or your money back.)
- Mastering the Software Engineering Interview (Coursera)
- 4 Week Online Bootcamp for Coding Interviews (Interview Camp)
- Java Interview Questions: Data Structures and Algorithms (Mammoth Interactive)
- Land Your First Tech Job (Break Into Tech)
- Data Structures Crash Course (AlgoExpert – get 10% discount with code ltcwm)
- Master the Coding Interview: Data Structures + Algorithms (Zero to Mastery)
- Master the Coding Interview: Big Tech (FAANG) Interviews (Zero to Mastery)
- Full-Stack Interview Prep (Udacity)
- Codecademy’s interview prep resources (Codecademy)
📚 Books to read:
These books are all available from Amazon. As an Amazon Associate I earn from qualifying purchases.
- Cracking the Coding Interview (Amazon) by Gayle Laakmann McDowell
- Programming Interviews Exposed: Secrets to Landing Your Next Job (Amazon) by John Mongan, Eric Giguere, and Noah Kindler
- Elements of Programming Interviews: The Insiders’ Guide (Amazon) by Adnan Aziz, Tsung-Hsien Lee, and Amit Prakash
👨💻 Good websites for coding practice problems:
- Interview Cake
- AlgoExpert (Get 10% off with code ltcwm)
➡️ Want more interview prep help? Check out “The 22 Best Coding Interview Courses and Books“
Before we wrap this up, here are a few technical interview FAQs with links to the answers. (If you read this whole article, you’re amazing–but if not, this will help you jump around to find what you need to know about how to pass a technical interview!)
Technical Interview FAQs
- What is a technical interview?
- How do I prepare for a technical phone interview?
- What should I do the day before my tech interview?
- What to wear to a technical interview?
- How important are algorithms for interviews?
- How do I study for a technical interview?
- How do I answer technical interview questions I don’t know?
- What should I bring to a technical interview?
Time to Go Crush Your Own Technical Interviews!
With these technical interview tips, you’re equipped to begin your own technical interview preparation journey!
The next step is taking advantage of all the amazing resources out there that teach you how to ace a technical interview.
Then, acclimate yourself to live interviews by connecting with your peers on Pramp.
Above all, keep seeking out knowledge, improving your trade, and honing those coding interview skills with practice! Getting your dream coding job means getting through the interview. But if you go in prepared, the technical interview will be a piece of cake. 🍰