How to Pair Program

Benefits of pairing

  • I would leave work happy. Like any engineer, I love to talk about code. Pairing lets me discuss code while not floundering on my responsibilities.
  • I could work on any part of the codebase. After an engineer writes some code he naturally becomes the owner of it and nobody else ever understands it. Pairing resolves this and as a result the codebase is understood more comprehensively by all.
  • I got way more done. Not being able to tab over to Reddit or email is a big part of this, but it’s easy to get distracted by stuff that is work-related as well. Pairing doubles the number of people making sure you’re working on the specific task at hand. This doesn’t feel like your elementary teacher looking over your shoulder by the way, it’s a lot more natural than that.
  • I wrote better code. It’s like you have a human debugger looking right over your shoulder. Testing works especially well here too, while one developer is writing code, often the other is thinking about how to test against it — or the other way around for TDD.

How much to pair?

Pairing is practice

Pairing Guidelines

  • Why you are pairing? What’s the goal?
  • What tools and techniques do you suggest the pairs use?
  • How/When will pairing and matchmaking happen?


Who should drive?

Whose project should we work on?

Remote vs Local

Pairing is Learning




New Blog:

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Jeff Dickey

Jeff Dickey

New Blog:

More from Medium


On A-tree: Sequoia Arc

Valuing Self and Others

憂鬱 f.t. 內向者 | Depression f.t. Introvert