Things are fast these days. Businesses accelerate to the point where you can no longer afford building a team the good old way and hope it will stay like that for years. Software development is a good example. For one, there is the famous skills shortage, with 40% employers struggling to hire ICT professionals. If you work in a rapidly changing landscape, there is a further problem: even if you somehow manage to find all the necessary talent, what will happen tomorrow? Will you need all the same people on board without having to modify the lineup? To solve these issues, there’s a little smart practice called Extended Team Model. In this short article, we will look at what it is, how to manage it and why extended development teams can sometimes be better than plain outsource.
What is an extended team?
An extended team is more or less what it sounds like – as a typical example, you have your core in-house team, and to this you add an extension: more professionals that work remotely. Typically, these additional specialists are recruited and supplied by a qualified provider as outsource developers. However, there are several important differences with “conventional” outsourcing.
First of all (and most obviously), the core team is not replaced, but reinforced. The skills and competencies that form the basis of the project are within it, while the extended team, residing elsewhere, provides additional important expertise. For example, if you have a business analyst, web developers and a 3D designer on board, but you also need QA engineers, an iOS developer and a UX designer, these latter will form the “extended team”.
Secondly, unlike a 100% outsourced model, there is actual ongoing communication – not just formulating requirements and treating the offshore team like a black box, waiting for it to produce results. The extended development team is fully integrated, communicating equally, and working as if they were all in the same office.
In a way, you can imagine an extended team not as an “extended family” (who one would most probably only encounter at Christmas dinners) – but rather as a smartphone in your hand. The smartphone is not technically part of it, but when you use it, it is something like a continuation of your body, with additional powers to grant you.
Benefits of having an extended team
The great thing about extended team model is that this type of collaboration provides both the benefits of software development outsourcing, and a cozy, friendly, same-office team. Here are just a few most commonly reported:
- Top talent on demand. Since the additional team members can be outsourced from anywhere, the pool of possible candidates is wider, and you can get exactly the person you need. For example, Flytika offers the services of carefully selected professionals in 30+ specialties, not counting specific narrow skills.
- Scalability. An extended team does not vanish after the project is over – it is modified according to the current needs. Starting with 2-3 external specialists and a core team at home, you can then easily scale to more professionals in the extension – and backwards, without any hurdles.
- Efficient communication and exchange. Unlike a “classical” outsource team that receives requirements, SoW, specs, and then occasionally contacts the client until they deliver the project, an extended development team is, well, a team. The members interact to the full extent, exchange their expertise, and often receive the same training. Sometimes it leads to both the in-house and external members acquiring more competencies due to the exchange.
- Flexible management. There are no unnecessary intermediate links, the line between the in-house and external parts of the team is blurred and almost non-existent (although the provider company may also offer a project manager is needed). With instant on-the-spot communication, there is more room for maneuver.
- Transparency. In addition to the full control you gain over the candidate choice, workflows and collaboration, there is the benefit of transparency in cost allocation: when providers charge a flat rate, it typically includes not only salaries but bonuses and other costs.
- Easy setup and operations. With an extended team, it is the external talent provider who takes care of finding and preselecting candidates, as well as all the operational details. As an example, Flytika provides offices, hardware, and other supplies for all the professionals (mostly selected from the pool of high-skilled Ukrainian developers).
- Real company culture, shared values and teamwork. Unlike a traditional outsource team, the extended team members do NOT live “in their separate universe”. They are closely involved in all communication, allowing them to understand the value of the project and be part of the team culture – a factor that is actually invaluable and influences outcomes to a considerable extent.
How challenging is it to make this collaboration model work? It is already more or less seen from the last point that as many difficulties as possible have been eliminated from the equation: this is, after all, the whole point. Thus, what comes next is a really short guide on what to expect once you decide to move in this direction – the path of least resistance for many.
Our developers fit to work in an extended team?
The short answer is: those available to engage in this way totally are. In no local developer community can you expect everyone to be able and willing to work this way – since extended team model has some requirements as to soft skills not all developers are required to have. We, although by now a somewhat idealized IT outsourcing destination, offers many great developers indeed, but naturally, those fit to work in an extended team represent only a certain percentage of them. This is why professional software development service providers have their own lists of who to offer this more exacting model of collaboration.
The selected candidates (and there are, in fact, a lot of them) have all the prerequisites:
- relevant technical skills
- soft skills:
- working knowledge of English
- communication and teamwork skills
- experience working remotely and knowledge of specifics
- cultural fit and openness
It is the work of the provider company to look at not just the programming competency, but also at what makes a candidate ideal for this very model of collaboration. There is a decent number of good programmers in Eastern Europe; in this case, it is the selection of those among them who have the best soft skills that makes the difference. Flytika does exactly that when setting up extended teams for our clients in Europe and the US.
The (shortest possible) guide to extended team integration
The entire process is an ongoing one, with quick and easy start – and subsequent perfection and adaptation to the changing demands. The involvement of professional service provider for recruitment eliminates and minimizes many of the steps for the client (i.e. the organization hosting the core team). In general, we can talk of the following stages:
- Filtering out candidates
- Ongoing work
At the initial step (also called planning), the current needs and resources are analyzed. What people exactly do you need? How many? On what basis are they to collaborate and what are they supposed to do as part of the team? In some cases, this analysis can be requested from the provider company based on the general needs and discussed with the customer to arrive at a perfect combination.
The recruitment part is tricky, as the amount of candidates can be breathtakingly high. This is why this is ideally the job for the provider company, who possess perfect knowledge of what specialists are available in their location (and an entire database plus knowledge of previous experience working with many of these candidates, sometimes down to psychological compatibility factors).
Onboarding here is the process of growing the two parts of the extended development team together into a single working unit. This involves communication from both parts, but first, creating the preconditions for this communication – choosing the suitable channels/environment, providing training and so on.
The last stage means continuous collaboration and improvement – this is a dynamic model, with the possibility to introduce changes when necessary.
How to hire remote developers?
Hiring remote developers is a skill (plus a couple of “lifehacks”) that needs some refining. To do this successfully, you need to (a) know where to look – e.g. using your current employees’ contact network, searching through job boards, etc.; (b) be ruthless when filtering out the candidates – and know what it is you are looking for; (c) be proficient in interviewing and reasonable in providing practical testing. Thankfully, there are professional remote software development companies who specialize exactly in that (and related issues) – thus leaving your hands free to works toward your primary business goal.
The processes of test tasks, initial and technical interviews, as well as negotiations are often done by the provider. At Flytika, only well-tested and scrupulously selected candidate make it to the pool of those suitable for high-involvement extended team work. It is always up to the client to choose whether or not to hold a final interview and conclusive filtering.
How to collaborate with remote developers in an Extended Team Model?
Maintaining an extended team presents no large difficulties once you are fully aware of what it really is – and stop treating it either as a fully in-house or a fully outsourced one. Practice shows there are four main points to consider:
- Provide proper onboarding to both parts of the team and any new members that got in with scaling adjustments. In a perfect scenario, whenever possible, make sure members from both parts receive the same (not equivalent, but actually the same) training. This will cement ties within the team, making it more efficient in communication and collective problem solving.
- For the initial period, set crystal clear, easy-to-follow procedures and roles. You do not have to insist everyone follows these prescribed workflows after two months, as the team will most likely develop their own, more adapt, more efficient means of sharing tasks and responsibility – just keep your and on the pulse and encourage whatever helps yield better results. However, at the very start you have to eliminate any possible confusion as to what comes after what and who should contact who in any given situation.
- Think of the best communication channels and enforce their use by all and everyone. Skype is the traditional favorite, but there are plenty of other options that may be even better in your case. The point is, everyone should use these channels, and if there are several, their functions should be delineated and separated from one another (i.e. email is for this, messenger for that).
- Provide the necessary tools and platforms for coordination, project management, version control, etc.
Common examples of an extended team in startups
The practice of using an extended team is gaining support, and there may be different variants as to how it is implemented. To name a few:
- We at Flytika, as a provider, started collaboration with the customer company by providing 2 developers into their preexisting team for building an application. These two developers worked at the office we provided along with other operational details, while being completely integrated in the customer’s team. After 5 months, another 3 developers join, and after short onboarding, work with the rest.
- The customer needs a quick amplification to their team, so the extension wing counts 7 specialists (4 developers, QA engineer and a graphic designer). After a while, when the crucial part of the work is done, the team is scaled down to in-house + 2 external developers.
- There is need for specialists with highly-sought after set of skills, which are typically found and employed on remote basis. The extended team is technically double-remote – with the core team, the extended additional wing – a development team, and the rare specialist working remotely, but with equal share of communication and equal “status” to the rest.
The list could go on and on – after all, this is a flexible, dynamic model conceived to fit ideally into different environments and needs. Coupled with a pool of thoroughly preselected candidates from the developers community collaborating with Flytika, this means an easier path to immediate efficiency. You can contact our dedicated specialists to request more information and start working on your project as soon as possible.