Working at a startup is an endless cycle of finding solutions for problems that arise.
It is often easy to fix problems when they are isolated. But how do you solve problems in a complex system where there are multiple actors influencing the issue?
That’s where systems thinking comes in.
We spoke with Mehmet Bolak, Head of Engineering at Territory Foods, to explain the principles of systems thinking. Mehmet has studied systems thinking and used it to bring light to complexities and even determine user intent for the products at Territory Foods.
This conversation has been edited for clarity and length.
How would you explain systems thinking? How can technologists apply systems thinking?
Systems thinking is really a different way of modeling how things work. Most people have the natural tendency to think linearly about problems. For instance, when you take a typical analysis of a problem, you dissect each individual component into its own discrete element. Then you think about those elements behaving in a deterministic, linear fashion.
Systems thinking is really promoting the process of synthesis or how all of those small discrete elements of a system are interconnected to achieve one goal or purpose.
You can really think of a system as something that consists of elements, interconnectedness, and then some sort of functionality or, in the case of human systems, a purpose.
There is a class of problems that lends well to a systems thinking approach. They’re defined by these four characteristics:
- The problem has to be important
Synthesis and systems thinking takes a lot of time. Practicing systems thinking on a trivial problem or a problem that doesn’t have a lot of value may be a waste of time.
- The problem has to be observable
If it’s an opaque problem, you’re not going to be able to model it.
- The problem is chronic
The problem needs to occur more than once. If it’s something that only happens one time, it’s going to be hard to observe the system and model it correctly.
- The problem isn’t solved or is only partially solved
If you have a solved problem, there’s no use in modeling it out because it takes a lot of time.
Anything that fits those constraints is a problem apt for this type of thinking.
As a software and computer science person, my brain goes to software systems, but you can also think of ecological systems and social systems. The universe is made up of systems and how they interconnect.
How can you model your product’s user journey using systems thinking to identify gaps that you can utilize in the system that you are modeling?
If you think of a system, there are all of these intangible pieces or elements to consider. For instance, in social systems, there are emotions, stress, and excitement. Other systems, including software and a user journey, are no different.
The easiest way to start modeling a system is to identify all of its tangible elements because those are the elements that you see when you’re observing the system. As a disclaimer, it’s super easy to overdo this process.
In our case, that could be a person ordering our food or each product that they’re buying. Once you start identifying elements, you can literally break them down into their own systems and their own elements, recursively and seemingly forever. So before you get that far… once you’ve listed most of the obvious and apparent elements of a system, you can start thinking about what the interconnections of these elements are.
These connections can be thought of as either physical flows of how elements interact with each other or other behaviors. Once I have some of the tangible elements and interconnections, I generally like to implement them as a graph data structure where each note of the graph is an element and each edge is an interconnection of the system. If you don’t want to dive into a graph database, like Neo4j or something like that, you can just use a regular diagramming tool like Lucidchart or MindNode to start mapping all of these elements and interconnections in one place. Once you have this initial diagram, you can keep observing the system in question for behavioral changes to find your intangible elements.
As you observe the system, you’ll notice that there are things happening that aren’t explained by the current elements and the interconnections that you have mapped out in your model. You’ll start seeing those intangible elements and how they’re interconnected in the system.
Once you have those previously unobserved elements, you can add them to the diagram where appropriate. In our case, that element was the intent of why someone was buying our meals.
Intent itself is one of those intangible elements of a system that can’t be seen. You have to find it based on behavior, or seemingly arbitrary interconnected edges in our graph data structure example.
Going through that exercise, we noticed that we’re operating within a larger overlapping system context than initially thought.
Can you expand on the example you provided when you used systems thinking at Territory Foods?
This kind of goes along with some other product discovery approaches that you’ll hear in the space like the 5 Whys or general root cause analysis.
If you think, “What’s the intent of this purchase?”, “Why is this customer buying our food instead of some other food delivery or meal subscription company?”, you quickly realize there’s a different system context that you’re operating in.
If we answer that question with the truth we’ve learned from interviewing our customers (which is our customers are buying our food because they want consistently healthy food, but don’t want to spend all their time meal prepping) then we can jump into a separate systems context of activity.
So why is this person meal prepping? Well, we know behavior-wise that people who meal prep are also people who work out a lot or spend a lot of calories on activity and they need specific fuel.
All of these elements together reveal a system of fitness and we find that we’re actually operating in a fitness system.
From that knowledge and context, you expand. If we’re operating in a fitness system, then exercise is the outflow from the system and nutrients are inflows of energy, then we can model the system as a whole. It isn’t nutrition or food anymore, but this larger fitness context. Zooming out more, the real system is optimizing the human body.
So maybe we can find ways to innovate in that space.
Having that new context, we jumped into product discovery and found applications like MyFitnessPal which rely heavily on their users to crowdsource calorie and macronutrient information that may or may not be accurate. Whereas we actually have all of that data for our food. We know all of the nutrients. We have all of the calorie counts. We know exactly what you’re eating, as long as you indicate the meal you just ate.
Then you see applications like Peloton where all of the system outflow data is already being captured in platforms like Apple HealthKit.
In short, we’re really betting that we can innovate, by capturing that system inflow data, to empower users as they build their own personalized fitness systems themselves. Whereas if you look at the whole system architecture of fitness or optimizing the human body, you’ll see that there’s a lot of technical innovation in the fitness analysis (outflow) and not a lot on the nutrient or calorie analysis (inflow). Having all of that data available to us puts us at an advantage against platforms that rely on crowdsourcing.
That’s something that we discovered through this process that wasn’t initially apparent.
For those interested in learning more about this practice, can you recommend some systems thinking material that was beneficial to you when you first started learning?
The main medium that was helpful for me was the book Thinking in Systems: A Primer by Donella Meadows. I strongly recommend that book to start out with.
Then there are a bunch of websites and blogs and Medium publications out there. If you’re super into it, it’s something that a lot of educational institutions are implementing. MIT xPRO has a course on systems thinking, and there are a lot of other engineering schools that have systems thinking courses now. Some of them may offer it for free. I know Stanford publishes a lot of their courses work online for free. Those are where I would start, the small investment of thinking in systems.