Hacker News new | ask | show | jobs
by glenjamin 1397 days ago
If I set a take-home test designed to take two hours, and then very clearly tell the candidate to take two hours, and then they clearly spent way longer than that, then I will consider that a signal that they don’t follow instructions well and don’t value their time appropriately.
1 comments

How do you know they clearly took over two hours?

We love talking about productivity here. You're telling me employers will systematically fail the candidates who performed most productively in their process, because of a speculation they took too much time?

Well, it's pretty simple if you don't given them the task until they agree they're ready to start, and then record when you receive the submission.

Any candidate capable of actually inventing a time machine should certainly be hired.

Haha yeah we implement 'soft time-boxing' by tracking git commit timestamps. It's not as stressful as having a visible timer and we won't block a submission that exceeds the recommended time, but reviewers can clearly see who took longer and their last commit within the suggested time, which helps to create an apples-to-apples comparison.

No candidate wants to be entered in the Hunger Games for who has the most time to sink into a take-home.

Most companies that use take-home tests don't use such systems.

Also, such a system does not prevent cheating, which is really the worst issue here.

And a reasonable response in any case is "Yah, I know you said that but I don't like to do sloppy work and there were clearly a number of different edge cases that needed to be handled for this to work reliably."
I've seen a middle ground where a timebox is enforced, but there's a discussion question for what next steps would be
Yes, this is what we do at my company. It's the only way this sort of thing is valid IMO... it's not a race, but I want to see demonstration of reasonable output.
That would actually be a huge red flag to me for hiring.

I don't want an architecture astronaut who is never going to ship anything.

An 80% solution when I need it is infinitely more useful than a 100% solution that's months late.

And I'd rather somebody admit that they took longer, say 4 hours to get to the 80% because they were a bit rusty, their IDE on their private machine wasn't as expected (e.g. Intellij CE vs the Ultimate at work), they had to look up how to bootstrap a service from 0 because they hadn't done that in ages even at work etc. than to under deliver a 20% solution in the 2 hours asked.

Limits are fine if you ask me. Give me a couple days in which I can do this on my own time and if my kid needs me for something 10 minutes after I started I can deal with it and just come back to the test an hour later. Specific hours? Screw you, not even gonna start.

The limit is the limit. If you don't finish in the time given, I want to see what you did in that time.
I'm with the GP here, I'd much rather give them a few days and advise how much time they should spend on it than give them a strict timebox - it allows for a lot more flexibility with other responsibilities.
And this would be the opposite for me. Someone properly thinking out the edge cases and handling them (or at least pointing them out in comments) would be much more useful in the roles I'd be hiring for.

I need a stable system that can tolerate the real world and handle messy inputs without shitting the bed. A new hire that shows they consider their inputs and handle edge cases is a better fit to me than someone who focused on that 80% solution and didn't bother sanitizing inputs and crashes because of it.