So today we had a candidate in for a second interview. This is our last interview, so by now everyone who needs to talk to the candidate has done so. We sat down together and held our interview postmortem. It was.... okay. Every interviewer had the feeling that the candidate was okay but this wasn't a solid must hire. And then Chip said something that pretty much exactly reflects my hiring policy:
If it's not a "hell, yeah", then it's a "no".
Either my entire interviewing team is going to think that this is a good candidate who would be a great fit, or else there is a strong risk this would be a bad hire. Given our conservative strategy, any doubt means don't hire.
It turns out that hiring isn't a continuum - bad candidate, okay candidate, good candidate, great candidate. Hiring is a binary operation - good enough candidate, or not.
Note: I'm well aware that the consequence of this is that I interview a lot of candidates and take a long time to fill a position. It probably also means that I've turned down a great engineer or two. However, it prevents a bad hire and that alone is worth it. I'd rather have an empty slot than drag my current team down by filling that slot inappropriately.