Hacker News new | ask | show | jobs
by ElatedOwl 3034 days ago
As someone responsible for hiring developers, these quizzes seem like an absolute waste of time. As an applicant it's almost insulting.

I've been a part of two great alternatives: a pair programming session with the lead dev and adding some features/refactoring a sample project.

I'd be curious if anyone here is responsible for hiring devs and finds hackerrank type tests useful.

3 comments

I am responsible for hiring developers, and I do find online programming tests very useful.

They serve as a relatively simple early-stage screen for applications from people we've never met. Ours costs each candidate 1-2 hours. But we do not require cover letters, which in the good old days might have taken about half that time, and been thrown in the bin.

Some may think no CS graduate would fail a test that let you choose any popular language to implement some basic string parsing. But in practice about half the candidates fail this stage of the hiring process, which saves us quite a lot of time. Yes, it costs each candidate an hour or so, but that's a feature, similar to the oft-proposed idea that sending email could cost one cent to reduce spam.

If you don't mind sharing, what size company and how often do you hire devs?

>Some may think no CS graduate would fail a test that let you choose any popular language to implement some basic string parsing.

I don't see anything wrong with basic screeners like that, but I have experienced some really silly stuff. Recently I was given a test that asked ~10 questions (some trivia, some paragraph type response), a few small simple questions (reverse a string, etc.), create a class to handle card games (poker, blackjack, etc.), and create a user repository... in 30 minutes. I felt like a dog at a dog show.

45 person office, hiring developers gradually and continually. But what I wrote also applied when I was at a 6 kiloperson firm and we hired a hundred developers a year.

Some tests will seem impossible to complete in the alotted time. Often that's intentional. It saves time for the candidates and gives a better spread of scores (very few will get 100% in some test batteries). But it can be disheartening. For these initial online tests I try to give enough time that most people won't really run out of time unless they get stuck.

I've interviewed and hired many devs. I find hackerrank style coding questions very useful in interviews and I agree with the superiority of your alternative suggestions.

Keep in mind that these quizzes are only one single part of a multi-part interview. Also keep in mind that acting offended by whatever style of interview you get may reduce your chances of getting the job you want.

You might be amazed how different answers can be on easy code puzzles, or how deep of a discussion you can have over a single line of code. The easy questions might be easy for you because you're good, but often there is a low bar for the first round interviews for a specific reason: to weed out the people who have less experience than they claim and/or couldn't be bothered to prepare for the interview.

Also, when several or many candidates are being interviewed, it takes a lot of time just to administer low-preparation interviews. Pair programming, as nice as it is, simply can't be done by the lead dev for all the candidates without keeping him from his job coding.

Remember, the main thing your interviewers are trying to do is compare candidates against each other, so they need standard a way to see who's better than someone else. Hackerrank type questions are definitely not ideal, but it does what it says: rank people against each other.

I would absolutely welcome ideas for being able to rank people in programming skill with some method that is closer to pair programming but takes less of my team's time. The suggestions in the article here are lovely, but they don't help someone who's interviewing because they take too long to evaluate, and they're different than anyone else so they're much harder to rank candidates.

> how deep of a discussion you can have over a single line of code

That's the problem with HackerRank: You can't! Every single time I've tried one, it was a dismissive "do this on your own time and we'll check your answers".

Not to mention that their question sets tend to be full of puzzles, which are the type of thing where I'll have an epiphany over lunch, rather than something I'll figure out how to optimize in the ten minutes I have to code the solution.

> That's the problem with HackerRank: You can't!

Agreed, this is why I give my own coding quizzes, so I can have a discussion about it. I'm more interested in the thinking than the answer.

But, I do have sections in my interview that test knowledge and not skill, so I can still see the usefulness of letting Hackerrank be a part of the process.

The one thing I don't claim is that HackerRank or coding quizzes are perfect. This is why coding quizzes are only one of maybe six phases of an interview.

I've never used HackerRank personally (although I'm looking into for the next round of hiring I'll be involved in), but it seems it might be kind of useful as one step towards deciding which of the 50-100 candidates that applied you should invite to the pair programming session. You simply cannot have your lead dev doing pair programming sessions with 50+ candidates for each job opening.