Back to news

What is pair programming and will it work on your team?

Pair programming or pair coding is two programmers working together at one workstation. One programmer is the driver that writes the code and then the other is the navigator who reviews each line of code as it’s typed in. Pair programming isn’t new but is normally associated with extreme programming. If you have never heard of pair programming before it may seem a little bit strange as it is quite different from solo programming but it does have its pros and cons.

Pros

Two heads are better than one

You’re going to come across a problem at some point during a project and if you’re working as a team it is very likely that one you will have encountered similar problems before or you may know someone else who has come across a similar problem. In addition, you’re likely to allocate the correct time to a problem quickly before going back to the drawing board. You and your team can also discuss better strategies which will result in fewer mistakes and bug hold-ups.

More efficient

Some people may argue that getting two programmers to develop a single programme may slow down the project’s completion time. The common notion is that by having them work independently they can build different features for a week and at the end, there will be twice as many features. However, studies have shown that people working on the same program are only 15% slower than when they work independently rather than the presumed 50% and you will probably end up with 2 sets of 95% features that can’t be shipped. Programming together can increase the net amount of actually complete features that are shipped.

Satisfaction

Some engineers find pair programming more engaging than programming alone and feel more confident with the solutions they come up with during the project. It also provides an easy way to get to know your colleagues better while you are in the office. Pair programming is a great way to reduce alienation in company and

Moral Support

Working as a team increases positivity about a problem. Sharing problems can make engineers and developers feel less defeated and more positive about trying again. It also means that it is harder to procrastinate. They’re less likely to be distracted which means more hours spent working on the project instead of just sitting at a desk eating up hours of the day.

Develops interpersonal skills

Collaborating on a project it can help a team appreciate the value of teamwork.

Cons

Team fit

Paired programming may not be suitable for every personality. Introverts would not be suitable for the role of a driver because they have to be able to develop out loud. It’s highly social and interactive so it’s important to make sure that the pairing is right. Some people work better alone and some senior developers may not be keen on lowering their output while pairing.

Mismatch

If you pair developers with a significant experience gap it can be beneficial to both of them under the right circumstances. However, it can lead to the developer with the most experience taking over and dominating the whole process. The less experienced developer is just left to watch and the benefits of paired programming will be lost.

Getting started with paired programming

Are you considering implementing paired programming in your team? There are some steps you can take to prepare.

Talk about it with your team. If some of your team is reluctant, start small with a team of developers that are willing to try it out. Pair programming should be implemented not enforced.

Get the set up right. Make sure there is enough space for your developers to work. Cramming two developers in one person’s cube will make for an uncomfortable and less productive space. Use computers and desk configurations specifically for paired programming.

Don’t overdo it or under do it. Doing it in short bursts of 1½ to 2½ hours usually work best.

The pair of developers decide how to divide the work and they should switch roles often.

Have you used a paired programming before? What are your thoughts on it?

Latest Blog Posts

6 Productive Things You Can Do During a Job Search Slump

Are you feeling stuck in your job search journey? Perhaps you've sent out countless CVs and attended numerous interviews, yet still find yourself facing rejection or a lack of responses.…

Read More

Job Hunting Tips For Neurodivergent Job Seekers

Neurodiverse candidates bring a wealth of unique skills and perspectives to the workplace. However, navigating the job-hunting process can pose unique challenges. From disclosing neurodiversity during interviews to finding employers…

Read More

Crafting Your Job Search: A Step-by-Step Guide

Whether you're considering a career change or re-entering the job market, having a well-thought-out plan is the key to success. In this blog post, we'll walk you through a step-by-step…

Read More