Every Organization Is a System. Are You Designing It or Just Living in It?

Most leaders develop systems thinking by accident. Here’s how to build it on purpose.

Seattle, USA – Photo by Kevin Goldsmith – March, 2026

I emphasize learning systems thinking, but I haven’t explained how to build the skill. I often highlight its importance, yet I rarely give people actionable steps to develop it.

My systems thinking is intuitive now, and most senior leaders I know developed it the same way: informally, through experience. This makes it seem innate rather than a skill to practice.

In this piece, I’ll lay out what systems thinking looks like, how to start developing it, and how to improve it over time. I’ll preview a specific framework and a set of practical exercises designed to help you put systems thinking into practice. If you’re looking for concrete guidance you can use right away, you’ll find it, read on.

The Two Modes

There’s a tension at the core of leadership that most people feel but don’t name: leaders must balance transactional management—defining rules, assigning tasks, creating incentives, and fixing problems as they surface —with systems thinking—understanding and addressing the underlying structures that produce those problems and results.

Transactional management works fine for small teams and short time horizons. It works for early-stage startups that are just trying to survive. But it hits a ceiling. As scope grows, the problems multiply faster than any individual leader can address them. Leaders who stay transactional end up playing whack-a-mole with symptoms instead of addressing root causes. If every problem you solve creates two new ones, you’re not solving problems. You’re rearranging them.

If you’ve been part of a small startup that grows into a larger company, you’ve felt this. In the early stage, transactional thinking works because you’re just trying to make it to next week. But as the company grows and time horizons lengthen, that operating mode starts to hold you back. That’s when you need to shift into thinking about the system you’re in and how to improve it.

Systems thinking is the shift from ‘why is this person not delivering?’ to ‘what’s making it hard for this person to deliver?’ Though subtle, this shift changes where you focus your attention. It also connects directly to strategy. When you understand the system, you can anticipate how a change in one place will affect another. That foresight, seeing second-order effects, links strategic and systems thinking as leaders advance.

The gardener metaphor is one I keep coming back to. You can plan a garden down to the centimeter: this rose here, that plant two inches away, exactly this many leaves. It can all be laid out on paper. Still, when you plant the seeds, and they grow, you’re going to get what you get. The goal isn’t to match the plan exactly, but to create conditions where good things grow. You guide and shape, yet the end result will always emerge from the living things involved. Often, the outcome is even better than planned because of the people who are part of it. That’s systems thinking in practice: you’re aiming for a positive outcome, not an exact one.

A Four-Stage Progression

I’ve put together a framework for developing systems-thinking skills. It moves through four stages, from observation to intervention. Think of it as a progression, with each stage building on the one before.

Stage One: See the System

Most people see individual actions, decisions, and outcomes. The first step is recognizing that these are connected by structures, incentives, and dependencies that aren’t always visible. There is a system beneath the visible activity of your organization, and until you start looking for it, you won’t see it.

I hear this all the time, even from people on my own teams: “This team is really slow. What’s wrong with them? Why aren’t they working harder?” But nobody has actually talked to that team. Nobody has asked what they’re dealing with. Maybe they have a poor set of tools. Maybe they’re waiting on another team for something that isn’t visible from the outside. It looks like a people problem, but if you ask the next “why,” you often discover it’s a structural one.

That shift in thinking is foundational. Instead of blaming the team or developer, ask: What conditions make it difficult for them to get their work done?

Stage Two: Map the System

Once you’ve started seeing the system, the next step is to make it visible to yourself and others. Draw the relationships between teams, trace workflow, and identify decision points and bottlenecks. Making the system explicit sets the stage for productive conversations.

When I join a new company, the first thing I do is talk to everyone, not just people in my organization but all the organizations around it. I ask what’s working and what isn’t from both inside and outside perspectives. That gives me more than a list of problems. It starts to reveal the interconnections between teams. Two companies can adopt the same team model and end up with completely different dependency maps. You can’t see that from an org chart. You can only learn it by talking to people.

People will tell you things like ‘we’re constantly waiting on this other team’ or ‘that group keeps dropping work on us.’ These aren’t just complaints, they’re signals about how the system operates. As you collect these, create a map: put teams on a board, draw connections and dependencies, using any tool that works for you. This process clarifies unseen structures.

