Particularly with the rise of the "EA has a lot of money" meme, I get asked why CEA can't just outsource a lot of its labor. This is my attempt to explain. I think that my view is standard within management circles, but I haven’t found a great source to link to, so I am attempting to write a version in a definition-proposition-proof format that I think might work well for EA readers.
Summary: it’s usually possible to outsource work on things which aren’t core competencies (e.g. payroll). But outsourcing work on core competencies requires substantial managerial overhead, which is the precise thing outsourcing was supposed to relieve. Graphically:
Say that an activity is a core competency if it provides substantial value to the customer and is difficult for competitors to copy. 
- One of Red Bull’s core competencies is marketing. They do not outcompete others because they have a better tasting drink, or a cheaper one, but because it is better marketed.
- One of Walmart’s core competencies is purchasing power. Other companies could build similar stores with similar inventories, but their prices would be higher, because they can’t replicate Walmart’s purchasing power.
Importantly, note that an organization’s core competencies are not necessarily their most visible products. E.g. McDonald’s most core competency is arguably real estate.
Say that an activity is operationally important if it is necessary for the operations of the business. Common examples include: running payroll, processing invoices, and manufacturing the product.
Claim: An activity can be outsourced if and only if it is operationally important but not a core competency.
For example: many companies outsource their payroll processing, as payroll is often operationally important but not a core competency.
By definition, core competencies are hard for other firms to copy. Outsourcing firms are an example of other firms. Therefore it's hard for them to do this work.
I think this proof is true and somewhat useful but it's kind of vacuous. The next section gives some additional evidence that firms do in practice frequently encounter important tasks which cannot be outsourced.
Management costs & team communication costs
Outsourcing doesn’t only cost money, it adds overhead for the team and manager.
In order for an organization to successfully outsource work on its core competencies, those outsourced contractors need to be well integrated with the team: they need to attend all the meetings and retreats, be in the same slack channels, give and receive feedback on their work, etc. This means that successfully outsourcing work requires a lot of the same management capacity which having in-sourced labor requires.
Successful companies tend not to outsource their core competencies
I am not aware of any successful companies which largely outsource labor on their core competencies. All companies outsource secondary priorities (e.g. use outsourced lawyers), and some will occasionally pull in consultants to help with specific initiatives, but I don’t know of any successful company whose labor force on their core competencies primarily consists of contractors.
Indeed, companies often choose to not outsource even their secondary priorities. E.g. I think a large fraction of companies with >100 employees have in-house legal counsel.
Most tech companies (the area I’m most familiar with) go even further than just employing people and use cross functional teams, because even being on a separate team within the same employer is considered too great a distance for good communication and coordination.
Appeal to Authority
I believe that the view I am promoting here is accepted wisdom in the management community. A Google search for “outsourcing decision matrix” shows 4.4 million results (this matrix being a slightly different version of the graph I drew above).
Product development is one of CEA Online Team’s core competencies
If we are able to outsource everything which is not a core competency, this raises the obvious question of what our core competencies are.
In particular: I think there’s a temptation to say something like “CEA’s core competency is in understanding EA’s, not writing code, therefore we can outsource the code writing bits.”
Unfortunately, it’s very hard to separate product understanding from product development. Inspired is a book length treatise on this claim, but I will try to give a short overview here.
Product development is generally not a waterfall process where you first develop requirements, then do a design, etc. but instead an iterative process where you bounce between these different stages unpredictably. One part of your requirements ends up being completely infeasible for engineering reasons so you have to go back to the drawing board, but another part is perfectly fine so it can be released quickly, and a third needs repeated iterations on small aspects of the UI to get right. So you can’t have someone who just implements designs – they need to be giving feedback and generally in deep communication with the “strategist”.
And the strategist can’t just simply give the implementer a specification that the implementer can naïvely follow. Even for the simplest changes there’s a bunch of nuance (what do you do on mobile? What if the user is logged out?) and for complex projects it’s essentially impossible to give a fully detailed specification. So the implementer needs to have a deep understanding of your strategy and product to fill in the gaps in the specification.
Could these issues be addressed even with outsourced labor? They sure can: You can have contractors who don’t need complete specifications because they have attended all your meetings, are in your slack channels and asking regular questions, getting regular feedback about how their implementation is lining up to organizational objectives, providing feedback to the product managers through regularly meeting them and attending user interviews, etc.
But this is all the “management overhead” and EA labor you were hoping to avoid by outsourcing!
Many novice managers, both inside and outside of EA, have an intuition like “I want X and have money, this firm says they will give me X in exchange for money, therefore I can give them money and get X.” In some cases this works well, but in many cases it’s actually quite hard to exchange money for services.
CEA is hiring for a number of positions, including UI, UX, or graphic designers, product managers, engineers, in-house legal counsel, and an office manager.
This is a simplified version of the standard definition
This isn’t quite true: for example, you can’t outsource an activity if there are no external firms to whom you can outsource it. Also I guess technically you could outsource work which is neither a core competency nor operationally important, but you should probably just not be doing that work at all. But this claim captures the most important points
This is such a truism, I sometimes see people using “core competency” to definitionally mean “labor which is not outsourced”. E.g. Red Bull outsources the manufacturing of their drink, and I sometimes hear people assume without further evidence that this means producing a drink is not a core competency of red bull, because if it was then it wouldn’t be outsourced.
Construction in the US is an exception: many construction companies’ labor force primarily consists of independent contractors. However, this is due to labor laws in the US, and in practice construction workers have a relationship to the entity they contract with which is quite similar to how employees relate to their employer.