Pair programming is a technique that allows developers to closely collaborate on writing one piece of code together.
We use pair programming for several reasons at DLSS. We feel that working together closely ensures that the code is written in a way that can be understood by more people. Pair programming prevents defects as you have someone to check your reasoning. Pairing can also be used to educate people on code that is new to them when you pair with someone who has more experience.
We use pair programming on an as requested basis. It's up to your team to decide when this practice adds value and when you're better off working a problem alone. If you would like to pair on a task, standup is a good time to ask for, or offer, that opportunity.
DLSS provides several pairing stations that are ideal for this activity, where conversations will not disturb others. You can also pair remotely with someone. We've had success using Slack screen sharing for this.
Further resources: https://xebia.com/blog/practical-styles-of-pair-programming/