This map is not a secret document. I share it with people and ask them to correct it. And this is important: the conversations the map generates are often more valuable than the map itself. People will look at it and tell you, “This is wrong, that’s not how it actually works.” That correction process surfaces things you wouldn’t have found on your own. Update the map as you learn. The org chart tells you who reports to whom. A systems map tells you how work actually gets done.

I also look at specific teams and count how many dependencies other teams have on them, and how many dependencies they have on others. Sometimes it looks like the product team is the bottleneck, but when you map it out, the real constraint is elsewhere entirely. It isn’t obvious from the outside or even from the inside until you visualize it. Having that map gives you a way to talk about problems concretely, not as hunches but as visible structures.

Stage Three: Understand How the System Constrains and Enables

Once you have the map, analyze where the system is helping and where it’s hurting. Where are the bottlenecks? Where are the feedback loops? Where are the incentives driving behavior, and are they producing the behavior you actually want?

Donella Meadows’ Thinking in Systems is excellent on this. She describes how systems have sources, sinks, and bottlenecks. In a product development organization, your sources of features and bugs are the sales, marketing, and product teams, as well as developers themselves. Your sink is usually shipping code to 100% of your customers. The path between those two points, and the things that slow it down or speed it up along the way, is the system you need to understand.

This analytical layer helps you recognize patterns across different situations. Misaligned incentives are a common problem: for teams not meeting expectations, examine what they are incentivized to do. Consider how performance is measured and rewarded, as these nearly invisible structures often explain dysfunction. You only see them when you look deliberately.

If you don’t like the behavior a system is producing, look at the incentives before you look at the people. A lot of friction between teams comes down to teams being incentivized for different outcomes instead of the same one.

Stage Four: Intervene with Awareness of Cascading Effects

This is the hardest stage, as it means predicting second-order effects and managing disruption from improvement. When you fix one part of the system, you might unexpectedly impact another. Anticipating this is critical to solving more problems than you create.

To help with this, I suggest using a simple tool before making any system intervention: run through a checklist or set of questions that prompt you to consider potential ripple effects. Here are a few to start with:

  • What are the upstream and downstream teams or processes touched by this change?
  • What current bottlenecks does this affect, and where might new bottlenecks appear?
  • Who stands to lose or gain power, resources, or visibility as a result?
  • What informal processes or workarounds are people relying on that could be disrupted?
  • What data or feedback loops exist to help you catch unexpected impacts quickly?

Asking these questions up front does not guarantee you’ll predict every effect, but it improves your odds and makes you a more responsible systems thinker.

Here’s a current example I’m thinking about a lot. Engineering teams adopting AI tools are getting faster at code generation. That sounds like pure upside. But the entire system around software development was built for a world where engineering was the bottleneck. Software development has been time-consuming and expensive for decades, and the industry’s practices are all organized around maximizing engineering capacity because it’s the scarcest resource.

Now, engineering is becoming less of a bottleneck. That should mean everything goes faster. But consider what happens. Product teams are used to having time to research and prepare features for engineering to pick up, because engineering consumes that work slowly. When engineering suddenly moves faster, the product team can’t feed the backlog fast enough. You’ve put back pressure on the product team. On the other hand, if you have a QA team staffed relative to engineering’s slower output rate, they’re now getting backed up as well. You’ve solved one bottleneck and created two new ones.

That’s not a reason to avoid the change. But if you don’t see the system, you won’t anticipate those downstream effects until they’re already causing problems. And if you solve the product bottleneck, then something upstream of the product team becomes the constraint. If you solve the QA bottleneck, you might now be putting pressure on the infrastructure, marketing, or sales teams. Understanding these cascading effects is what separates someone who can see a system from someone who can actually intervene in one effectively.

More broadly, AI and agentic systems are, at their core, systems design problems. When you design an AI workflow, you’re building a system with components that interact, handoffs between steps, feedback loops, and failure modes. Leaders who think in systems will design better AI implementations because they already understand how components interact and where things break down. Without systems thinking, leaders will treat AI adoption as a tool problem rather than a system problem. And adding AI to a broken process just gives you a faster broken process.

