The Real Work of (Software) Management
I recently received an email from a reader, Anton, asking this question: How do I balance Management with real work?
This is a common question. What Anton wants are tools to help him manage his time and his workload. He’s having trouble “doing it all”, which is a symptom of a larger problem. The problem is the mindset that management is not “real” work.
The most important aspect of time management is prioritization. If you don’t understand that management work is THE priority, any time-management techniques you use are bound to fail.
So, before I talk about tactics to balance demands, time management, prioritization and the like, I want to step back and address the mindset question. Because if you don’t get the mindset right, then the tactics are only a short-term, Band-Aid solution that temporarily masks the larger problem.
Management IS real work.
Let me be as clear as possible: Management IS real work.
Any view that fails to put your management responsibilities first will fail you in the long-term. You might get away with it for a while, and at times it might seem like it’s working for you, but it’s a losing strategy.
Even worse, most managers who hold this flawed mindset find out too late that it’s failed them. Projects are delivered late, teams fail to adapt to new demands, employee turnover increases and customers get very frustrated. All of this is because they aren’t managing their team. Instead, they are still programming.
(Quick note: I realize that different organizations use different titles, but I’m going to use the term “Software Manager” to refer to someone who is responsible for the work of programmers. You might be called a Lead Programmer, Team Lead, IT Manager, Department Manager, Project Manager or CTO. If you’re responsible for overseeing programmers then this article is for you.)
What is Real Work?
In my experience, real work is defined as “effort that produces value for an organization”. Ditch Diggers produce valuable ditches for an organization. It is clearly real work.
Software Developers create valuable software for an organization. Even if the ditch diggers don’t agree, Software Development is also real work.
Software Managers create valuable software development teams for an organization. Again, even if the Software Developers don’t always agree, Software Management IS real work.
What Value Does a Software Manager Produce?
As a Software Manager, you provide value to multiple groups in the organization. Your work is MORE important than any individual programmer because you are a force multiplier. You create a team that is greater than the sum of its parts. Some examples of where Software managers create value…
They provide value to their team by…
- Ensuring the right members are on the team, and that they receive the right training
- Creating a productive work environment appropriate for Software Development
- Ensuring the team has the best tools possible.
- Protecting the team from organizational distractions or politics
They provide value to their up-chain Management by…
- Ensuring management understands the value of the software the team creates
- Ensuring that the team’s efforts support organizational goals
- Ensuring that team turnover is low and the members are high-performing contributors
They provide value to their customers by…
- Listening to customer’s needs and goals
- Ensuring that the right software is delivered at the right time, to the right people
- Collaborating with the customer about team priorities to deliver the highest priority items soonest
- Taking customer feedback to the team so that the team can improve
Why Management Must Be Your ONLY Job
No one else on the team can do it.
You are not “one of the gang”. Sorry if you don’t like this, but your team knows it, so don’t get confused and act like it isn’t true. You are unique in your group; you are their manager and leader. You have more authority than they do, and everyone knows it.
You are also responsible for the work the team does, the success and failures of the team. The organization put you in charge to LEAD and MANAGE this group, and when things go wrong, they expect you will take full responsibility for the problem. This is something only you can do.
Finally, you control the teams’ attitude, productivity and working environment. You control who is on the team, and who is not on the team. You sit in a unique position to lead, inspire, direct and manage. You alone are appointed to do this work.
Sound terrible? Well, the saying “It’s lonely at the top” isn’t hypothetical. It’s very real, and at times being the manager feels very lonely. Not always, but sometimes.
Your job and the jobs of your team members depend on you creating a team that can deliver the right software, at the right time, to the right people.
If you fail to create a team that delivers software, your Management (or your Customers) will replace you with someone who will. This might sound harsh, but if you can’t do it, they will find someone who will.
Besides, the livelihood of every member of your team depends on your ability to create a team that can deliver software! Teams that don’t deliver get cut during down-sizing, right-sizing, and re-organization efforts. Remember, executive management is always keeping any eye on the “cost vs. value” ratio, so it’s up to you to make sure your team is consistently delivering value.
In addition, you’ve got to promote the great work your team is doing to your manager through status reports, demonstrations, and customer testimonials. You are the PR department for your team, and you’ve got to make sure their good work gets noticed!
Finally, your team needs constant mentoring, training and coaching to stay sharp and keep growing. Managers that neglect this put their team members at risk, because the poor performers and “dinosaurs” are always the first to be cut when times are tight. Employees ALWAYS want more training, and managers who don’t provide this do their team a great disservice.
Why Management is Work Worth Doing
When I was first promoted to Team Lead I excitedly told my Dad about my promotion. He put his hand on my shoulder and said, “Son, your team deserves a good manager. Don’t let them down.” As I returned to work, I looked at my team differently.
The brilliant programmers on my team wanted and deserved a good manager, someone who was willing to serve, protect, encourage, discipline and mentor them to do great things. Someone who was willing to put aside their love of programming to do the hard, uncomfortable, dirty work of management. Your team needs the same things.
The number one description of “Bad Bosses” that I hear from Programmers is “My manager didn’t want to manage. He just wanted to code ”.
When you got promoted, the team knew exactly what it meant: you are now their boss.
Unfortunately, too many Managers want to act like their team’s best friend. They want to live in a fantasy world where everyone likes them, there are no difficult decisions, and everyone works without the need of guidance or direction.
Symptoms of this problem are…
- Unwillingness to take responsibility when problems arise
- Unwillingness to delegate clearly and directly
- Unwillingness to set clear expectations about how the work is done, and when it is needed
- Unwillingness to discipline disrespect and poor performance
If you’re not doing these things, you are not the manager your team wants or needs. Your misplaced need to be accepted by them has overshadowed the real need to create a valuable software development team. You are putting everyone at risk, and your team knows it.
Conclusion
Management is real work. It is your work. It’s important work, and it’s work worth doing well. It deserves your time, focus and attention. Like programming, it’s a skill that improves with focus and time.
Now, poor Anton still needs to know how to manage his time, balance competing priorities, and find time to look up from his work. But I hope that he sees that having the Management Mindset must come first. Next time we’ll look at how everything Managers do is “managing”, whether it’s shooting the breeze at the coffee machine or sitting in a customer meeting. You might be surprised at all the forms that “managing” can take. Then we’ll take a look at tactic for prioritizing and managing your time.
Like this? Join my list at http://marcusblankenship.com/list for more articles and thoughts on Software Leadership.