OP here. I strongly disagree with the assertion that pair programming isn't helpful in sensitive or mission critical applications.
Braintree's core product is a payment processing gateway. If we go down, get hacked, or introduce serious bugs, our customers can't run their businesses. As I said in the article, we pair for almost everything, and we find it helps us write great software that stays up and stays secure.
I didn't mean to actually lay out categories where one style is more effective than another -- I don't have that experience. I was simply proposing a framework to think about the differences between development teams and how that might affect the effectiveness of pair programming. Obviously, "web" projects have significant security and performance requirements, which could definitely benefit from pair programming in your context.
I should have focused on the distinction between the size of companies -- that seems like a more accurate framework. I suppose I meant "performance" in the sense of low-level algorithm efficiency rather than high-level scalability and reliability. A misuse of the term on my part.