Practicing Coding Interviews

c: Jan 15, 2023

Coding Interviews

One of the most challenging aspects of preparing for technical interviews is developing the discipline and habit of solving coding challenges. This is why I have mixed feelings about these types of situations.

Under normal conditions, an interview can be a challenging experience. However, as long as you communicate effectively, it can be manageable. Coding challenges, on the other hand, can be particularly frustrating because they remove the human element from the interview process, putting interviewees in a high-stakes situation that doesn’t reflect real-life experiences. Despite this, the tech industry has elevated the importance of these interviews, casting them as a make-or-break test for a desirable role. The reality is, however, that these questions do not accurately gauge a person’s abilities and can actually stifle a growth mindset.

Solving problems in coding challenges can be similar to learning a magic trick. Once you understand the solution, it can seem straightforward, but before that, it can be confusing and leave you wondering why your approach isn’t working. Another important aspect to consider is that it’s easy to get stuck in a local optimum. You may think you have found a clever solution, but it might not be the best solution and could only work in some cases. The time pressure of an interview can trigger the brain’s flight or fight response, leading to a tendency to force a solution even when one is underprepared.

The “hammering a wall” approach might be effective in real life, but not always. What’s needed instead is a change in perspective. This can come from discussing with senior colleagues, asking relevant questions, and reflecting on the challenges. It’s a learning issue that requires the “diffusion/absorption” of knowledge, whereas coding challenges focus on recall. This means that candidates who are good at recalling information can succeed in these challenges, rather than those who have a deep understanding of the material.

Eventually, you will likely face coding challenges in an interview setting. The best approach is to learn to stay calm and approach the problem from different angles. This way, you are not limited by your ability to recall information, but instead, demonstrate your ability to understand the problem and come up with innovative solutions. Perhaps the interviewer is looking for candidates who can do just that. While we may never know the outcome, focusing on understanding the problem and finding new solutions can increase your chances of success.