Hiring is a two-way street, if you send me a Hackerrank test before I've spoken to someone about the basics you will have immediately lost me as a candidate. Not even Google is this deaf to the human side of hiring.
This is a really important point that many companies don’t seem to care about. Some companies seem to operate on the assumption that everyone absolutely wants to work for them and that applicants will spent lots of time.
This lack of respect of or recognition of the value of applicants time will filter out what’s likely your most desired applicants, people with low amounts of time due to current employment or lots of leads.
There needs to be some interaction with the applicant to show you are worthy of a mini project or multi-hour hackerrank test. Your job description better be amazing with details to motivate an applicant to spend time on a test off the bat.
It's crazy how you complain about the lack of recognition for your time but refuse the shortest pipeline of interview. It's much easier to take a quick coding test online anytime, than to schedule phone interviews with HR and hiring managers.
I don't refuse the shortest pipeline of interview. I'm a big fan of pretty intensive interviews, both giving and taking.
My issue is about the shotgun approach of many recruiters. I don't mind taking a coding test, I think they're great. It's frustrating to have to take a coding test to find out the area of the company, or pay grade, or basic position info. Or being put into a phone screening for a Java position because the recruiter mixed up Java and JavaScript, etc. etc.
This gets worse with the higher level of effort test. I think that it helps when companies describe the position well. Otherwise it takes some sort of knowledge of each other before I think it's worth actually dedicating time.
It may be different if you're looking for a job full time while unemployed. But spending 10 hours of time is only something I'll consider if I think I'd take the position should the org want to hire me.
How do you know as the one being recruited these tests are not sent to 100 other programmers. Wasting time without wasting the recruiters time too is a no-go for me unless I would be desperate.
It's a three way street. One third of candidates don't try, one third can't do the only question that is to print numbers from 1 to N, one third succeed.
It saves a lot of time for everyone. Including time for the phone call with the team lead/manager where you will have the opportunity to discuss the role and the company in much greater details.