I mentioned the other day that I had recently attended the first session in a course on leadership. While waiting for the session to begin, I chatted to one of the attendees. Like many technical people in management, after many years in development, they are promoted to a management role with little to no training or management experience. As such he was struggling with the balance between managing people and development.
More importantly, because he had been with the company for a number of years prior to his promotion, he knew the code base intimately. As such, when one of his engineers had something complex to do, he would inevitably do it himself, in case they failed to do it right.
He realized that as a result he had becomes the bottleneck of his team. In addition he is failing to give opportunities to his team to develop skills.
When I joined Ephox, I had a heap of experience with J2EE but only a limited experience with Swing. What this meant was I focussed on building my management skills, growing the team and putting in place the processes to ensure we provided the best code, without taking anything away from the team.
Once I'd built up some skills in management and put in place the processes to continue to improve the team, I could then focus on regaining the slightly rusty technical skills to be able to play a key part in the architectural design of our products.
When you start on your path in management, don't be afraid to let go some of your development focus in favor of management skills. Give your team the opportunities that you were given, to show what they can do, and to grow in their abilities.