Hacker News new | ask | show | jobs
by jdlshore 673 days ago
These sorts of “gotcha” tests are silly. People are complicated, with many different personalities and behaviors. I can think of many reasons an excellent engineer might choose not to fix a broken coffee machine, especially in the stress of an interview.

If you want to know how somebody will work on the job, ask them to demonstrate the skills used on the actual job. This is called a “work sample interview.” (Leetcode problems don’t count, because most jobs don’t look like that. Neither do whiteboard interviews, for the same reason.)

If you want to know how somebody will behave in various situations, ask them to describe concrete examples of how they’ve reacted to those situations. Listen for deflection to hypotheticals and redirect towards lived experience. This is called a “behavioral interview.”

Don’t use tricks and gotchas.

4 comments

This test is even more nonsense than that, the idea isn't even to have them try and fix it, the idea is to think in your head what you think they would do.
Yeah this test is terrible honestly. I fix all my own appliances and vehicles including complicated and time consuming repairs and at the office I'd be the first in practice to fix the coffee machine myself too if I thought I could.

But in an interview is almost certainly say something like "after checking for a few obvious things related to normal operation of the machine per the owners manual, I'd inform and defer to my supervisor." Or something like that.

Because anything else is a liability. I know that in fact, no corporate manager wants to go on record authorizing someone who isn't a certified repair technician to attempt repairing an appliance. Some may not want me as an expensive guy wasting my expensive time fixing something that a cheap guy can. It wouldn't take long before the correct aanswer is: order a new one.

Now you could nitpick that how I'd act in actuality doesn't match what I'd say I'd do, and in some contexts that's fair, but most of the time, an interview is about saying the "correct" answers even when you know that's not how the world actually works.

That being said, there is ONE trait I think is a good universal gotcha if you can find a way to test it. To borrow a term from the Army: is the person a BF? ("Buddy Fucker"). I e. The same person who will use the last of the coffee grounds without telling anyone or replacing them is the same person that will leave your team hanging in other contexts. It's a personality thing and it leaks out all over the place. Not that that's the best example, but the type of person to be incredibly inconsiderate to the person that comes behind them is not the guy you want on your team messing up your codebase.

> This is called a “work sample interview.” (Leetcode problems don’t count, because most jobs don’t look like that. Neither do whiteboard interviews, for the same reason.)

They do count, job sample tests doesn't need to be exactly like the job just similar. There is correlation between performance on those tests with performance on the job, far from perfect but its much better than the zero correlation you get from these cultural fit tests or free form discussions.

There was found a reverse correlation (on a small sample at Google) the better you are at leetcode-like problems, the worse you are at the job.

The correlation is gone on a larger sample https://news.ycombinator.com/item?id=25426329

They're good for seeing how someone approaches a problem. Although with Leetcode everyone is just testing to see if you remember the One Simple Trick for that case instead of being able to talk through it.
Yup, exactly! I’m not even convinced this person is the kind that would stop on the side of the road when they see someone with a broken down car. Are they the type that would try to see if they could fix it? If not, why not? Why would it be different from this interview, on the flip side why would one expect all travelers to be good samaritans?

It’s great if this is this person’s personality, but not everyone is like this.