I’ve paired with a pretty decent handful of people, now — enough to know what it feels like to be grooving a little bit, coming up with ideas together, bouncing creativity and stupidity off one another until something lovely (or “good enough”) emerges. It’s delicious. It’s maybe exactly what humans are for. That’s how it seems to me. I’m not going to water it down; I really think it’s amazing and wonderful.
And then there’s this thing called “interview pairing.” Yes, I realize I just put out a flag saying I wanted to be hired, but dang it, this isn’t about bad hiring experiences. — I think I’ve “done fine” in those situations, and I’m ok with me regardless. I am what I am. — But this is about my love for pairing, people, and creativity. I just have to say it: I smell a rat.
Pairing is a delicious synergy, where two people are working together to build something. They keep each other focused, add bits of brilliance to the midst once in a while, and they catch one another’s stupid stuff with good humor. After a particularly stupid moment, one says “And this is why we pair!” and everybody is happy. Or that’s the hope.
To do that takes two people giving what they’ve got, welcoming one another’s ideas, welcoming one another’s mistakes, and both thinking about how to solve the problem.
If one person is evaluating the other, looking for problems, how is she going to be a good pair? If the other is scared, or just feeling the pressure of being constantly evaluated, how will he be brilliant, energized, creative? How will you find out what kind of pair someone is if you approach pairing this way?
My guess is that it’s possible to either observe from the sidelines while someone pairs (preferably, for fun) with another developer, or to be particularly mindful while pairing with someone you’re also evaluating, so that it’s fun and creative, saving your evaluation for after the fact. (Ideally, a nice, blame-free retrospective that you do together?) But I’ve definitely seen evaluative pairing look icky, and friends have told me about similar experiences.
(This reminds me that one key to making the workplace open and creative is to encourage everybody to remember that we’re all doing this voluntarily. That is, a pairing interviewee can remind herself that we are checking each other out, looking for a match. Neither party holds all the power.)
Question for the smart people: Have you noticed this issue? Figured out a way around it? Or maybe you think people being evaluated should just buck up and deal? ^__^ Seriously… how does evaluative pairing look in your workspaces?
Interview-pairing is not pairing. It *would* probably help identify someone who claimed to have paired but actually never had.
Other than that, I’m not buying.
Does it predict success or failure at real-world pairing? Well, maybe, but only way out in the long tails. That is, only the very best and worst will do anything other than the range from “not bad” to “reasonably good”.
Does it predict raw coding talent? Not so much. Greenfield problems that take a couple of hours to solve, in a domain you don’t live in, are not terribly representative of the work of real coding.
Is it a good way to see if someone fits the team? Hmmm. I guess it’s not any better or worse than all the other possible ways to test that in a couple of hours.
Real-world pairing success is just too complicated, depending as it does on factors like these: which problem we’re solving, how much domain knowledge we have, whether the partner is confident or timid, the nationality of the pair, the time of day, the status of the car payment, the layout of the keyboard, the difference in the chairs, physical health, individual styles, and on and on.