When You’ll Meet Resistance

Some people see systems thinking as cold or mechanical, as an attempt to turn people into interchangeable parts in a machine. When you try to map out what are essentially human relationships and team dynamics, very organic and people-centered things, some people will resist that framing.

It’s worth addressing directly. Systems thinking is not about treating people as cogs. It’s about making the environment around them better so they can do their best work. That gardener metaphor matters here: you’re not engineering a machine. You’re creating conditions for living things to grow.

You’ll also face friction from peers who operate in a more transactional mode. Sales teams tend to be exceptionally transaction-driven by nature. A lot of the tension I’ve experienced, and that the people I mentor experience, comes from engineering leaders trying to be long-term and systems-oriented, while transactional leaders in other parts of the company need everyone to work the way they do. The “doing stuff” approach, more reorgs, more reassignment, more process, looks productive in the short term. When you’re building systems, it can look like you’re not doing much because the changes are structural rather than visible activities.

This is where communication becomes critical. I learned this the hard way. At one company where I was CTO, I was building better systems, and the improvements were real, but I wasn’t explaining what I was doing well enough. My executive peers, particularly on the sales side, were getting impatient. I could have forced changes through transactionally, but that wouldn’t have produced what they actually needed next. The problem was that from their perspective, they couldn’t see the system I was building. The results weren’t proving fast enough, and I wasn’t making the progress visible. The system I forgot to work on was the one between my peers and me.

That failure taught me something important. Building a better system is not enough if the people around you don’t understand that you’re building one. Systems-level change takes time, and organizations are full of people who want faster answers. When you can hold the line long enough for the system to start producing results, people will become supporters. But if your peers and your leadership don’t understand your work on system-level improvements, they’ll evaluate you on surface-level metrics and lean into quick fixes that undermine what you’re building. Your job is to narrate what you’re doing and why, especially to people who think differently about management. Make the work visible. Show early wins. And keep communicating the trajectory, not just the current state. Communication about system-level work needs to be ongoing, not a one-time explanation.

That said, context matters. Long-horizon systems work is much easier in companies that are doing well. If your company is struggling and just trying to survive, that’s not the time for building systems that take years to produce results. Sometimes transactional leadership is the right match for the situation. Early-stage startups are transactional, and that works because they’re focused on survival. The goal isn’t to always be a systems thinker. It’s to know which mode the situation calls for.

In reality, most organizations need to blend both modes. Urgent issues often require transactional action, even as you continue system-level changes to achieve sustainable improvements. For example, you might handle a critical customer escalation with a quick fix while simultaneously documenting what led to the problem, and then working on a system change to prevent it from happening again. The best leaders combine systems thinking to shape the environment over time with the ability to execute decisively in the moment. That means communicating when you switch between modes, so your team understands why you act one way now and another later. Hybrid approaches let you address today’s fires while still laying the foundations for tomorrow.

Building the Skill in Practice

The progression gives you a mental model. But you also need concrete exercises to develop the skill. Here are the ones I use and recommend.

Map the dependencies when you join a new organization or take on a new scope. This is the first thing I do, and I think it’s the most valuable. Draw how teams relate to each other, not the org chart but the actual working relationships: who depends on whom, where handoffs happen, where shared resources create contention. You can only learn this from talking to people and asking them what’s working and what isn’t. They’ll tell you, especially if you’re new, because it’s not from a decision you made, and they’re hoping you’ll improve things.

Follow a piece of work end-to-end. Pick a feature, a bug fix, a customer request, and trace it from origin to delivery. Document every handoff, every queue, every approval step, every place it sits waiting. Look for the accumulation of small delays, not just the obvious bottlenecks. And remember that this map extends past your organization. You can fix your part of something, but your team is not the full system.

At one company, we had a velocity problem we couldn’t explain. The teams were good. The processes seemed fine. There wasn’t an obvious bottleneck. I asked one of my leaders to try this exercise: take a single piece of work and follow it through the entire organization. What we found wasn’t one big slowdown. It was dozens of small friction points, a day waiting here, two days waiting there. Each one was individually insignificant, and people were aware of them locally. But nobody had seen the accumulation. When you added them all up, they explained the entire velocity gap.

