Consensus at Google

Whether by personality or just experience I’ve always leaned towards decision making by consensus. Most recently, I’ve been employing the consensus approach with 5 of our senior java developers working to define our development guidelines and practices. That means we don’t have some really exact list of standards, but where we do come to agreement the guideline is a lot more enforceable than one decided strictly by management or a single architect. Even worse an architecture consultant selected by management who never has to deal with the results of their mandated ‘best practices’. Anyway apparently I’m not alone as this is the policy at Google:

Strive to reach consensus. Modern corporate mythology has the unique decision maker as hero. We adhere to the view that the “many are smarter than the few,” and solicit a broad base of views before reaching any decision. At Google, the role of the manager is that of an aggregator of viewpoints, not the dictator of decisions. Building a consensus sometimes takes longer, but always produces a more committed team and better decisions

Probably explains why they have three major languages in C++, Python, and Java instead of insisting on a single one.