Many articles I write are useful for a general audience. I write on topics like staying calm, building trust, and having backbone. However, I also enjoy writing on deep topics which may be less applicable for some readers.
While the topic is relatively specific, it's not intended simply for those who are in charge of a reorganization. Everyone in a company is responsible for providing input, operating inside an organization, and recognizing the causes of inefficiency.
If (for example), you are a product manager on a product, you may notice that coordinating between a few teams is taking a significant amount of time. My hope is that this article will help you think through the issue, and some potential remedies.
This is also not a one-time effort by companies. I think every company / organization needs to regularly re-evaluate the below criteria, and see if the structure of their organization is efficient. As projects change and interaction patterns change, you may want to change your organizational structure.
Interactions have a cost
A single person working alone is the most efficient mode of work. If you are working on a project, and you have 8 hours in a day, spending the entire 8 hours on the project is by definition the most efficient.
Once you get to projects or organizations complex enough to need multiple employees, you'll need to figure out how those people work together.
Every hour you spend coordinating with another human is an hour you don't spend getting your work done. You want to minimize the reasons you need to spend time coordinating with other people.
- Splitting work. When you're on a team with other people, you need to make sure you balance the work between everyone. Every person added to the discussion adds cost.
- Deciding what to do next. A team needs to decide which work has the highest priority. Every voice in the discussion adds cost.
- Location differences. If you're located in the seat next to someone, that's fast, and humans are good at communicating in person. If they're in another building, it requires a video / phone call or instant message. That's a cost. It's slightly less efficient, and conveys information slightly worse. I love working remotely, but I don't believe communication is as efficient as in person. Every interaction adds a cost.
- Schedule differences. Various types of schedule differences can cause delays. Sprint lengths, deployment dates, holiday schedules, anything which can pause people from being 100% productive.
- Massive timezone differences. If you work with people in another timezone, it requires syncing calendars and potentially limiting the hours in a day the other person is available. Trying to work across a huge timezone difference can be disastrous. I've seen people try to manage projects with almost no work-hours overlap. It's painful at best.
- Priority differences. If you are on the same team, at least you have the same priorities (hopefully). When you're working across teams, or even across different organizations, this can be incredibly painful. If you have conflicting goals, it can be extremely expensive to reconcile priorities.
- More people = slower
- More teams = slower ++
- More organizations = slower ++++
- Different locations = slower
- Locations further away = slower ++
- Locations extremely far away = slower ++++
Debating things = cost
Coordinating schedules = cost
Hypothetical situation – Grocery stores
Imagine if you ran Krogway (a hypothetical grocery store company). In a normal year, your VP of physical stores has an IT leader which runs the security system, and the checkout registers. A completely different VP of online has an IT leader which runs the website.
Now you want to build a touchless checkout (like Amazon has). This requires massive work between the checkout registers and the website.
In this situation, to minimize the interactions needed, it would make sense to pull together the checkout registers and website under a single leader, so that priorities and coordination would be minimized.