As a paradigm for coordinating cooperative agents in dynamic environments, teamwork has been shown to be capable of leading to flexible and robust behavior. However, when we apply teamwork to the problem of building teams with hundreds of members, fundamental limitations become apparent. We have developed a model of teamwork that addresses the limitations of existing models as they apply to very large teams. A central idea of the model is to organize team members into dynamically evolving subteams. Additionally, we present a novel approach to sharing information, leveraging the properties of small worlds networks. The algorithm provides targeted, efficient information delivery. We have developed domain independant software proxies with which we demonstrate teams at least an order of magnitude bigger than previously published. Moreover, the same proxies proved effective for teamwork in two distinct domains, illustrating the generality of the approach.