I have recently switched teams and I'm in one where most programming but trivial tasks are done in pair. I can see lots of pros and few cons:
- knowledge sharing, especially business, domain, old code, etc. The biggest stopper in writing software in large organizations is rarely technical difficulty but context
- focus. If I'm alone I get distracted much more, music, youtube, socials, I know this is on me, but getting distracted while pairing is hard and rude. I'm also much more organized and a coworker is much better than a rubber duck.
cons:
- you are blocked from working if a coworkers schedule is not aligned
Overall I think pair programming makes in my, and most organizations produce more work than if the contributors where solo programming.
- knowledge sharing, especially business, domain, old code, etc. The biggest stopper in writing software in large organizations is rarely technical difficulty but context
- focus. If I'm alone I get distracted much more, music, youtube, socials, I know this is on me, but getting distracted while pairing is hard and rude. I'm also much more organized and a coworker is much better than a rubber duck.
cons:
- you are blocked from working if a coworkers schedule is not aligned
Overall I think pair programming makes in my, and most organizations produce more work than if the contributors where solo programming.