The short answer
Three things tell you most: how often work needs redoing after review, whether the same feedback keeps recurring, and whether they are asking fewer questions about the same areas over time. All three improve with competence and none of them can be gamed easily.
Commits, lines and tickets closed measure activity rather than progress, and they punish whoever is working on the genuinely difficult parts.
What to look at
| Signal | What it tells you | Watch for |
|---|---|---|
| Rework after review | Whether the work lands correctly | Should fall over the first month |
| Repeat feedback | Whether they absorb conventions | Same point twice is fine, five times is not |
| Question pattern | Whether they are becoming independent | Fewer basics, better questions |
| Blast radius of changes | Whether they understand the system | Should widen as confidence grows |
| Defects found later | Quality that review missed | Slow signal, worth tracking |
Account for ramp-up honestly
Somebody in their second week is slower than somebody in their third month, and that is expected rather than a problem. Comparing a new person against your longest-serving developer tells you only that one of them knows the codebase.
Compare against the same person two weeks ago. The direction matters more than the level, particularly early.
What not to measure
- Commit count, which rewards splitting work artificially
- Lines of code, which rewards verbosity
- Tickets closed, which rewards picking easy tickets
- Hours logged, which measures presence
- Velocity points, which drift the moment they become a target
Each of these changes behaviour the moment people know it is watched, and the change is rarely the one you wanted.
Raise concerns properly
- Be specific: which work, what was wrong, what you expected.
- Raise it early, in week three rather than month four.
- Put it in writing to the supplier as well as saying it.
- Give a clear indication of what improvement looks like.
- Set a point to review it, and actually review it.
Suppliers can act on that. They can do nothing useful with a general sense that things are not going well, delivered late.
The measure that matters most
Would you want this person on the next piece of work? It is subjective, it is not a metric, and it captures more than any dashboard.
If the answer is yes, the numbers rarely matter. If it is no, work out which of the specific signals above is behind it, because that is what the supplier can act on.