“Developers don’t like development plans” and other bullshit I’ve heard.
I was recently amazed to hear another engineering manager say “I don’t know why we bother with these personal development plans; developers don’t like development plans.”
My initial thought was “No, YOU don’t like development plans.” But after I had left the room and thought about it for some time, my actual thoughts expanded to:
No, YOU don’t give a shit about your team members’ career development.
Now, this might be a little bit harsh, but I was enraged by this sweeping statement about developers’ views on personal development. In my experience, they hate having a stagnant career path a lot more.
But there seems to be a view by some that because running some kind of Personal Development Plan (PDP) for each team member is a reasonable amount of work that it’s not worth the pain.
In my view, it is incredibly important, and if you’re not investing this time, quite simply, you’re a negligent manager.
And quite possibly an arsehole.
Personal Development is a shared responsibility.
In my experience, companies tend to make clear decisions on who is responsible for their personal development, either the individual or their competence lead (the person who is responsible for making sure they are performing their core competence well).
In reality, it’s a shared responsibility, it’s the individuals’ responsibility to define where they want to be, and it’s your responsibility as their manager to use your experience and influence to help them get there.
If you’re reading this and thinking:
That’s all good and well, but I can’t find the time between the fire fighting to focus on this now, we’ll look at it when we’re more stable.
Things will never get stable if your team doesn’t grow into the talent gaps that are causing you pain, and they’re going to get worse if people grow into gaps that don’t exist or a gap that exists in another company!
But if you’re really in such a bad situation that you can’t find the time to invest in creating full PDPs for your entire team, then there are two critical phases in a developer’s career development. If you have developers at these points, then I would recommend trying to find some time to focus on them.
Critical Phase 1: The Start
The first critical phase should be apparent. The beginning of an individual’s career sets the trajectory for the rest of it. Helping them build a solid foundation for the future as early as possible will help this individual so much in the future.
Think of it as seed investment, the higher the investment, the more significant that investment becomes over time as the individual multiplies it by getting better and improving.
One thing that you hear from developers at the beginning of their career is:
I don’t really know what I want to specialize in; I want to try as many different things as possible.’
Being undecided about your future path is fine. However, it’s your responsibility to make sure that while the career starter is having these experiences and experimenting with things that they’re building the core skills. The skills that are translatable to all tasks they might end up being excited by; problem-solving, communication skills, organizational skills, etc.
Critical Phase 2: The ‘Split’
The second phase is harder to spot and comes a little later in the developers’ career path. At some point, a developer must make (or choose not to make) a decision between becoming a manager or continuing their development as an individual contributor and going hardcore into the technical challenges your organization offers them.
This choice can be tough and challenging for an individual, and you need to help guide them through this process. Allow them to make a choice, but with as much information as you can give them.
If it’s broken, fix it.
But what happens if you don’t have any kind of personal development process in your company? Or what happens if you have a process, but no one uses it because it’s too convoluted?
If it doesn’t exist, create it.
Creating great personal development programs is hard. However, creating a good personal development process is straight forward. There’s a load of guides online that give you a great ‘starter for 10’.
If your company doesn’t have one, then simply create it, lead by example, set one up for your team, follow it, and show the rest of the organization how valuable it can be.
And even if you’re not a manager with any direct reports, create one for yourself.
If it exists, fucking do it.
If your company has a process, then please:
Quit finding excuses not to do it, helping your team grow will help you find the time to stop doing the firefighting tasks that are taking up all your time.
If it’s broken, help to fix it.
There is a little gotcha to everything that I’ve said. Even though it’s easy to create a good process, it’s also incredibly easy to build a terrible one. This tends to happen when a large organization overthinks the problem.
A sign that a personal development process is too complicated is if there is an online training module before you can start.
In these situations, it’s your responsibility to help fix it. You should provide feedback on how it can be improved. Maybe run a stripped-down version for your team to show evidence that the process can be simpler.
Make a Choice.
Ultimately you can make a choice. You can either continue to run around firefighting and filling in the expertise your team is missing.
Or you can do the right thing and help your team grow into those gaps and give them a career multiplier in the future.
It’s your choice.