Organizational Complexity is Making Things Worse


As the organization grows there are a lot of reasons layers are added. Here are some examples:

  1. We have to create titles for folks in order for them to move up within the organization or they will leave and go somewhere else. Without a promotion plan, we are going to lose staff.
  2. As a leader I have too much work and need to have other leaders reporting to me in the hierarchy. This will make my job easier.
  3. We have less senior folks that don’t know the right way to do things therefore we have to watch over their work. We also need to put in processes to make sure they don’t mess something up.
  4. Since we are now a public company we need to put more controls and processes in place.


Ultimately these changes come at a cost for the company. Leaders tend to compete for these new roles, not based on their merits, but based on popularity. I have seen leaders withhold information, “knowledge is power”, in order to impress others. Organizational goals are watered down into management goals, in which leaders compete with each other instead of trying to better the organization.


Leadership breakdowns in communication make their way down the organization to the teams. Teams begin competing with each other. One of the most common things you hear at a sprint retro is I wish “team x, y or z would do their job and get out of our way”. Maybe the blame is on the newly formed shared services team that is now seen as a blocker and not an enabler.

Individuals lose the sense of ownership and responsibility because they don’t see the product to the end.
You will recognize this in talk like:

  1. The QA team didn’t test it well enough
  2. The Release team doesn’t know how to deploy it
  3. I shouldn’t need to know how to the infrastructure works.

We also now need to hire project managers to keep track of everything that is going on. If there is too much going on and communication is really difficult, we now need portfolio managers to oversee the project managers. Individuals are now called resources and allocated to multiple projects. Project managers fight for the tried-and-true individuals (resources) causing burn out.

We now have a matrix organization with teams responsible to multiple leaders with different agendas. Budget season becomes long planning sessions with leaders trying to get their pet projects staffed before someone else does.

Conway’s law states that systems are designed to mimic the organizational structure. I have seen integration patterns designed in a way that benefits one team and not the direction of the organization. Continuing on, sometimes the project’s due date now informs the architecture of the system integrations.


This jockeying for titles can have negative impacts within a team.
Titles are seen more important to individuals than the organization’s goals. More of the “water cooler” talk is about other individuals, than what we are doing as a team.

In severe cases I have seen companies hire an individual back right away at a new title. This promotes bad behavior and the belief that individuals need to quit to be promoted.


As pressure builds for teams to deliver from multiple managers, the code quality begins to suffer.
With the team no longer in control of their own destiny, less than ideal coding practices form.

Getting Back to Basics


  1. Job titles are really not consistent between companies. Someone who has no leadership responsibilities may be an AVP at one organization, while a director may have many folks reporting to them at another. There is no consistency at the end of the day, titles don’t matter.
  2. Make it clear to folks the important thing isn’t a title, but rather the work and contributions they bring. Tell them they can use any title they want on their resume.
  3. If an individual is looking to make a change outside the organization, make it clear that you will validate the work they have been doing.


  1. The illusion of control is just that, an illusion. The folks writing the software are making many decisions all the time. They are the closest to the problem, therefore the most likely to be able to create solutions. You also don’t want to stifle the creativity of your best folks.
  2. Having more HR processes creates the need for more management to coach individuals. Does management really understand how to do this?
    Do they understand what their reports do on a day-to-day basis? Are they too far removed from the technology?
  3. Leadership’s true focus should be on customer service and creating value. They should be creating a culture and leading by example. You don’t need multiple layers to do this, you need to trust your folks and they will begin to trust you.


  1. Having less sr. folks isn’t a bad thing. It is an opportunity for stronger team members to mentor others. You can also learn a lot from new folks with new perspectives.
  2. If you put in a bunch of processes and procedures you will be forcing the talented folks to a lower standard. Instead bring the junior folks to a higher standard.


  1. Don’t fall for this! You need to protect your organization, but you always needed to do that. The more controls you put in, the slower you will be and the harder it will be to walk them back.
  2. This is an opportunity to be creative. You need someone to review a developer’s code, use pull requests and have it be another developer. Don’t create a separate release team; make developers hold each other responsible.

In the End

At the end of the day, it is your job to push back against complexity and be creative. You want to grow your company and be innovative?
Shouldn’t innovation be part of how you manage your company? You want the best talent, shouldn’t you let them do what they do best?

Don’t let your organization change just because it is growing. Keep the good stuff and nurture it.