This MBA Mondays topic was suggested by Aviah Laor, a regular member of this community.
I'll start this post by describing outsourcing and explain why companies do it. Then I'll talk about outsourcing in the context of startups.
Outsourcing is when a company hires another company to perform certain functions. Wikipedia defines it as "contracting to third parties." The term has become synonomous with the transfer of labor/work overseas, but outsourcing is not geographically defined. You can outsource work to the company across the hall.
The two primary reasons one company will outsource work to another company are cost and skill set. The third party outsourcing company can provide the required work at either lower cost or higher quality or possibly both. Sometimes time is also a factor. It is often the case than an outsourcing company can get the job done faster.
All kinds of business functions can be outsourced. I have seen almost every part of a business outsourced at one time or another. But the most common things that companies outsource are software engineering, data entry/data hygiene, customer service, tech support, and financial record keeping/reporting.
Startups are among the most active outsourcers. It makes sense. Typically the founding team has skills in one or two areas and doesn't have the entire set of skills to launch a business. So they outsource the tasks they don't have the expertise in. This can be a good thing but can also be a bad thing.
Specifically, I think it is always a bad thing for the founding team of a software company to outsource software development. We see this a lot. A team will come into our office and pitch us. When I ask how many people they have, they say "this is all of us". Then I say, "who is writing code?" And they say, "we've hired a company to do that for us." That is a very disappointing moment for me because it means we almost certainly won't invest in that team. We believe that software companies must own their most important capability themselves and that is the ability to produce their product in house.
The founding team of a software company should have a strong product manager on it (often that is the founder) and should have at least several strong software developers on it who can write most of the code. It does make sense to outsource some parts of software engineering from time to time. A common thing we've been seeing recently is outsourcing the development of a blackbbery app or some other kind of mobile app. Right now, that is still a fairly nascent skill set but we are also advising most of our portfolio companies to bring individuals in house to do that work because it appears that mobile app development will be a key skill set for our portfolio companies for some time to come.
It is tempting for startups to want to outsource customer service and tech support because these are labor intensive activities that can be fairly easily outsourced to a call center, either in the US or even outside the US. At some point, most companies will outsource some of all of this work. But we do not believe startups should outsource this work until they are "all grown up" (whatever that means). Customer service and tech support are the best way for startups to talk to their customers. Sometimes it is the only way startups get to talk to their customers. And customer feedback is so very important to startups so it is critical for them to do this work in house.
Data input and data hygiene is one area that we do think startups can and should outsource. This is not strategic for most startups and is often costly and time consuming work that can be easily outsourced.
The function that most startups outsource in the beginning is financial record keeping and reporting. And that makes sense. Accounting and bookkeeping is a specific skill that most founders don't have. By outsourcing it, you make sure your books and records are kept accurately and up to date.
I am a fan of outsourcing in general. I believe companies should develop those skills and functions that are their core competency and outsource the skills and functions that are not. I believe that the US should invest in outsourcing instead of demonizing it. I believe there is a lot of opportunity for economically weak regions of the US to use outsourcing to build their economies and grow.
But for startups, outsourcing is a tricky issue. You should not outsource those things that are core competencies or critical feedback points. If you don't have the skills on your founding team to do that work, go find people who do and either hire them or bring them onto the founding team.