It can be difficult, at times, to know exactly what one should do with one’s time when in leadership. Sure, there are the global mission-critical functions that each role has but those can often be more strategic in nature and less tactical.
This is especially challenging for the software programmer who is now faced with executive leadership. It is worth repeating that not all software programmers should look to find themselves in management (see this classic startup sin here).
I have personally made the transition but it’s taken a lot of time and a lot of practice. Over the last 7 years I’ve discovered through trial and error (lots of the latter one) how to make “it” work and I’m learning more every single day.
There are times where I’m quite fond of my new role and there are other days where I’m not so fond, to put it lightly. The “squishy” parts of human capital are much less easy to manage and at times are too subjective for my taste – it makes me pine to simply work with 1’s and 0’s.
But, the victories are so much more sweeter when you get to work with great people and great teams. And the challenges are much larger too so that when you find victory in those battles the level of satisfaction is quite acute.
So I’m not going to give up on it and I’m going to keep on learning what it takes to be a decent leader and a successful part of a leadership and management team. As such I’ve been spending a good deal of time learning from more seasoned experts on what I should expect of myself for the role and what a high-performance team and staff should also expect.
You see, despite my experience in leadership prior I’ve come to realize that I was… ahem, not a very good one.
So, here’s a great definition of what a great Management Team does:
- Create an environment for success.
- Nip problems in the bud, or prevent them entirely.
- Exploit big opportunities.