We streamlined those friction points and improved velocity without asking anyone to work harder. Everyone was already working hard. The system was working against them. It was only when we mapped how work moved through the system that this became visible. You can start this kind of exercise in Jira, but you can’t do it all automatically. You have to attend the standups, attend the retros, and follow the actual path. I’ve tried to do it purely through tooling multiple times. It doesn’t work.

Trace how a decision got made. Pick a recent decision and work backward. Who made the final call? What information did they have? Who influenced it? How long did it take, and where did it stall? This surfaces hidden power structures, information bottlenecks, and approval layers that slow the organization down. It also reveals whether the people closest to the problems are making the decisions or whether decisions are unnecessarily being escalated. This exercise is easier if you’re a senior leader who can see the full chain, but it’s worth attempting at any level.

Map incentive structures. For a team or group of teams that aren’t producing the outcomes you expect, look at what they’re actually incentivized to do. Examine how performance is measured, what gets rewarded, what gets punished, and what gets ignored. When I see bad behavior or misaligned priorities, I usually see perverse incentives at work. Teams incentivized for different outcomes rather than the same one will create friction among themselves, and that’s a system problem, not a people problem.

Start This Week

Systems thinking is not an advanced leadership concept reserved for CTOs. It’s a skill that can be developed at any level, starting with the simple act of looking beyond individual performance to ask how the structure around people shapes their work.

Pick one exercise and try it this week. If you are looking for the quickest way to open your eyes to systems thinking, start by mapping the dependencies between the teams you work with. I recommend this as the most impactful starting point, especially for first-timers or anyone short on time. It’s a simple, concrete way to see how your work fits into the bigger picture, and it often surfaces underlying issues you hadn’t noticed before. If you want a deeper dive, follow one piece of work from start to finish and write down every place it pauses. You can also trace how a recent decision actually got made, or look at an underperforming team and ask what they’re incentivized to do versus what you want them to do.

I also recommend two books that shaped my own thinking. Donella Meadows’ Thinking in Systems is the best foundational text I know on the subject. And Jurgen Appelo’s Management 3.0 integrates systems thinking throughout without always calling it by name.

Every organization is a system. The question is whether you’re designing it or just living in it.


To hear an extended discussion of this topic, please listen to my recent podcast episode: Every Organization Is a System. Are You Designing It or Just Living in It?

Originally published in my newsletter

Management and Systems Thinking

“Until managers take into account the systemic nature of their organizations, most of their efforts to improve their performance are doomed to failure.”

Dr. Russell Ackoff (thanks to Susanne Kaiser for the reference)

I came across this Twitter thread from Rein Henrichs, and I thought it had many good points about systems thinking and management.

It caused me to reflect a bit on my approach to systems thinking in the context of technical leadership.

One of the things that helped me the most as an engineering leader was developing a better understanding of systems thinking. When I (or others) use the analogy of “planting a garden” when setting up teams for success, this is what we mean. We are creating the system to enable groups and individuals to do their best work and then allow good behaviors (and results) to emerge. Of course, creating a system takes longer than pushing things down into the organization. Still, it produces more creativity and autonomy in the organization and makes it more resilient to change or challenges.

Managers who do not work with this understanding of systems think that management is purely about doing stuff: defining rules, policies, and procedures, assigning tasks, creating external incentives, and fixing problems. This “doing stuff” approach can produce good results in small teams or for a constrained about of time.

As Rein Henrichs also correctly points out, the act of building a system can be incomprehensible for others in the organization who are not directly involved (especially in other disciplines that are more transactional). This lack of understanding has often been my biggest challenge as a company’s senior engineering leader.

Building a system takes time. If you can get things to a good place where the system is starting to be self-perpetuating, the rest of the organization will see the improvements and become supporters.

Suppose the leadership team is impatient and doesn’t understand what you are trying to do. In that case, they will lean into the quick fixes listed above, namely re-organization or replacing individuals or trying to “drive accountability” through reductive top-down control mechanisms.

If that happens, you are stuck trying to mitigate the damage and build a longer-term plan to return to your original goals, but it is often a losing battle. The primary culture of the organization has re-asserted itself, and your chance to evolve it has mostly gone.

How do you avoid that fate?

