This has been in my mind recently.
I am head of development at a startup and have something like 30 direct reports. I don't want to be doing this job for a long time, and am maneuvering the team structure to make myself redundant with the following actions:
- I am trying to convince the execs and HR to increase pay transparency and to reward people who want to progress in their careers as engineers more than those who want to become managers.
- I have promoted one person with more leadership skills (and less technical ability) to be a dev lead; essentially a mentor, gathering feedback from the team and helping them solve process and communication issues, and keeping track of OKR metrics.
- I hired a department assistant, to do resource allocation, manage Jira permissions, tidy up boards, etc.
- We have 1 project manager who is responsible for our three internal development projects, controls our budget and fights with other PMs for resources.
- All others are Developers and QA. Some are more senior, so they have architecture roles. Everyone gets to give their voice, but one of them has an official role of architecture lead, who has the final say, but that's mostly cerimonial.
My role is to help them focus when they start to drift, shield them from politics, and most importantly give a cerimonial ratification on their ideas, if they match the values of the company.
So all 4 non developers are essentially assistants. I hope to soon be able to step out and leave the team working happily with a 10 to 1 ratio of dev to non-dev.