Even the most confident coder can turn into a sweaty mess at the prospect of a technical interview. The good news is that with the right preparation, you’ll be ready to field complex questions without hesitation. The even better news? You can jump-start your interview prep right here, with some of the best tips from around the web.
A Few Basics
- Yes, you need to have the hard skills to excel, but a passion for problem-solving and your work in general will give you the one-up on a similarly skilled candidate who acts less-then thrilled to be there.
- Don’t freeze and go quiet if you’re asked a question you don’t know how to answer; Many interviewers like to put you on the spot to see how you work through a problem and communicate complexities. Attention to detail and the ability to ask relevant questions are also areas of focus, and your answer is often secondary in importance to how you got there.
- Show your work. Interviewers want to know that you’re checking and double-checking your assumptions, and will also ask you why you choose the code solutions that you did. Don’t get defensive –– they likely want to see how well you can take feedback, as well as gauge your ability to critically evaluate your own work.
- “Make sure to make a list of your projects and the thought process behind each one,” says Pamela O. Vickers, software engineering manager at MailChimp and the head of Rails Girls Atlanta. “Being able to answer questions articulately about technical decisions and the architecture of previous projects shows that you both understand what you’ve done and that you actually did the work.”
If the prospect of fielding a barrage of technical questions makes you cringe, you’re not alone. Don’t panic: CareerScore recently rounded up key areas of focus for web development interviews, which we’ve summarized below.
Data structures are the basis of computer science, and you should be familiar with arrays, linked lists, hash tables/maps and binary trees. As software engineer Aakash Basu writes on Quora, “Without them, you will be reinventing the wheel – not always successfully.”
Interviewers often focus on your understanding of search algorithms to gauge your skillset, including the nuances of breadth-first search (BFS) and depth-first search (DFS), and when to use one vs. the other.
Efficient sorting is vital when optimizing the use of algorithms. CareerSource recommends focusing on Merge Sort and Quicksort to refine your knowledge and determine when to use each.
Types of Algorithms
Do you know which algorithm is most efficient for solving a given problem? When this question comes up, keep in mind that Interviewers want to know how you approach problems, how many solutions you can come up with and how you chose the “best” option. Recursive algorithms, iterative algorithms, and greedy algorithms are among the big 3 you should know with an emphasis on recursion vs iteration.
When it comes to technical interviews, there’s no such thing as being too prepared. From code challenges to cheat sheets, here are some more resources to ensure you put your best foot forward.
- Github cheat sheet for technical interviews
- Github front-end interview cheat sheet
- Toptal Developers interview questions and answers
- Web Code Geeks interview questions and answers
- Startup Institute technical interview prep