Communicate! Make your plans clear in the hiring process, your initial days in the organization, and all along the process. Set realistic timelines for improvement and celebrate the successes along the way. When your peers are impatient, refocus them on the plan and the long-term gains you are working towards. Point to the achievements thus far and try to keep their “eyes on the prize.”

Will this always work?

No. It depends on the company’s situation and how much pressure there is on the leadership team. If the company is under stress, it might be better to refocus on shorter-term solutions that don’t actively detract from what you are trying to build.

My biggest successes in companies were getting the entire organization on board with the system I was working to build. Gaining support for a new systemic working is a culture change, and getting backing is contingent on the company wanting to change. If the company is on a “burning platform,” a situation where change is required for the company to grow or survive, you will find less resistance. A burning platform also provides the inspiration to persevere if the change is difficult.

My biggest failures trying to build systems were when I did not communicate my intentions clearly or did not get buy-in from the rest of the leadership team, or when I was not effective at communicating the improvements along the way.

Another challenge can be a change (losing a customer or a tough quarter) that puts pressure on the leadership team. In this case, you need to adapt quickly. Hopefully, the system you are putting in place encourages being nimble. You may need to pause the change to the system to focus on shorter-term tactical solutions. To minimize the disruption in the organization, be transparent about the need for the change, and set an expectation on how you will get reoriented towards your original vision afterward.

While there are many good books on systems thinking, the one I consistently recommend for engineering leaders is Management 3.0 by Jurgen Appelo. It isn’t just about systems thinking but weaves it into a broader book about management.

The p-word

I have never heard the word “politics” used in a positive light when describing a work situation. On the contrary, the words “corporate politics” evoke memories of cynical executives in ’90s movies quoting The Art of War to their reports while figuring out how to undermine their peers. One of the Merriam-Webster dictionary’s definitions of the word is “political activities characterized by artful and often dishonest practices.”

I propose that we reconsider the word “politics,” especially when used in a work context. The word, and the techniques ascribed to it, are inherently neither good nor bad. You can use politics for ill intent or good. Good intention aims for a win-win solution, whereas bad intent aims for a win-lose solution. Instead, let’s use this Merriam-Webster definition for the word “politics”: “the total complex of relations between people living in society.” For our purposes, let’s call the company we work in our society. A company is a society in that it can have a panoply of personal relationships, group dynamics, shared goals, and systems of governance.

If we can get over our initial reaction to being political, how can we use some of these techniques for win-win solutions to problems?

Thinking politically means thinking ahead (being strategic), understanding the motivations of the people you need to convince (having empathy), and understanding the interactions of the systems you are trying to influence (systems thinking). You are working to make something happen-something you cannot do on your own. You may be working to overcome resistance to a new idea in a conservative institution. You could be trying to persuade another group to help your team with a project that will be good for the company but might make that group miss their quarterly goals.

Thinking politically will help you gain support for your ideas, soften resistance to change, and focus people on the bigger picture. If you improve everyone’s situation, your peers will appreciate you, and you will find the way forward easier in the future. Conversely, done poorly, where you or your team move ahead at the expense of others, you will find it increasingly hard to gather support in the future.

Playing politics so everybody wins: A personal example

In the early days of the public cloud, I worked in a company that already had established data centers worldwide. Getting a new server racked meant requisitioning a server from the central IT organization, following all their guidelines around the machine’s configuration and which technologies could be used on it, and giving them access to maintain and manage it. The process to get a single server going with a public-facing interface could take months.

I was leading a new team trying to incubate a new product. We had adopted a Lean Startup approach, moving to get to market in under six months. As this was a brand-new area for the company, we couldn’t be sure how quickly the public would adopt the product, and we wanted the ability to add capacity quickly if needed or shut the project down if it wasn’t getting traction. The company’s lead time for servers was not going to work for us. So, we decided to leverage Amazon’s young AWS offering. I knew that this would be a controversial decision and might incur opposition from other teams, especially IT. I could have chosen to “ask forgiveness, not permission” and hope that my small team could fly under the radar long enough to launch, but that was very risky. Our actions could be interpreted as a deliberate avoidance of company security and budget policies, which could prevent us from launching if we were found out.

