My experiences with pair programming

Pair programming has been one of the buzz techniques for a while now. In our industry, you can find groupies of it, professionals who understand its value but don’t know how to practice it and others who don’t see its value but will defend it anyway. Its value has been proved over and over again, so any developer who talks against it will lose points with his peers.

But I’m not here to talk about industry trends and tabus (microservices as the new default solution). but about my experiences with Pair programming, what I’ve learnt and where I’ve found value using it. This is the direct response of a “Which are the downsides of pair programming?” question during an interview. So… let’s start!

In most situations, when I’ve worked with developers pairing (either between them or with me), I’ve got way more out of it than the downsides. That’s why I’d love to start with the obvious advantages of the technique:

On the other hand, I’ve also discovered that Pair programming doesn’t have the same level of productivity (nor viability) on every given situation.

Which are your experiences with Pair progrmaming? Did you find it useful? Did you like it?