Doing a Job (1982)
govleaders.org
govleaders.org
> Some management experts advocate strict limits to the number of people reporting to a common superior—generally five to seven. But if one has capable people who require but a few moments of his time during the day, there is no reason to set such arbitrary constraints. Some forty key people report frequently and directly to me. This enables me to keep up with what is going on and makes it possible for them to get fast action.
It’s interesting to know that at least one successful manager of a large organisation found that limit of 5 or so direct reports to be unnecessary. The article was written in 1982. I would have thought the increased use of technology in the workplace would make it easier to manage many people these days – but the trend seems to be the reverse.
And then all those managers need to report some activity to their superiors, which is how we get micromanagement, arbitrary changes in the project, meetings, evaluations, forms to fill, etc.
I hear this kind of talk from managers at my workplace as well. Extreme ownership seems like the management technique du jour. I am quite sceptical of it. I'll treat the work as my own business when it is my own business and when I have a significant stake in the outcome. Otherwise, I am just a guy you pay to do a job, not a business partner and definitely not a loyal slave.
I feel that the code reviews I’ve been a part of were not as effective as they could have been. I think there is social awkwardness at criticizing design or conceptual aspects, and a multitasking aspect that means the reviewer is in a hurry and mostly checks conformity to the style guide. Very little checking out of branches and manual testing happened, so we had more regressions than expected.
Is this the norm? What practices have you seen that lead to better results?
In my limited experience, I have not seen this done effectively in a software project. What does this actually look like when done properly? Ie, how do you store the data and keep it from becoming busy work?
For what you do document, have a central repository with a clear organization.
Take a look here: https://github.com/torvalds/linux/commits/master
And here: https://lkml.org/
Wikipedia does a pretty good job of maintaining document and discussion history as well.
In both projects, you can pull on any random thread and trace it all the way back to its origin. And if the team (and maintainer) is doing a great job of capturing the thought process behind a decision in commit messages (as Linus does so well), then you're in really great shape.