Preparing to Outsource: A How to Guide
So you have recognised a need for external assistance. You have weighed up all of your options and concluded that outsourcing would be the best course of action. Now you are probably wondering what you need to do in preparation before you jump into collaboration with an outsourcing partner.
To help find some answers we have prepared the following guide, written from the perspective of an outsource partner with many years of experience working with people who have already gone down that path.
Before we get down into the nitty-gritty of the body of this guide, we would like to just take a moment to go over some of the slightly less tangible topics.
Be ready to shift your planning process
For many organisations outsourcing is hard. It may sound ridiculous but it is true, and a significant contributing factor lies in the planning.
Under a contracting model, planning could take more of a back seat. Organisations could gather up bodies, place them into a project to get it underway and then deal with the planning factor later on. When it comes to outsourcing, the planning process needs to begin a lot earlier if you hope to get the biggest value in return. If you can approach your outsourcing partner with a well-defined plan identifying which parts of the project you want them to be responsible for, in return, they can provide you with more accurate predictions for their parts of the plan as well as their own understanding of the work and how that may be integrated with the overall project.
You must also consider the fact that it is much simpler to replace an unsuitable contractor than it is to step away from an outsourcing partner. So before you dive in headfirst, take that little extra time to do your research and settle on a partner that you feel confident in. Avoid running like a bull at a gate and ending up in a situation that you come to regret.
Be prepared to shift your mindset
In a similar vein, organisations that have a history of contracting, or that are new to the concept of outsourcing, need to be prepared to alter the way they view their project. What we mean by this is, when you contract you are placing your trust in the person in front of you. However, when you outsource, you are buying an end result and trusting an organisation to get you to that end result.
You need to be clear on exactly what those end results need to be, how they are to be integrated with the rest of the project and how you will verify that they are acceptable as this will need to go into the contract with the outsourcing partner.
Now with that in place, we can at last move onto the heart of the topic at hand.
Define your goals
A true project management basic, but always an important component for any development, is to define what you aim to achieve by the conclusion of your project. By establishing a clear understanding of your end goal, you will be able to efficiently communicate your ideas to both your internal team and eventually to your outsource supplier. The higher the degree of clarity, the lower the risk of miscommunication or misunderstanding between both internal and external resources.
Assign roles and responsibilities
Assigning management roles and their responsibilities while a project is still in its infant stages is another means of improving clarity and communication. Getting this structure in place provides both your internal team and the external software engineers with visibility of who they should report to for the duration of the development, and who needs to be updated in regards to the progress of the project. The end result should be a unified team, consisting of both internal and external resources, that have clear demarcation of responsibility and an understanding of where knowledge lies. With this in place then you should be rewarded with a higher level of productivity, key to ensuring that project deadlines are met.
Select your tools
While you will obviously need to prepare your new outsource partner for working on your project, you also need to prepare your team for working with your new partner. An easy first step towards this cohesion is to identify and outline the tools that will be used throughout the process.
For the purpose of consistency, you want to find a PM solution that everyone involved in your project understands how to use. Online tools such as JIRA, Trello and Basecamp are popular and come with their own specific advantages. Regardless of which tool you end up selecting, a process of use should be outlined and agreed upon with your outsourcing partner to maintain consistency.
Your team members time will always be best spent actually working on progressing the project towards its end goal. You don’t want them to be wasting time searching various platforms and neverending hierarchies of folders for specifications and other crucial documents. Setting up an agreed document-sharing platform beforehand, be it specific to your organisation or, at its simplest, a more generic tool such as Dropbox or Google Drive, can help prevent this unnecessary time slippage.
Seek out dependencies and obtain all the required accesses
Dependencies are a frequently overlooked factor that can lead to avoidable idleness within your new external partner as they wait on your IT or engineering departments. Before starting your cooperation, it may be beneficial to create a checklist of all the resources that the external team should have access to. This will be things such as code repositories, tools, target hardware and test equipment/simulators.
When developing and implementing features to a solution that is already active in a production environment with real users, you may wish to consider preemptively preparing a staging environment. Unless you are willing to account for this set up in the work expected from your partner, having this structure in place will reduce their development time and may help to keep costs low.
It is worth remembering that your outsourcing partner will care about your particular success. They are there to assist you with your development in any way they can, so you may find it beneficial to open yourself up to listen to suggestions if they are offered. Incorporating the views and opinions of all members of the team, both internal and external, increases the chances of critical factors not being missed. An outsource partner may bring that ‘fresh pair of eyes’ that enables processes to be improved and efficiencies gained that might be missed by an internal team that can’t see ‘the wood for the trees’.
Consider a post-development strategy
Amongst the relative chaos of starting a new project, it is easy to focus on the immediate problem of getting the development underway and forget about what will happen upon its conclusion. Who will be maintaining the product following its implementation? Will your staff need any kind of training from your outsourcing partner? How will you phase out the involvement of external team members? When engaging an outsourcing partner it may be worth considering these questions to help ensure that the handover process is as seamless as possible. A good outsource partner should also be willing to assist you in outlining and implementing a handover plan.
Hopefully, this guide will help you with your outsourcing preparations and you feel more relaxed with how to approach this process. For the next and final addition to this outsourcing series, we will share a few tips and tricks to help you find a top-notch partner that will suit the needs of your organisation.