An important lesson I’ve started learning as a manager is that those 3 considerations are also reasons to delegate work. I could often fix a bug in code I know intimately 20x faster than a new hire. But that ignores the opportunity for them to learn about the codebase. Or the question of maintainability should I leave. Or the value in learning about the new hire: where exactly do their strengths and weaknesses as a programmer lie. It’s interesting that the prompt ‘consider quality, maintenance and learning’ is simultaneously caution about overdelegating and underdelegating.
An important lesson I’ve started learning as a manager is that those 3 considerations are also reasons to delegate work. I could often fix a bug in code I know intimately 20x faster than a new hire. But that ignores the opportunity for them to learn about the codebase. Or the question of maintainability should I leave. Or the value in learning about the new hire: where exactly do their strengths and weaknesses as a programmer lie. It’s interesting that the prompt ‘consider quality, maintenance and learning’ is simultaneously caution about overdelegating and underdelegating.
@Paul
Good point.
For example, I do delegate to graduate students, even when I could do it much faster myself, precisely because they need to learn.
But I think many people delegate without considering (before it is too late) that by delegating they miss an opportunity to learn.
It is not uncommon for managers to lose competence.