Agency, in-house, or staff augmentation: which one actually fits
Three ways to get software built, and the situations each one is genuinely better at. Including the situations where the answer is not an agency.
The short answer
Hire in-house when the software is your product and you will be changing it forever. Use staff augmentation when you have strong technical leadership and are short of hands. Use an agency when you need a defined outcome delivered by people who will own the whole of it, including the decisions. The wrong choice is usually staff augmentation bought by a company with nobody to direct it.
These three get compared on price, which is the least useful axis. They fail for completely different reasons, and the reason yours will fail is more predictable than the cost.
The short answer
| In-house | Staff augmentation | Agency or studio | |
|---|---|---|---|
| You are buying | Capability you keep | Capacity you direct | An outcome someone owns |
| Needs from you | Hiring, management, retention | Technical leadership and a clear backlog | A decision and a budget |
| Best when | Software is the product, forever | You know exactly what to build and lack hands | A defined release, or a discipline you do not have |
| Fails when | You cannot keep them busy or keep them | Nobody is directing the work | The scope was never agreed |
| Time to useful | Months | Weeks | Weeks |
In-house: capability you keep
If software is the thing you sell, and you will still be changing it in five years, you eventually need people who think about it every day. Nobody outside your company will ever hold as much context as a good in-house team.
The cost most companies underestimate is not salary. It is that hiring engineers well requires someone who can judge engineers, and if you had that person you would probably not be reading this. The second cost is continuity: a two-person team is one resignation away from the situation described in the Second Version Test.
- Choose it when: the roadmap is permanent and you can keep a team busy and interested.
- Avoid it when: you need one thing built well, once.
- Watch for: hiring your first engineer without anyone able to assess the hire.
Staff augmentation: capacity you direct
You rent engineers who join your standups and work your backlog. It is the cheapest of the three per head, and it is the one that most often disappoints, for a single reason: it moves all the judgement to you.
Augmented engineers are usually competent. What they are not is accountable for whether the thing being built is the right thing, or whether the architecture will survive the next feature. If you have a strong technical lead with a clear backlog, that is fine, and the model works well. If you do not, you are buying people who will do exactly what you ask, which is only useful if what you ask is correct.
- Choose it when: you have technical leadership and a backlog, and need throughput.
- Avoid it when: nobody internal can say whether the work is any good.
- Watch for: velocity that looks fine while the architecture quietly degrades.
Agency or studio: an outcome someone owns
You buy a result rather than hours. Done properly, the studio owns the decisions as well as the typing: what to build, how it should work, what to say no to. That is the difference worth paying for, and it is also the thing to check before signing.
The failure mode is well known and it is almost always the same one. The scope was vague, so the studio built what it interpreted, and the interpretation was wrong. The second failure mode is the one this whole industry has earned its reputation for: the software ships, the studio leaves, and nobody can change it.
- Choose it when: you have a defined release, or need a discipline you do not hold, such as mobile or design.
- Avoid it when: the requirement is genuinely "more hands on our existing plan".
- Watch for: any proposal that does not begin with scoping, and any handover that is not in the contract.
The combinations that work
Most companies over a certain size end up with two of the three, and the pairings are not arbitrary.
- 1In-house plus a studio for a discipline you lack. Common and effective: your team owns the core, a studio owns mobile or the design system.
- 2A studio first, then in-house. The studio builds and runs it while you hire, then hands over. This only works if the handover was designed in from the start.
- 3In-house plus augmentation for a known crunch. Works when leadership is strong and the work is well specified.
- 4Fractional technical leadership plus augmentation. Fills the gap that makes augmentation fail, at a fraction of a CTO salary.