What to Consider Before Hiring a Dedicated Software Development Team
When the number of tasks related to supporting current projects or developing new ones grows too big for you and your team to cope with, hiring a dedicated team can be a good solution to extend your development capabilities.
In this article, we provide a brief overview of the dedicated team collaboration model peculiarities and share some hints on what to keep in mind while choosing the option that would fit your business goals best.
So, here we go!
What the Dedicated Development Team Is
Before talking about the advantages and disadvantages of the model, let's figure out what a dedicated team is.
The dedicated team model means an obligation from a supplier to staff or hire a team of experts to work on your project/projects on a full-time basis (or part-time within an agreed involvement level, e.g. 0,5 FTE). Depending on a contract type, the service provided by a supplier could also include people management, team governance, technical excellence, etc. However, the basic flow remains unchanged: the customer generates requirements and takes care of the scope of work, while the supplier is responsible for the development team that would work on delivering that scope.
This model can be a perfect match for your company in the following cases:
- You need a team for one of more large projects being developed in your company;
- You have an idea of potential projects and understand that requirements may and will change through the development process;
- You have your own team and need extra hands or professionals with certain expertise;
- You are quite flexible with the budget and timeline.
A dedicated team is not a good idea if:
- You plan to develop a small or medium-size project with a fully documented and clear scope;
- You need to align the project budget with the scope of work.
It makes sense to consider project outsourcing option if any of the two statements above is true.
Dedicated Team Members’ Skills and Composition
Once you have chosen to go on with the dedicated team model, the next step would be defining the team composition and competence level for each of the specialists you need. This is a very interesting and important question. We have a detailed article describing roles and responsibilities split between an in-house and a remote team.
Nevertheless, the basic rule of thumb is quite simple: if you need to extend your existing in-house team, then look for the specialists with the competences you lack. If you do not have an in-house team or if you need a team that would deal with an independent scope of work, then you need to hire the full set of specialists.
The easiest way is to start with a small team and gradually add more members as you progress. However, if you want to start with a big team, you should walk through the following steps:
- Define the competences you lack/need and potential workload;
- Map those to potential team members to define the amount of people you would need and what competence level is required to accomplish the tasks you have;
- Forecast additional management efforts for the people in existing team or a separate remote team. You need someone experienced enough and willing to take over those management responsibilities. if you do not have the opportunity to engage such a person to the project, think of asking for a Project Manager on a supplier’s side (at least part-time).
A great idea is to communicate with the supplier and ask for advice regarding potential team composition, skill set and competencies as well as best-fit ramp-up plan. Supplier’s representatives could also help you to define the specialists’ expertise level (how many seniors, middles and juniors to engage) and advise the roles you need to include and degree of their involvement (UX, Architect, PM, DevOps, software test specialists, etc.).
How to Choose the Best-fit Region for Software Outsourcing
Once you have defined the team you need, the next step is to define the region where the team can be located. There are so many factors matter and it is important to choose the region that would meet your needs and expectations best. You can hire a team in your own country or find a team abroad. Peculiarities of local supplier are mostly the same language, time zone and cultural background. While a foreign supplier may be better in offering commercial proposition (or higher quality for the same price) or a wider resource pool.
Here are some key points to consider while making a decision:
Total cost of ownership
Three major factors have a big influence on the budget you would need to spend:
- Average hourly rates – those differ a lot depending on the region. Emerging destinations usually boast lower hourly rates. However, this often implies a more management overhead compared to a seasoned outsourcing destinations where suppliers already have well-established processes and a lot of experience;
- Seniority level – this also may differ depending on the region. Middle developer in one region may turn out to be a senior developer by another region’s standards;
- Potential overhead – when we talk about dedicated team, it is important to understand that the efforts you would need to make to manage a remote team vary depending on the region and supplier’s maturity. Thus, you should also include these activities into your calculations.
Convenience & transparency of communication
Transparency and easiness of communication usually have direct influence on the efforts you make to manage and communicate with your remote team. It is worth paying attention to time zone, working hours overlap, cultural similarities and differences, the nuances of doing business, etc. This will allow you to choose the region that you would feel comfortable in.
Resource pool & staffing speed
Team staffing speed is important, especially for big projects where you need to start and ramp-up fast. Obviously, suppliers located in the regions with wider resource pool offer faster team staffing. However, this might also mean higher attrition rate eventually resulting in more overhead, additional losses on knowledge transfer and high turbulence in the team. If this is something you are not ready to deal with, try to consider regions with lower average attrition rates and try to find the supplier who would be able to meet your staffing needs.
How to Choose a Supplier
It is hard to underestimate the importance of choosing the right supplier. Any outsourcing region you could choose offers suppliers for every taste and need: from a small group of freelancers to large companies with hundreds of employees and from niche software boutiques to cross-functional companies that are able to manage any type of task.
It is easier to decide if you first evaluate the complexity and importance of the project to your business and your own experience, and then follow two simple rules:
- The more complex and important for your business the project is, the more reliable and competent the supplier should be:
- The less experience in remote team management and outsourcing you have, the more experienced your supplier should be:
Here goes a brief list of things that you should keep in mind to evaluate the potential supplier’s experience and reliability:
- The business reputation of the supplier;
- The way the supplier negotiates (how fast they reply, how well they keep deadlines) and the quality of provided input;
- The amount and statuses of completed and ongoing projects (projects’ complexity levels and supplier’s contribution to them) and expertise in the domain industry;
- Another suppliers’ feedback (ideally, but not obligatory in your domain area).
With the dedicated development team model, the most important is supplier’s experience in establishing and operating teams of similar size and composition. However, domain expertise also matters, as supplier would know your business needs and restrictions. Also, this is an opportunity to come up with valuable insights, or even suggest you some own ready-made modules or components you could reuse.
How to Choose Optimal Software Development Contract Type
As there is no standardized classification of software development contract types, the terminology may vary depending on the suppliers, so the best way to determine which contract type would suit your needs best is to discuss with the supplier what is included in the offered service package.
It is important to distinguish projects (Fixed Price, Fixed Price/Flexible Scope, Flexible All also sometimes referred to as Time&Materials) and teams (Hosted Team, Limited Liability ODT, Dedicated Team) types of contract. The main difference between those types is that the former requires the supplier to take over the commitment to deliver certain scope of work while the latter requires the supplier to take over the responsibility to deliver experts who would work on your assignment. This also means that for the project contracts your potential budget will be aligned with the scope, while for the team contracts the budget should be aligned with the team size and composition as well as the set of included services.
The most common contract types for dedicated teams are:
If you go with this contract type, the chosen supplier will hire professionals you need, provide them with the infrastructure needed and basic administrative support.
This way you get required experts hired in a remote location to work on your assignment, while team management, motivation, workload, performance, etc. remains your responsibility.
Limited liability dedicated team
This contract type extends supplier’s responsibility with people management, thus, relieving you from team motivation and professional growth activities. However, team management, technical excellence, governance and workload management still remain your responsibility.
This model puts more responsibility on the supplier, who would commit to build a team for you, arrange communication and delivery processes, make sure those fit your organization needs, provide technical excellence and performance control, take care of project knowledge and domain expertise retention. At the same time, you could focus on strategic tasks and be free from micromanagement.
As you see, the choice of best-fit contract would, again, boil down to defining your own needs and what the supplier could take care of. To choose the best-fit contract type you can discuss your concerns with the supplier, listen to the options they offer and choose the one that you find most suitable.
Ways to Manage and Control your Dedicated Development Team
Team governance is very important part of the collaboration process and you would need to understand how the current implementation and speed complies with the requirements and the pipeline. Thus, it is important to define control and influence methods in the early stages of collaboration.
The key aspects of an effective work are transparency, predictability, and manageability. This can be achieved if the following areas are covered:
Efficient communication is essential for remote team integration into your company’s everyday work routines. For this purpose, you can use a variety of tools: regular meetings, video chats, messengers, ad-hoc question discussions, etc. On-site meetings, if possible, are also great practice as they build mutual trust and positive personal relations.
KPIs allow you to understand whether your collaboration brings expected results, as well as to predict the development vector and plan further steps. The KPI system should be well-defined, transparent and clear to all participants. The perfect way is to define and approve KPIs together with the supplier to make sure that you are on the same page with what and how to control. Moreover, the supplier could add some valuable points based on experience from previous assignments.
A good idea is to reach an agreement with the supplier about team reporting. There can be weekly, monthly or quarterly reports, which may include a detailed description of performed tasks, blockers, solutions, and tactical/strategic plans for the next iteration. It is important to share your feedback on the reports provided by the team – this will both motivate the team and help them identify areas for improvement.
How to Make a Dedicated Development Team Scalable
One of the major things that differs the dedicated team model from in-house staffing is its flexibility. Thorough resource planning allows you to forecast peaks and drops as well define the degree of involvement for the specialists you do not need full-time (e.g. UX/UI designers, Information Security experts, etc.). In order to safeguard your dedicated team scalability, it is important to do the following steps:
- Discuss the possibility to add peak resources, decrease team size, add narrow specialists for a certain period or have some specialists involved part-time with the supplier as well as set the rules for such changes in the contract you sign.
- Introduce joint resource planning practice (especially if you have several teams working on different projects with the same supplier). This procedure is usually conducted at quarterly steering group meetings and allows supplier to plan resource allocation upfront.
At first glance, all the things above may seem complicated and intimidating. Options for contracts, business models, many nuances at each stage…
But in fact, everything is simpler than it seems.
Remember that communication is the key to any success. Talk to your colleagues, potential suppliers, and their customers. Share your expectations and concerns, listen to possible suggestions. This will help you to find the supplier who would fit your needs best. This is a great opportunity to elaborate a joint vision of future collaboration and gradually progress in turning it into success.
Also, keep in mind that a good supplier is as interested in successful collaboration as you are. Because their business is about supporting your business with dedicated experts and helping it grow (expanding collaboration and getting more positive references if put in less pathetic words :)