In this post I will outline some of the benefits I have witnessed of Pairing. Pairing is not limited to just programming and can be applied to creation of any artefact or task, for example an email, a presentation, a document, a course, etc. The challenge with pairing is always trying to get on the same wavelength as your collaborator.
The quality of the product produced, in terms of subjective and objective measures have been better.
Benefits for the person
It's more fun, more social. When you are used to it.
There are less distractions from outsiders from the task at hand.
- Work-life balance
Work more set hours in conjuction with your team mates and less overtime.
Constant stream of feedback from different sources. We are less likely to stray from the problem or to over deliver.
- Rapid up skilling
Knowledge transfer is super fast. Learn by doing.
- Professional Freedom/Mobility
Since others have learned from you, you can move to newer more interesting work because your excellent performance hasn't locked you into your current project.
Benefits for the organisation
- Cost Neutral in short term
Work is completed faster than if each individual worked on separate tasks. Almost twice as fast.
- Quality cost savings in longer term
Bugs avoided. A lower defect rate is injected into product.
Once a critical mass of pro pairing people is achieved, we have better morale and a happier workforce.
- Knowledge Transfer
People learn by doing with the experts. Beats courses, books, conferences, videos for effective learning.
- Better "Bus-Factor"
More people know how to do more of the tasks in a team.
- Natural enforcement of attendance policy
There is a peer to peer commitment to work common hours.