The short answer
Augmentation adds capacity. If your bottleneck is not capacity, it will not help and will usually hurt, because more people produce more questions, more code to review and more coordination.
The four cases below are where we would tell a client not to proceed, and we would rather say it before the engagement than bill through it.
When the constraint is decisions
If work is blocked waiting for someone to decide what it should do, adding developers adds people waiting. The queue gets longer and the decision-maker gets more interruptions.
The tell is a backlog full of tickets that cannot be started because a question is unanswered. Fix the decision-making and you may find you did not need more people.
When nobody can review
Every change needs review by someone who knows the system. If that person is fully committed, adding developers converts their week into a review queue and total output falls.
- Check who can review before deciding how many people to add
- Reserve their time explicitly rather than assuming it fits
- If nobody has capacity, that is the constraint to solve first
When the work cannot be described
Handing an undefined objective to someone unfamiliar with your product produces either the wrong thing or a stream of questions. Your own team fills gaps from experience that a new person does not have.
If you cannot write down what the first month looks like, the work is not ready to hand over. That is worth knowing, and it is cheaper to discover on a whiteboard than through an engagement.
When you need judgement rather than hands
| What you need | Augmentation fit |
|---|---|
| More of a defined kind of work | Good |
| A specific skill for a bounded task | Good |
| Someone to decide the architecture | Poor, unless scoped as advice |
| Someone to own the product direction | Poor |
| Someone to tell you what to build | Poor |
The bottom three are real needs, and there are ways to buy them. They are just not what augmentation is, and buying capacity when you needed direction leaves you with more code going the wrong way.
The check worth running
- What specifically is not getting done?
- Why is it not getting done: no time, no decision, no skill, or no clarity?
- If no time, who would review the extra work?
- If no decision or no clarity, adding people will not help.
- If no skill, is it for a bounded piece of work or an ongoing need?
Five questions. Two of the five answers point away from augmentation, which is roughly the rate we see in practice.