That’s how it looks, a bunch of erratic lines, one overlapping the other where you are supposed to be doing each and every one all the time and excelling at each and every one all the time.
No matter your skill level or where you are at in your career – Junior, Intermediate, Senior, Team Lead, Tech Lead, Manager, Director, etc, etc (the list goes on) – what doesn’t change are the things you need to do in those roles as a leader in Software.
I want to emphasize leader because I honestly believe that every Developer is a leader in their own right. We assume that leadership is always about people, how many you manage when in fact it can be about code, frameworks, initiatives, customers, programs, research, etc, etc (again this list keeps going on).\
Why have we tried to pigeon hole all of these amazing great people into a corner for all of their careers I will never understand. Organizational policies that have it baked into their culture that the next progression in your career (and hence leadership opportunities) can only be attained by giving people a team are missing out on so many great opportunities that it is baffling to watch unfold.
What does Growth look like?
It looks like the above diagram. Ask anyone how they got to where they are and they will tell you all the paths they took, nothing was linear and very little worked out how they said it would. It was one big, off road adventure that relied on their previous skills to get them to the next stage.
Nowhere is this truer than with Software Developer – you can start with a book, a blog, school, a website, a computer and Nodepad and start learning and growing. And all the way you are leading, you, yourself, the Army of One, in how you are going to get there and what you are going to accomplish.
The beauty of the attached diagram, is that it is different for everyone involved, we all have different journies and we all go through different experiences where we code more, lead less, research more, design less. If you fundamentally boil everything you are doing down to a few simple characteristic traits – you are always going to be Driving, Delivering, Leading and taking the Initiative – always.
Look at those bugs on your plate – you’re delivering and if you’re taking someone else’s, you’re taking the inititiave.
Look at the junior developer struggling on your team – you’re leading them and helping them out.
Is no one building the UI standard that your team desparately needs – looks like someone driving the solution to the end.
What Matters to you?
Want to know where you need to go and where you should be focusing your energy? Take a look at those traits, what matters most to you? Where do you excel? What interests you? Where do you want to go? You probably already know and if you do, take a moment and draw those circles or lines a little bigger on the ones that speak to you. On the ones you want to do more with but aren’t great now, make the lines all jagged so you can visually see the work you have to do.
What you can’t do, is exclude them, you can’t have four perfect little circles all standing apart from one another because this is where you will fail. Everything, Drive, Delivery, Leadership and Inititiave – all overlap and they all contribute to your growth. You can’t have one without the other.
Don’t make the mistake of sacrificing one and only doing the other three – because that’s not growth (not good growth anyway).
Real growth, powerful growth, scary good growth, growth that will make you a great leader in Software Development comes when you embrace all four – no matter your path.
Want more? Check out my book Code Your Way Up – available as an eBook or Paperback on Amazon (CAN and US). Follow us on Twitter @Codeyourwayup and find out more about our Software Leadership Programs here.