I spoke to my peers in other teams to understand their prior experience working with the centralized IT team. I learned that if I approached the IT team directly for permission to use the public cloud, I would get an immediate “no.” That would put me in a position of having to get their decision overruled, which would take a lot of time and energy. I decided to go a different route.

I put together a presentation on our plan for our product. I included our quick path to market to mitigate risk for the company, our plan to leverage the public cloud (to scale quickly and manage cost-effectively), and how we would address any corporate security concerns. The goal of the presentation was to build trust that my team was thinking about the business and not just playing with new technology, and to show that we had answers to the issues I expected other groups to raise. I portrayed our product plan as an innovative experiment in new product development; a low-risk approach to moving faster as a company. I wanted to get some protection for my team at a level that would short-circuit other teams worried about this new way of doing things.

After working with my boss to ensure I had their unequivocal support, we got time on my SVP’s calendar to discuss the plan. I prepared for any argument against the plan, but I also left room for input from the SVP to help them feel invested so they would help protect the project. We left the meeting with approval for our approach and moved forward quickly enough to launch the product within our six-month window.

The product was more successful and grew more quickly than we had planned. Our public cloud adoption made it far easier for us to scale as the number of our customers did. Our success also increased our visibility within the company, however. The teams invested in managing and growing our worldwide data center infrastructure now started to see us as a threat. I began to have many increasingly tense meetings with them to discuss moving into the corporate infrastructure. I could have used my product’s success to force the other team to back off, but that would have created even more enmity, setting up our teams for friction forever.

Instead of using my team’s success as a wedge to ignore the IT team’s demands, I worked with them to understand why we had to make the decision we had. I also identified what they could do to make switching to the internal infrastructure an easy decision for us and for other teams

considering following in our footsteps. I committed my team to switching to the company’s infrastructure as soon as it could support us.

Reading through that experience, you can see several political maneuvers I used to get my team the space we needed to ship our product.

  • Talking to my peers to understand what their experiences and anticipate challenges. Consulting my peers on the problem got them enlisted as allies. If I were successful, they would have a better chance of success themselves in the future. (systems thinking/having empathy)
  • Building a strategy to prevent the central IT organization from stopping my team’s plan. (being strategic)
  • Enlisting my manager meant I had an ally in my effort to convince other senior managers, someone who understood the SVP’s motivations and concerns. (having empathy)
  • Preparing my argument to the SVP not just to convince but also to engage. Making the executive not just an approver of the plan but a participant with a stake in its success. (being strategic/systems thinking/having empathy)

If I had stopped at this point or pressed my new advantage over the IT team, that would have been the type of corporate politics that people despise. I would have created a win-lose situation (and some very angry co-workers who would have justifiably felt I’d wronged them).

Instead, I took the following steps to help the group I felt I had to work around and improve the situation for everyone at the company:

  • I used the lessons we learned from AWS to help the centralized IT team understand groups like ours with less predictable or forecastable needs. (having empathy/systems thinking)
  • I committed to them that if they could support our needs (with our help), we would switch to the “official” infrastructure. (having empathy/being strategic)

Making sure we helped the IT team was more work for my team, but it was better for them and the company at large. It made the solution a win-win.

An outside observer, especially a jaded one, could look at each of my actions in a very different light. That observer would say that I schemed to isolate the IT team, skirted appropriate behavior, and cheated by going over their heads. If I hadn’t then gone back to help lift the IT team, I might agree.

One might say that the best thing to do would have been to work with the centralized IT team to convince them that they should allow and support my plan. I would agree with that sentiment if it were possible to gain the IT team’s support and ship my product on schedule. However, the experience of my peers told me otherwise. Those who have worked at large corporations with siloed functions working against different goals understand how intractable those other groups can be.

Don’t be a player of the p-word

When faced with a challenge at work, try to understand the motivations of the people you work with and the systems they operate within. From there, build a strategy to achieve your goal. If you can achieve your goal while helping others move towards theirs in the long term, you will be an innovator and a team player within the society that is your company. On the other hand, if you achieve your goal at the expense of others, you will be nothing more than a player of the unspeakable p-word.


Thanks to Laura Blackwell, Hannah Davis, and Mandy Mowers for editing help.