One of the negative side effects of having any top-down command structure is that every additional layer risks introducing a new level of bureaucracy, which then actively subtracts value. Consider the Politburo of the USSR with dozens of offices of skilled bureaucrats. Because most produced no actual value, the best apparatchiks spent their entire time managing up to remain in control. Individuals who tried to upend the system either became exhausted and gave up, or were deported to Siberia.
The Soviet example also applies to software development. Consider a typical CEO → CTO → VP of Engineering → Director → Manager → Technical Lead → IC command structure. Each project team consists of a technical lead and a handful of individual contributors. The people committed to the project do not need status reports to know what’s going on, they are actively working on it. The stakeholders and the hierarchy, however, naturally want progress and status reports. This gets aggregated at Director level, then at VP level, the CTO, and finally the CEO.
From the point of view of every manager in this hierarchy collecting status and asking questions feels very natural. After all, it’s much more efficient to get a summary of what’s going on from a line manager than to read every status update or code change yourself. You have the power to call a meeting, have things explained and summarized to you. You also have the authority to make snap judgments based on this carefully crafted summary and partial information, and the responsibility to tell the team to focus on something they likely already know. This system quickly promotes those who are good at reporting the things their manager wants to hear, and encourages political behavior as people learn to navigate the system rather than focus on outcomes.
It’s worth acknowledging that these hierarchical structures exist for good reasons. Large organizations need coordination, resource allocation, and strategic alignment. The problem isn’t hierarchy itself, but rather when hierarchies become focused on control rather than enablement, when they add process without adding value, and when they create distance between decision-makers and the work being done.
So, as senior managers, we have a responsibility to prevent excessive status reporting from happening, and the solution in 2025 is remarkably simple! Use A.I.
Today’s A.I. can replace 95% of status reporting toil and remove the need for most status meetings. Your project management system should be reading all work channels (GitHub, Slack, etc.) and automatically summarizing progress weekly in a draft that gets published with minimal edit by each project’s team lead. Build this summarization all the way up to the CEO, make all updates visible to everyone at the company, and eliminate meetings with an audience of one. Shopify has such a system, called GSD (Get Shit Done), and it works remarkably well. It also feels similar to the open-source CHANGELOG, which I have learned to appreciate over the years.
But now, whether you’re an IC or a CEO, you actually have to read those summaries! This is how you learn the real progress being made on projects, and gain the credibility to ask meaningful questions in public project or team channels. Personally, I make sure to spend time reading relevant project summaries and catching up to current state before engaging in any meaningful discussion with anyone.
So what is a pointy-haired boss to do if not status meetings? As a manager, your primary responsibility is building and aligning teams. Spend the vast majority of your time hiring and retaining people, identifying leaders who produce good outcomes, and giving them more resources. Communicate and over-communicate strategy, mission and vision. Use the time saved from status reporting to be deeply involved in one or another project by doing deep work.
The best managers understand that their job is to make themselves less necessary, not more important. They build systems and teams that can operate effectively without constant oversight, and they focus their energy on removing obstacles rather than creating them. Stop asking your team for status, create a system where you can find out for yourself.