Let’s start here: Why do companies tend to outsource?
There are a lot of different potential reasons. It varies a little bit by industry. In general, though, the big reasons are:
Important projects The company has important projects where deadlines are not being met, and the project isn’t advancing, usually because the internal team is focusing on other things, or day-to-day work as opposed to longer-term projects.
The need for expertise The company wants to work with an outsourcing partner that has expertise in a specific area, i.e. software development. Some very popular startup companies of the last 10-15 years, including Slack and WhatsApp, were primarily built with outsourced, remote development teams.
The need to extend their team Your team (at your HQ) cannot do everything, because the day-to-day can overwhelm the longer-term projects, as noted above. But you also can’t hire any outsourcing partner, because then there might be personality or work style clashes with your existing team. You outsource ideally to find an extension of your team.
Cost Some companies outsource because it is a cheaper, but more dependable, way to get key projects done. You get expertise but it doesn’t involve all the processes of hiring full-time employees -- and it has less risk, especially relative to cost.
Those are the big reasons companies outsource, but again, they can vary.
What holds up the process of outsourcing?
What we have usually seen is a dance between short-term and long-term. It goes like this:
Short-term A company is concerned about all the things it needs to do in order to be ready for an outsourcing partner. That means organizing projects, organizing specs, organizing guidelines, setting up meetings between the outsourced team and your team, setting up sprints, managing backlogs, etc. It can feel like a lot of work in the short-term and it interferes with the day-to-day work you need to get done. Right now is a specific, tangible example of this: a lot of companies are trying to get a hold of the pandemic and stay ahead financially. That is their day-to-day focus. So preparing for an outsourced team slides down their priority list.
Long-term Most companies that use an outsourced team -- at least we have found -- tend to like it. And here is the paradox: at the beginning, as you were trying to get ready, you had many tasks. Once the outsourcing team is working on your projects, you have very few tasks. They take a lot of the work off your plate.
You can think of it almost like a sprint. There is a lot on the board (a lot of tasks) at the beginning that need to be done. As the relationship grows, though, there are many less tasks. But … it can be scary to think about all the things that need to be done to get ready for a software development outsourcing partner, and that (the fear about doing all these tasks) is what holds up the process.
“Inverting the risk continuum”
That is a business term. It means that a company spends most of their time on decisions of low risk and low value. They do this because of low-risk, low-value work is easier to control. Thinking about bigger business topics and core functions and future of your company? Those are harder discussions and decisions to make. They require more information, and they seem scary -- if you get a “core function” decision wrong, you could harm your company. But a small task? That seems OK to focus on, because if it gets messed up, it will not change the future of the company.
So people tend to focus on smaller tasks with less value more. It makes sense.
But, long-term that’s not good for your business. When everyone is focusing on lower-value smaller tasks, you have a team that is checking boxes, answering IT tickets, reading emails, going to meetings, doing stand ups where they say what they have for lunch, etc.
That company will not last.
So you need a mix between “the small tasks that must be done” and “the bigger picture of the company and where it’s going.”
And now back to the cost and expertise element
Right now, especially, companies are very cost-focused. Facebook is one of the biggest companies in the world, and while they are hiring right now (good!), their executives also admit they are “trying to keep the lights on.” Many companies globally are in hiring freezes or furloughs. People are, legitimately, not getting hired or paid.
But: work is still there. Projects are still there. Some of those projects have already been paid for. People who paid for them? Those other companies? They still want results.
So work needs to get done, but hiring probably isn’t an option at this exact moment -- and since we don’t know exactly how long the health or economic repercussions of coronavirus will last, hiring might not be an option for much of 2020.
OK. So this is a problem. You have work, that someone paid for, that needs to get done. But everyone is focused on the pandemic and keeping the day-to-day going. And you probably are not hiring.
So now what?
Well … you just arrived at the moment you know it is time to outsource. Now all the small things you would need to get ready for an outsourcing partner -- sprints, backlogs, requirements -- are worth it. Because you will get a team, at a lower cost but with expertise, who can do the work you need to be done.
This is your moment.
But what should you be looking for?
Glad you asked. We actually prepared a checklist of considerations when evaluating outsourcing partners, especially software development outsourcers. Take a look at it: