This post is the first part of a series on setting up and scaling a distributed development team and addresses various phases involved in setting up a distributed team from its inception to success.
Among the various alternates to scale, if the option is setting up a distributed team to prepare an organization to handle the expected growth, a decision to establish one is a good starting point. However establishing a distributed team requires some ground work and preparation to realize the vision.
Starting from inception to embedding it requires an organization culture that enables participation (openness, transparency, trust). As the team embarks on its journey and makes the first steps, it needs continuous support in shaping up to its vision.
- The critical success factors (CSF's) for a distributed software development team are the build-up of the required levels of knowledge and the formation of a stable and critical mass to be able to independently operate and deliver its value, establishing collaboration with the other counterpart units of the organization.
- During the ramp-up phase, a defined approach for knowledge build up is needed. The approach should enable applying the technical/domain skills on various product areas and build a good understanding of the various work processes. Apart from the initial training, establishing team based mentoring helps in team formation (new recruits becoming a team) and integration across geographies, cultures, balancing skills and experience levels to give a head start and enable team collaboration.
- After the initial ramp-up, as the team moves into its stabilization phase, the CSF's change to managing the additions in people, assimilation of knowledge, settling down with the chosen way of doing work, balancing aspirations with growth opportunities apart from knowledge management and knowledge retention. In this phase, there is a need to prepare for some churn out and its impact on the short-term and medium-term plans of the distributed team.
In the next part, I will share my experiences on the aspects of Organizational preparedness for establishing and working with a distributed team and smart knowledge workers and their influence on the success of a distributed development model.
Rajaram Parimi has over 15 years of experience in Software R&D, Consulting. All these years he has been part of distributed development setups of major European software companies. He is been participating in Agile development since 2006 and successfully embedding Agile concepts and strategies in the various growth phases across multiple software development companies. In his last assignment he has successfully set up an offshore software development centre in Hyderabad, India for a major Dutch ISV and scaling it to a size of 50+ people and grooming the next level of agile leaders.