Why do you have to outsource work your own team could finish quickly?
Here is what this post covers:
- Introduction
- What changes between in-house and outsourced work
- Seven situations that force you to outsource
- When outsourcing makes sense
- How to work your way out
- Wrapping up
- References
Introduction
“We could finish this ourselves in two weeks…”
Have you been thinking that a lot lately? I feel it even more now that AI and IaC have made writing code so much easier.
Writing the code takes less time than it used to, but the process around it has not changed: request a quote, get approval, sign a contract, wait for the vendor to start, receive the delivery, sign off on it. The faster the work itself gets, the more the steps around it stand out.
Some background for readers outside Japan. In Japan, it is common for a company to have its systems built and maintained by an outside IT vendor, often called an SIer (system integrator), rather than by its own engineers. About 72% of Japanese IT professionals work at IT vendors and only about 28% at the companies that use the systems. In the US the split is roughly the reverse, at about 35% and 65%. So when a Japanese company wants to change its own system, the default path is usually to ask the vendor that built it, and that is where the process above comes from.
Bringing work in-house means building the ability to handle development, operations, and improvements with your own people instead of contracting them out. In this post I sort out situations where you could technically do the work in-house but end up outsourcing it anyway, and how to think about getting out of them.
The examples for each situation are my own summary, based on publicly available articles and common patterns in the field.
What changes between in-house and outsourced work
The dashed boxes are the steps added on top of the fix itself. The fix takes the same effort either way, but outsourcing adds the wait from request to start, plus acceptance at the end. The faster AI makes the fix, the larger the share of the total that waiting takes up.
Outsourcing lets specialists deliver reliably, but every small change needs a new request, and the knowledge tends not to stay inside the company.
Seven situations that force you to outsource
| # | Situation | In-house | Outsourced |
|---|---|---|---|
| 1 | Contract limits (maintenance scope, copyright, exclusive operation) | You fix it yourselves | Only the vendor can touch it |
| 2 | Environment and access walls (no access to production, source, or the DB) | Look directly and fix | Starts with an investigation request |
| 3 | Black box (no record of design intent, no spec) | Understood in-house | Only the vendor knows |
| 4 | Procurement and approval rules (heavy approval even for small amounts) | Start right away | Weeks of quotes and contracts |
| 5 | Security and audit requirements (separation of duties, approved contractors) | Handled by internal controls | Sometimes easier to clear with an outside party |
| 6 | Staffing limits (people exist but have no capacity) | Possible in principle | No choice but to send it out |
| 7 | Accountability (wanting the contract to split responsibility for incidents) | Your company’s responsibility | Made explicit in the contract |
1–3: Lock-in and hollowed-out knowledge
The system runs, but nobody in the company can explain why it was designed the way it was. Every spec change becomes a request to the vendor, which costs both money and time.
4–7: Organizational and institutional causes
- Approval and purchasing rules are built on the assumption that work will be outsourced
- In-house engineers are fully booked with their main work and have no time for improvements
- There is no setup for maintaining what gets built in-house (avoiding single points of knowledge, keeping quality up)
- An organizational culture that feels safer when a contract names who is responsible
None of these change when AI lets you write code faster. How many approval steps there are and how responsibility is split are organizational decisions, not technical ones.
When outsourcing makes sense
Bringing everything in-house is not the answer. It is more realistic to draw the line between in-house and outsourced work area by area than to apply one rule across the company.
| Criterion | Suits in-house | Suits outsourcing |
|---|---|---|
| Link to competitive advantage | Source of differentiation | Routine work common to the industry |
| How often it changes | Changes often | Rarely changes |
| Expertise | Core skills you should build up | Highly specialized and inefficient to train for |
| Demand pattern | Ongoing | A temporary need for lots of development capacity |
| Know-how | You want to keep the design intent | Getting the result is enough |
One-off or short projects (say, six months or less) and hypothesis testing with an MVP are generally considered good fits for outsourcing.
How to work your way out
- Revisit the contract: make delivery of source code and design documents, and the scope of operations, explicit
- Set up access and environments: give the in-house side read-only access and a staging environment too
- Leave documentation behind: have the vendor put the design intent into words every time
- Move over in stages: go through the three stages in the diagram above, co-create, transfer, self-run
- Go hybrid: keep the core and frequently changing parts in-house, and outsource stable areas and peak periods
Aiming for full in-house development all at once means hiring and training, single points of knowledge, and quality assurance all hit you at the same time. The goal is not cutting outsourcing costs but speed and learning.
Wrapping up
“In-house or outsource” is not a binary choice. The real question is which parts you do yourselves and which parts you rely on outside help for.
The next time you think “we could finish this ourselves so quickly,” start by looking not at the technology but at where things are stuck: the contract, access, knowledge, or the rules.
References
- 平成30年版 情報通信白書|日米のICT人材の比較 | 総務省 (Japanese; Ministry of Internal Affairs and Communications, White Paper on Information and Communications 2018)
- 内製化とは?外注依存から抜け出すロードマップ | 株式会社SAI (Japanese)
- 業務自動化で人手不足を解消|内製vs外注の判断 | GXO (Japanese)
- 内製化と外注のバランスをどう考えるか | naruki-eng (Japanese)
- システム内製化の進め方 | PMO-Square (Japanese)
- 内製化・外注・SaaS活用の判断基準 | syusodo (Japanese)