I'm a lead software developer for a team of 4 (including myself). Part of my job is to occasionally delegate development tasks to team members.

One of my team members is ineffective and requires a lot of "handholding" for many tasks, meaning I typically spend a lot more time with him than I do with the others. This is frustrating and unfair, as it takes too much of my time away from my own tasks and from the rest of the team. This has been an ongoing struggle for months, and I've brought it up with management. They've committed to reassigning this individual to another role, but this will not happen overnight. Also, I'm not sure if management has talked to him about this yet.

My question is, what should I do with in-process tasks that I've already delegated to this team member where he's just not getting it? I could continue to coach him to complete each task (a frustrating and time-consuming activity with no long-term benefit). But ideally I would like to "undelegate" some tasks from him and do them myself. If I do undelegate, is there a graceful way to do this without embarrassing my coworker?

  • 1
    Is there a nice big deadline hanging over the team, where you can say "With the current way of working, we are not going to make it. I need to re-allocate some tasks"? Commented Mar 12, 2023 at 15:23
  • "Hey, Fred, I've got a bit of spare time and an idea on how to quickly code Issue 4636. Mind if I take over that one?"
    – keshlam
    Commented Mar 15, 2023 at 21:52

4 Answers 4


There is a well-known model of Situational Leadership that describes how to assign tasks, and when to delegate. It's part of probably every MBA today, not something fringe.

The basic idea is that you closely guide junior employees. Motivate and coach once they're growing into the middle role. Facilitate self-reliance for mid-senior staff. Delegate to well-proven senior or lead employees.

So it's best not to delegate tasks to juniors to begin with. Their work is a learning experience that requires supervision. But it is also an evaluation of how well they learn their role. If they are doing so at a much slower pace, with less results, than the normal range, it may be a sign that they'd work better in another role.

The graceful way to undelegate is to offer help at reducing their workload. For instance, ask them to rank their tasks in the order of difficulty, of how sure they are to complete each. Take on the difficult ones, leave them the ones they're most likely to succeed at.

If they aren't performing to your expectations, the best way to go is to lower the expectations, and there's no need to hide this. Most people work best when set against realistic goals.


But ideally I would like to "undelegate" some tasks from him and do them myself. If I do undelegate, is there a graceful way to do this without embarrassing my coworker?

If that's what you want, then just assign him a different task and direct him to do that one instead. No big deal. Happens all the time.

Tread carefully here. Doing too many tasks yourself will give you less time for leading and your other work.

  • 1
    This is the common solution (because it works), just give them something else to do.
    – Kilisi
    Commented Mar 13, 2023 at 6:33

It sounds to me as if this developer's skills are not in line with the job requirements.

If you have not done a skills assessment for this developer, it's time to do so. If there are gaps, you should work with your management and the developer to put together a training plan. There are many options here but one good choice is an online training platform. My company uses Pluralsight but there are others. It's my experience that a well designed training plan can turn a situation like this around in 3-6 months.

But a junior developer needs some hand holding. If not, then they would not be junior.

As far as assigning work, you should keep the developers current skillset in mind and progressively move them from simpler to more demanding tasks as they learn and grow.


Tasks get moved between people on a team all the time. It is real common for a task to be thought of as simple but when someone gets into it, it turns out to be quite complex and taking far longer than planned. Embarrassment should not be the concern. Meeting the team goals - as a team - is the real issue.

Note that you don't need to be the one taking on the extra work. Other members of the team can be asked to help out or to take on the work. You can ask the team, as a team, how to move the tasks around.

The other question has to be how tasks got allocated. Did this developer say that they could do that task? As team lead, it becomes important to identify what the real deficiency is. If this person is volunteering in the team process to take on tasks that they can't do, that is a different problem than when tasks are assigned without considering the current workload and capabilities.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .