First and foremost, top tech companies encourage autonomy. It’s hard to achieve or support autonomy for an engineer if they become too reliant on pair programming. It’s also difficult to scale teams and projects if you need a well matched pair to execute on them. Good pairs are hard to find and harder to sustain. And a fair number of programmers like their independence and aren’t excited to pair all the time. For these folks, pairing can be a big tax.
And I have come across engineers who become individually far less effective without pairing, so it can become a crutch. And over time, it becomes really hard to continue setting them up for success. Their pairing partner might leave or simply lose interest in constantly carrying them.