Software interviews are pretty dystopian. Everything is wrong about them.
But what’s next? How can we fix this?
We invented the take-home test, which seems to split the difference between finding out if this person has any technical ability at all, and testing a candidate’s ability to remember minutiae under completely contrived circumstances (combined with a little hazing, as a treat).
But even take-home tests have problems. For one thing, they favor people with free time – so if you are part of a working couple, 2 kids, a dog, and a house, it’s likely you are going to have a lot less time for your take home than the single, 27-year-old hacker who owns a futon and a Macbook (and little else). I’ve done interviews where the take-home test was in reality an excuse to make me do more whiteboard coding. After all you have to prove that I did the work!
A few places do this thing where, after you’ve run the gauntlet of interviews and whiteboard coding, you then work as a contractor for some time, to see if you can actually do the job. This seems to smart on paper, but JESUS. FUCKING. CHRIST. It takes even the smartest a solid year to really get going. You’re asking them to make extra work on their taxes; I mean who cares, we’re all crazy smart and overpaid, no big deal, right? And what you’re really doing is building a culture of overwork. After all they are gonna bust their ass for that 6 weeks, if they really want the job. Well now guess what the bar is set at.
We started all of this because … well I don’t know really. In the old days you’d just call their references or make some random guess at which candidate was good. But we got a culture of “make the monkey dance because working here is a privilege” out of it.
I think we’ve painted ourselves into a corner. We programmer types are all vastly overpaid, and have frankly ridiculous overall compensation and benefits. I have unlimited time off, extremely good insurance, all manner of benefits, we get free food and snacks, a company Uber account, and more. So to justify all this pampering we do weird gatekeeping.
Ignore the fact that all of us have to constantly look up the arguments to some function or whatever. We all fuck up all the time. If you’ve never broken the build, you’re not trying very hard.
I had a big kerfuffle at work and started thinking about it all; what if I got so mad I walked away? Which is worse: the bullshit from *gesticulates wildly* all of this, or going through the software interview gauntlet again? I dunno, man.
Anyway here’s Wonderwall.