FAQs

What’s the best coding language to use?

I always do my coding interviews in Java. Not because there’s anything special with Java but because it was my first coding language during my university studies. Over time I started to learn all the libraries for Java and practiced all my coding questions with the language. All my experience practicing and interviewing was in Java, even today when most of my professional work is in Javascript.

If you are already committed to using a language, continue using that coding language for your interviews. Spending time learning new libraries and syntax of another language is not always a strong investment. Keep compounding on top of what you already know about your programming language and use that to your advantage.

However, if you have just begun studying for your coding interviews, I’d strongly recommend using a simpler language like Python. Python is concise, readable, and widely supported for coding interviews. The time-savings of writing Python and reading Python will help you as you’re learning coding problems. But please don’t toss years of Java knowledge to cram Python for coding interviews.

How many coding problems should I do?

It’s not about how many coding problems you solved, it’s about how often you learned something from the coding problems you solved. There’s a lot to learn solving a simple problem like Two-Sum, but solving 1000 variations of that problem doesn’t help your algorithm knowledge.

What you should strive for is learning about the implementation of each data structure and algorithm along with the running times of each of those implementations. If you did well in your university coursework, you likely don’t need to study as much. But if you don’t know what an array is, you’ll have a lot more to learn and practice.

For any coding problem you’re working on, determine if you’re learning something new about a data structure or algorithm, or if you’re just applying what you already knew before. Keep compounding on learning new details about each data structure and you’ll impress yourself how well you can approach any coding problem.

What do I do when I’m stuck?

Being stuck is a symptom of two possibilities. Either the candidate does not know enough data structures and algorithms for the problem, or a small hint will lead them to solve the rest of the problem on their own.

If the candidate doesn’t know enough to solve the problem, then the only thing they can do is to keep studying data structures and algorithms. This is a sign the candidate does not meet the bar.

However, a candidate that can solve the problem after a smaller hint is not penalized and likely to pass the interview. This is because the candidate is able to clearly articulate their problem and work with additional information to solve the problem.

If you’re ever stuck on a problem and you do know enough data structures and algorithms to solve the problem, explain why you’re stuck and specifically what you need to get unblocked. An interviewer will either be kind enough to nudge you in the right direction or remain silent to avoid exposing the solution.

Which Interviews Should I Focus on?

Interview with every possible onsite opportunity. Regardless if you’re actually interested in the company or not, interviewing onsite consistently will give you the most authentic practice applying for any job. Being able to solve a coding question is only one part of the process. But candidates receive job oers going through the entire interview process and doing well at each and every interview.

Some may think learning how to solve coding problems really well is enough. But I will argue that doing well on 1 mock interview on a relaxing weekend is not the same as confronting 4 back-to-back interview questions during an onsite. Put yourself through the authentic experience as much as possible and reflect on challenges you have going on-site as a full experience.

You may learn that you get tired after two interviews, you’re suddenly nervous being on-site and can’t speak, a 30 minute break makes you forget everything you know, or you’re not prepared for a behavioral interview after 3 coding interviews. These are the qualities you can’t notice in a single mock interview or solely practicing coding questions.

Last updated