In my time as a software engineer, I've interviewed hundreds of candidates for front-end, full-stack, and backend developer roles. Here are some surprisingly common mistakes that you should avoid to improve your chances of passing the interview.
Forget what language is trending right now or what the company you're applying for uses—always use the language you know best. If you love Ruby, just use Ruby!
Why? Because time is of the essence in a technical interview. If you choose a language that isn't second nature to you, you're going to waste precious mental cycles trying to remember which functions to use and gloss over obvious bugs.
You may not realize how much you rely on the help of your IDE to autocomplete your code on a daily basis. Unfortunately, autocomplete doesn't work on a whiteboard. And some languages (cough Java) can be quite verbose and slow you down in an interview. This isn't a showstopper, but it means you should practice in an interview setting (in a text editor, on a whiteboard). If you want real-world practice, you should also check out Exponent's mock interviews.
Getting stuck in an interview isn't the worst thing, but interviewers hate it when candidates veer off track and ignore their suggestions. Learn to recognize when the interviewer is trying to help you. If you find yourself answering vague questions—like "Why do we we need to do X?" or "How do you know Y?"—your interviewer may be suggesting you try to find an alternative (or simpler) solution. Use this hint as an opportunity to step back and think about your approach. Don't forget that half of the interview is about your communication skills – how well you explain ideas and how well you listen to feedback from the interviewer.
Want help practicing for your interviews? Check out Exponent, where we match you with experienced mentors who've worked at top tech companies like Google, Facebook, Uber, and Dropbox. Subscribe to our YouTube channel for more helpful tips and videos.