If the job-hunting season has already started for you, or if you’re casually browsing through the options currently available in the job market, you may have come across a few aspects of technical interviews that made you question whether there is relevance in the evaluation model some companies are utilizing nowadays. Especially large companies, such as the big tech, often leverage coding challenges that might extrapolate reason, leaving candidates wondering what is going on. If you ever felt this way, let me just say this: I entirely agree with you.
Don’t get me wrong, though. I do believe in technical interviews and think they should be an integral part of any hiring process. However, what does not make sense, in my opinion, is the fact that many corporations are going way overboard on this. I have a recent experience to share, which will help me illustrate the drawbacks I see in such a practice.
I was helping a mentoree of mine with a coding challenge for a renowned tech giant the other day. This company gives candidates two coding assignments and 90 minutes to complete both. The exercises were worded to fit the company’s context, which is perfect. It gives the notion that it could be a real-life issue to be addressed when on the job. I assisted this person in solving the challenge, but in the end, I felt he was more frustrated than encouraged. I can’t deny I felt the same way.
The problem with a lot of these exercises is that, based on my experience, they rarely test one’s aptitude to address 90% of the tasks they would have to deliver on a daily basis. Instead, it focuses on the 10% (and I’m being generous here) of the issues that only arise every now and then. Pardon if I’m wrong, but I’ve been writing code since 1999, and don’t remember the last time I had to create a program that instantiates integer arrays that represent development teams, where each element symbolizes a team member’s experience level, with the goal of randomly creating groups where proficiency ranks could not be greater than X.
Instead of concentrating on using real-life use-cases to assess a candidate’s ability to think logically and teamwork, many coding challenges lean on theoretical, textbook questions about computer algorithms. While this is a must-know subject for any computer programmer, having an entire hiring process rely exclusively on this topic seems suboptimal. As a result, what’s going to happen is that those who spend hours in coding challenge platforms that focus on how to pass job interviews – often recent grads, have a much better chance compared to those with years – if not decades – of relevant, real-life, industry experience. Which one do you think would do better on the job? I know my answer.
However, there is still hope. Some companies seem to be waking up and changing gears towards a more practical approach. For example, Elon Musk’s Tesla and SpaceX prefer a completely different strategy to discovering talent. To Musk, skills matter more than degrees, and this idea reflects on his companies’ hiring process. He sees the hands-on experience as a form of education, a view corroborated by recent studies. So, instead of giving his candidates complicated, theoretical challenges, he prefers to provide them with real-life tasks to assess their skills. Not only is this process more efficient, but it is also more coherent, in that it gives all candidates an equal shot at a real problem.
In the end, if you’re still interested in working for those corporations, that’s absolutely okay – to each their own! That being the case, the first thing you have to do is to set expectations. Be aware of what you have coming your way. A quick search on YouTube will yield a virtually infinite number of videos containing sample questions and solutions. There are also online courses and paid platforms that students can use to hyper-focus on such coding challenges. Another viable option is to work with specialized coaches to help you develop your data structures and algorithms skills. Be ready to strategically invest sufficient time to master the several different types of questions that will likely be asked during the technical interview.
In conclusion, my advice is: Don’t feel overwhelmed by complicated hiring processes. While you must prepare yourself to become a competitive candidate, and invest as much time as you can in sharpening your technical skills, there is a fair amount of nonsense going on in many places – especially in the big tech. If you are a hard-working professional, success is just a matter of time. To get there, the priority should be entirely on self-improvement. Don’t let the mistaken models established by others trick you into taking away your focus from yourself. Be your own priority, and you’ll strive.
About the Author
Luiz Parente is an engineer, software developer, and educator with vast experience in creating complex enterprise systems. His technical contributions continue to have positive and lasting industry impact, ultimately helping businesses optimize internal processes, automate information flow, engage users, and minimize administration costs. Having started programming in his early teens, his core software development expertise is centred in the .NET technologies.
Follow Luiz on LinkedIn