I was lucky enough to work with some phenomenal managers/leaders. At WDS one of the things that team or “lead developers” had progressed really well was a way of supporting resources of all levels to improve and develop.
Collectively, we progressed a matrix very similar to this (initially conceived by Mark Piper) which highlighted to developers potential areas of growth (which they can link to their career progression aspirations). I’ve lived by it since, and continue to find it a really useful mechanism to inspire people. I therefore thought it definitely worth sharing. This overview is massively simplified to make it easier to share quickly, but hopefully retains some of the main benefits we intended originally
Essentially there are four main areas which I will outline below.
Technical
Progressing in this area often (but not always) helps to underpin progression in the others. Gaining really strong knowledge of frameworks, languages, libraries, tooling, technical approaches and architectural decision making are all aspects which can help. Maybe becoming the technical ‘go to’ person for a system or the technical consult for a client are also ways of demonstrating abilities in this regard.
Coaching
This area is about increasing the knowledge of other people around you. The worst case scenario is that you have learnt something in your dark bedroom and never shared it. It would be an improvement to share your new found knowledge with the person you are sat next too (hopefully pairing with), then with the rest of your team, then with the rest of your wider team, then with the rest of your department, then with the rest of your company, then to the community and so on, and so on. You can also gain from finding ways for others to help others do so too. Helping 5 people share their knowledge on something could even be more beneficial than you finding ways to just share yours?
Process
This is titled ‘agile’ on the graphic as I think a good understanding of agile practices is paramount for this area. ‘Keeping the team functioning effectively’ is the way I originally worded this, but was rightly corrected as there is much more too it. The ability to ‘keep one eye on the kanban board’ and getting the team aligned to deliver the right things at the right time was also an important part of what was expected.
People
Appraising, providing feedback, resolving peoples issues, aiding self reflection, rewarding and helping support people are all things that come to mind. If you think of feedback for an employee ten minutes before a yearly feedback session then you aren’t doing everything you can. As with other areas knowing the best practices available and applying them effectively (while getting as many others as possible to do the same) is the route to improving in this area. Don’t think this isn’t something that can be done by junior resources. Compiling and providing feedback to managers, or finding ways of delivering it well can start you along this journey. As ever, the next step may be introducing mechanisms for this to occur on an even wider scale.
As a more practical example may help, you may want to improve longer term in the area of coaching and are already sharing things within your team (and leading others to do the same). Maybe one day you want to be speaking at conferences to be positively affecting a wider community. Therefore you could start preparing material for a talk and presenting to your wider department to get feedback before submitting your paper to a conference.
The main benefit of this matrix and mindset is simply thinking about development in this way to make it easier defining focus areas to reach your short, medium and long terms goals. Knowing those makes deciding on next steps to take for personal development much easier.
Once you have thought about your focus areas (and that of your team) why not read about some ways to improve them here
I hope this helps