I'm usually open to coding challenges when the challenger is going to dedicate at least 10% of the time I've put for a feedback.
Some people think it's OK to ask the candidate to dedicate 2 hours, then send an automated email rejecting. I don't think this is polite, let alone respectful.
At least have the decency to dedicate 10 minutes to writing down three bullet points for why they were rejected.
We once asked someone for some sample code. Anything they'd done at university really. Let me tell you, the whole team had no idea that you could actually run Python code with such a formatting of tabs and spaces and whatnot, being a white space sensitive language and all. With all goodwill this still looked like someones first program that accidentally ran after fixing the interpreter/compiler errors. Imagine a printed out cover letter but you fixed the typo in your last name with a sharpie and it had coffee stains on them.
There are differences between "code this weird thing on a whiteboard" and "show us some code that you're not terribly embarassed about" (instead of searching on github)...
People use the take home tests the wrong way. They should be sent to a small number of candidates that are close to the final stage. But most people send them after the first filter. Then they waste both candidates’ and their time and also spend zero time to send any valuable feedback since the pool of candidates is big at that point. And this creates a frustration to experienced engineers not wanting to spend any time on such a process.
> But most people send them after the first filter.
I once got sent an automated email after applying to an org with a coding challenge before the first filter. Before even any recruiter/HM or anyone actually at the organization sent me an email acknowledging they received my application.
I initially bristled, and reached out to the generic "recruiting@" email that was present in the HackerRank email for the company, asking if I could at least have a screening call at minimum before committing time to a coding assessment.
They said no.
In the position of "needing work yesterday", I did the challenge.
I really like coding challenges when they're done in a productive way:
- Short and fully automated, for instance to skip an initial technical screening;
- Longer, but leading to a follow-up interview.
It's a tool, it can be misused. Be respectful and both parties can benefit from it.
It's like whiteboarding: I don't enjoy companies that expect me to have seen the problem already and regurgitate the answer, but it can be a pleasant experience too.
I think (moderately difficult) coding tests are a great tool since they establish a clear, and mostly objective benchmark for performance, which is hard to fake. While they certainly don't give you a complete picture, I think they are one of the most efficient tools for establishing a base line of competence with regards to both the interviewers and interviewees time.
Some people think it's OK to ask the candidate to dedicate 2 hours, then send an automated email rejecting. I don't think this is polite, let alone respectful.
At least have the decency to dedicate 10 minutes to writing down three bullet points for why they were rejected.