Posted on by Fred Wilson & Jason Li

031 - outsourcing

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.


From the comments

David Semeria added:

Startups should never outsource any activity which involves customer contact.

Offering amazing customer service is one of the few areas where a small startup can out-compete an established player — and represents a fantastic opportunity for brand-building.

And Avi Deitcher also added:

Good intro, 2 comments:

1) You left out payroll. Just about everyone outsources payroll, for obvious reasons. Great way to break into an outsource arrangement (as a vendor) to a company that says, “we never outsource *anything*”. Just ask the guy to pull out his latest paystub with the big ADP (or SurePayroll or Paychex or whatever) logo on it.

2) IP issues: First of all, it is really crucial to get the legalities of outsourcing down right, even if it is just a small component. Defining it properly as “work for hire”, as well as other terms a good lawyer will put on, can be critical now and later (viz. Ceglia and Facebook). Second, even with the right legal terms in place, one should be mighty careful about where one outsources. Big companies (at least some) have already learned this the hard way in developing countries; most early-stage entrepreneurs are probably pretty naive about this.

This article was originally written by Fred Wilson on September 13, 2010 here.