How to delegate tasks as a senior/lead engineer?

6 min readMay 15, 2023

Let’s solve it as a programmer.

After staying in the same company for years as senior or lead, we always find ourselves overwhelmed by the increasing requests. — From everyone.

Because: you are the one, who is familiar with everything, does things fast, and knows everything.

So, you must have been here

Look at this. Is it you? Can you spot the problem? Yes, you should at least see:

  • “You” always take things on yourself the first time (eager loading, wrong! You should be lazy loading)
  • “You” are doing everything, almost! (superclass)
  • Everyone is looking for “you”! (minimal knowledge is principle is broken!)
  • There is “dev1” under you, waiting to be mentored and help you. however, he is idle (multi-threaded model is never used!)
  • You are flooded with new stories and more and more bugs (crash!)
  • Bottleneck started (blocking I/O)
  • “You” may not even have time to onboard anyone in the end
  • “You” will burn out.

Does this problem look familiar in the programming world? yes.

  • Superclass
  • Blocking I/O
  • Synchronise
  • Single-Threaded

Let’s fix it as a developer.


Delegate. always. once you delegated, a new thread started. you are ready to listen to new “requests”, even if you are single-threaded (but you do have a multi-threading choice, shown below), but you still can be fast, like Redis! as long as your I/O is not blocked.

So when you get a task from the project manager. you should try to avoid doing it yourself, and try to assign it to a junior dev, as fresh as possible. use greedy thinking.

but what if you don’t have anyone to delegate? mentor, keep doing it. it’s your job.





A channel which focusing on developer growth and self improvement