Yet scaling becomes absolutely essential for a company doing anything sufficiently complex. The question is how do you maintain that small team efficiency across an enterprise. It seems that business and engineering are very similar in this regard in that the ultimate baseline problem to be solved is managing complexity. The answer seems to be in adhering to the Unix philosophy of tiny, self contained, composable parts which can be easily reasoned about and composed with.
The unix philosophy of composable teams can only happen when the communications are clear, concise and don't generate much, if any, overhead. I'd love to see a company with a CCO - Chief Communications Officer - who has a team responsible for making sure that the information passed among the various parts of the organisation was effective and free of bullshit or grandstanding.
As teams grow, not only do communication channels increase exponentially, individual contribution decreases overall and there is less ownership/responsibility so people care less i.e. a team of 100 has 99 other people to pick up slack, a team of 1 has noone else, a team of 3 has 2 people that will let the third know of slackage, where a team of 100 may never be able to apply that.
Small teams get it all done, and sometimes single people, especially language designers like Guido, Stroustrup, Ritchie, Matz, Eich, etc and especially in the beginning.
Small team strategy even in big companies is very smart and effective to get the best performance out of each contributor. Small team configuration does give some power and worth to employees though so it isn't used as much in large companies that looks at employees as resources in a machine. Employees as resources may work for established products/processes but rarely research and development or creative products.
[1] https://pm.stackexchange.com/questions/14907/number-of-commu...
> n(n-1)/2
> exponentially
I see this a lot in mainstream media (who simply can't help themselves) and increasingly so on HN (where we should know better): using "exponential" as a synonym for "explosive". I'd love for all of us to stop that. n(n-1)/2 isn't exponential growth, it's quadratic, and once you're at more than 10-ish team members the difference is enormous :-)