Google’s approach to scalable engineering
thebogles.com
thebogles.com
If you create a corporate culture that encourages developers to talk to anyone in the company to get their job done, regardless of orgchart, you get a system that re-uses other systems whenever appropriate.
There're some downsides too: if anyone can talk to anybody, then the software starts looking like everyone's been talking to everyone. This leads to some real WTF dependencies, eg. why does websearch depend upon GMail?