After a decade of experience as a software developer, both as an interviewer and an interviewee, I’ve come to realise that many interviews fail to effectively showcase a candidate’s true skills.
The most common interview format involves solving problems similar to those found on LeetCode. In over 250 interviews, I’ve repeatedly encountered the same types of problems, such as FizzBuzz or a debounce function. This format often seems more like a test of how many interviews you’ve attended rather than a genuine assessment of your abilities.
From my experience interviewing candidates, many struggle with these problems and frequently run out of time. This doesn’t necessarily reflect their ability to handle real-world issues. Moreover, these interviews often discourage candidates from using resources like Google or MDN, which feels unfair given the stress and pressure involved. I always encourage candidates to use any online resources they would normally rely on in their daily work.
Ultimately, I’m more interested in understanding how you approach and solve problems in a real-world work environment rather than how you perform under test conditions. After all, we’ve all experienced times in school where we struggled with a test but excelled in regular classwork.
Another common interview format involves take-home coding exercises. These are generally more effective than the previous format, especially when candidates are not timed. In my experience, candidates tend to showcase their skills better in this setting, as it more closely resembles a normal working environment. However, issues arise when these take-home exercises are hosted on online platforms with strict monitoring, where candidates are timed and their screens are recorded to ensure they aren’t using tools like ChatGPT, Google, or MDN.
Many companies now offer AI coding tools—such as ChatGPT, which I use daily at ROKU. While these tools don’t solve everything for you, they are akin to power tools. Just as a power screwdriver makes the task faster and easier, AI tools can enhance productivity without replacing fundamental skills.
Despite these challenges, securing an interview feels like a rare relief in today’s job market. Many candidates apply to over 100 job postings just to land one interview. This paradox is puzzling, especially when hiring managers complain about the difficulty of finding qualified candidates. Throughout my career, I’ve rarely been in a position where we had a fully staffed team and weren’t hiring. We’re always looking for talent, so why are so many roles left unfilled, and why do candidates struggle to find jobs?
The disconnect between the abundance of open roles and the difficulty in filling them may stem from a variety of factors. One possibility is that job descriptions are often overly specific or unrealistic, setting an unattainable bar that deters qualified candidates. Additionally, the hiring process itself may be overly rigid, with a heavy emphasis on traditional coding tests and a lack of focus on practical, real-world problem-solving skills. This can lead to a situation where even highly skilled candidates are overlooked because they don't fit a narrow set of criteria. Companies might also be struggling with internal inefficiencies or biases that prevent them from recognising and onboarding talent effectively. Addressing these issues requires a reevaluation of hiring practices, a broader understanding of what constitutes valuable experience, and a more inclusive approach to assessing candidate skills.
Furthermore, the rapid pace of technological change means that the skills and experiences required for many roles are constantly evolving. This can create a gap between what companies need and what candidates offer. Many job seekers may have the relevant experience but lack specific keywords or certifications that are currently in vogue, which can hinder their chances of being noticed. Additionally, the emphasis on cultural fit and soft skills in many organisations can sometimes overshadow technical abilities, leading to mismatches between job requirements and candidate profiles. To bridge this gap, employers should consider adopting more flexible criteria for job qualifications, focusing on candidates' ability to learn and adapt rather than strictly adhering to a predefined list of skills. Embracing a more holistic view of candidate potential can help to better align hiring practices with the dynamic nature of the tech industry.
In conclusion, the current state of the job market reflects a complex interplay of evolving skills, rigid hiring practices, and mismatched expectations. Despite the abundance of job openings, many qualified candidates struggle to secure positions due to unrealistic job descriptions, outdated evaluation methods, and a narrow focus on specific credentials. To address these challenges, both companies and candidates need to adopt a more flexible and forward-thinking approach. Employers should reassess their hiring criteria to emphasise practical problem-solving abilities and potential for growth, rather than strictly adhering to traditional qualifications. Meanwhile, candidates should focus on showcasing their adaptability and real-world problem-solving skills. By fostering a more inclusive and realistic hiring process, we can better align the needs of employers with the capabilities of job seekers, ultimately leading to a more efficient and equitable job market.v