Pair Programming
Pair programming gets a lot of hype. Some companies swear by it. Others think it's a waste of two engineers' time.
14 Oct 2023

Pair programming gets a lot of hype. Some companies swear by it. Others think it's a waste of two engineers' time.
The truth is somewhere in the middle. Done well, pairing produces higher quality code with fewer bugs. Done poorly, it's an expensive way to make two people frustrated.
When to pair
Not every task needs two people. But some absolutely do.
- Hard problems. When the solution isn't obvious, two brains working together cut through complexity faster than one brain going in circles.
- Teaching how to think. Pairing isn't just about code. It's about showing someone your mental model. How you approach a problem. How you debug. How you decide between two options.
- Big skill gaps. A senior and a junior working together transfers knowledge faster than any documentation or code review ever could.
- New territory. When both engineers are learning a new language or framework, pairing reduces the number of wrong turns.
When not to pair
Routine tasks. Straightforward implementations. Anything where one person can handle it without questions.
Pairing on easy work wastes time and breeds resentment. Use it strategically, not as a default.
The real value
The best pairing sessions I've had weren't about writing code faster. They were about catching bad assumptions early, sharing context, and building alignment across the team.
Pair when it matters. Skip it when it doesn't.