Recently, I gave a talk about useful practices–things to consider adopting/adapting in your organization. (I don’t believe in best practices, the idea that something could be best in all situations is just not credible. See UsefulPractices for more discussion.
One of the techniques I discussed was creating smoke tests for the build. We started discussing how to do that. It’s a web-based client-server system, with a data-dependent dynamically built client side. It’s not a trivial problem to create smoke tests (or any other automated tests).
But what I heard was fascinating. The organization is flat-out, trying to keep up with all the demands for new features, defect fixes, and responses to customers. The managers, each with at least 6-9 people, expect to participate in the coding. They’re smart enough to keep themselves off the critical path, so the projects don’t directly suffer from their continual multi-tasking. But what does suffer is the managers’ ability to strategically think about changing the work they do.
One of a manager’s jobs is to continually increase the capacity of the group he or she is managing. If everyone works the same way they’ve been working, the manager cannot increase capacity without hiring more people. It’s possible some groups don’t need an increase in capacity, but I haven’t met one yet. When managers are totally consumed with the day-to-day tactical work, they have no time to think strategically about their work and their group’s work.
I don’t know enough about this group’s product to know how to solve this problem of smoke tests. It’s possible that the problem is not worth the time or money it might take to completely solve it–but the managers don’t know that. They might not even need to completely solve it. Frequently, when dealing with difficult problems like this, a partial solution is good enough for some time. But the managers must take the time to think about how their groups perform their work.
Managers don’t have to know all the technical details of the work. They do need a deep understanding of how the people the perform work. But that understanding is not enough. Effective managers realize that things could change, and must take the time to think about what might make sense to change. That’s what I mean by strategic thinking, and why it’s necessary for anyone who leads people in work to know not just where the next step is (the tactical work), but to also consider the longer term steps (the strategic thinking). That’s the only way to increase the group’s capacity.