Hey there 👋
My name is Guillaume and back in a previous role, it was challenging to hire good software engineers. I would get local and offshore candidates but they didn’t perform well once onboarded.
To hire candidates, the hiring workflow was:
This was okay for some times, but it presented some issues. Some (many?) of the candidates we hired were poor at communicating, slow at delivering and didn’t offer the level of skills and experience I was expecting. This caused a lot of extra work: the team needed to pick up their work, I had to run PIPs, give feedback, liaise with HR, etc. More importantly, I was also wasting the engineers time.
In short, the coding challenges was not good enough to assess candidates.
Solving a HackerRank coding challenge is hard and require skills (unless if you’re using AI), but there are many other skills that are not assessed, such as communication skills, adaptability to changes of requirements, balancing short term vs long term, etc.
A coding challenge only assesses that the candidate can code, and it’s important, as an engineer to know your craft. But being a software engineer is so much more than just coding.
When I run interviews, I want to know how candidates think and how solve problems. Do they jump to code straightaway and correct later, or take their time to weight all the solutions? Do they code only to solve this issue, or do they foresee potential issues when scaling?
I don’t know the answers to those questions with a take home test.
I also want to know how the candidate reacts when they develop a poorly designed solution, missed a requirement or over-engineered a solution.
What if the candidate doesn’t accept constructive feedback? When faced with obstacles, do they come up with workarounds and solutions?
Once again, it’s quite challenging to understand with a HackerRank test.