It has become increasingly common for technology companies to run as Fully Distributed teams. That is, teams that collaborate primarily over the web rather than using informal, face-to-face communication as the main means of collaborating.
This has only become viable recently due to a mix of factors, including:
- the rise of “cloud” collaboration services (aka “web 2.0” software) as exemplified by Google Apps, Dropbox, and SalesForce
- the wide availability of high-speed broadband in homes that rivals office Internet connections (e.g. home cable and fiber)
- real-time text, audio and video communication platforms such as IRC, Google Talk, and Skype
Thanks to these factors, we can now run Fully Distributed teams without a loss in general productivity for many (though not all) roles.
In my mind, there are three models for scaling number of employees in a growing company in the wild today. These are: