One of my main pet peeves with Agile is that it, at heart, is a reactive paradigm. The mindset is that we’re in a “steady as she goes” state, there’s some event external to us and we react to it in an agile fashion. In many companies where the business side and the engineering side aren’t well connected, this is actually a fair way of representing reality as many Agile teams suffer from the business side coming out of left field and asking for functions that R&D never imagined would be required.
When R&D teams are unable to predict what functionality will likely be required in the foreseeable future, the challenge becomes that the architects are unable to prepare the architecture for easily incorporating the new functionality. The lack of architectural preparation causes an even worse response time. In general, this tends to result in increasing levels of irritation and deteriorated relationships between the business side and the engineering side of the company.
One may wonder why those poor souls in R&D are so unaware of where the company intends to take itself, but in my experience, many companies are blissfully unaware of where to take things. Although every company I work with claims to have a strategy, it very often is a small change from what we’re doing today and what we did yesterday. The general assumption is that the world doesn’t change that much and that consequently we can largely continue doing what we’ve always done.
Another pattern I’ve seen several times is where there are several competing strategies being pursued by different groups in the organization. Often, different proponents in power positions have their own strategies and where these strategies collide, politics tend to take over. Unfortunately, this is where naive staff members who are simply trying to do the right thing easily get thrown under the bus and become collateral damage in a conflict that really doesn’t concern them.
A third pattern that’s all the more common in times of rapid change is where each function and department executes on local optimization. As the strategic guidance from the C-suite is weak, each unit, function and department defines its own strategy that optimizes its area of responsibility but that tends to ignore the consequences outside of the scope of the unit. A typical example is where mechanical and electronics engineering optimizes for the lowest bill of materials and squeezes everything to the smallest size. This then kills any opportunities for the company to adopt continuous deployment of new functionality through the software and AI models in the product as there’s no headroom in the system.
These patterns are all reinforcing the same conclusion: companies need to have a clear, precise strategy defined and communicated. This seems like an obvious statement and kicking in an open door, but in my experience, most companies fail to deliver on this. There are at least three behaviors that I’ve seen: liberal interpretation, lip service and lack of commitment.
The first behavior is where the strategy is sufficiently generically defined that everyone can basically decide how to interpret it. This allows everyone to interpret the strategy in a way that makes it suit their purposes. Hence, the term “liberal interpretation”: it can mean anything you want it to mean. Obviously, this is akin to one of the patterns described above, but in this case, the company claims to actually have a strategy. That may be true in name, but in practice, the strategy doesn’t provide guidance and direction.
With lip service, the second behavior, everyone loudly praises the strategy and claims to follow it, but it’s only words and in practice, everyone does their own thing. Typically, that “thing” is how we’ve always done things. Again, there’s a strategy, it may even be a good one, but everyone in the company ignores it in their actions. The interesting thing is that I’ve experienced situations where people in the company don’t even realize that there’s a gap between their behavior and the company strategy.
The third behavior, which is surprisingly prevalent, is a lack of commitment. In earlier contributions, I’ve discussed the notion of espoused theory versus theory in use to discuss the phenomenon where people say they do one thing while in practice they do something else. This also applies to companies. In practice, even C-suite leaders who are responsible for defining the strategy and deciding on it do and prioritize conflicting actions. Very often, the strategy is considered to be sound, but risky. Especially when faced with a “now or later” decision, many times I’ve seen leaders choose to stay with the old ways at this point in time while claiming to execute on the new strategy next time around.
The concern I’m raising should be obvious by now: in many companies I work with, the official strategy isn’t well defined, not actively followed and often even actively ignored. In this context, a reactive strategy such as Agile works well. However, we shouldn’t accept this situation. Instead, we should define our strategy in quantitative, measurable terms, commit to it and then be responsive when external events affect our execution.
In “Alice in Wonderland,” Alice asks the Cheshire Cat which road she should take. The cat responds by asking her where she wants to go, to which Alice answers that she doesn’t really care. The cat then states that she can take any road she wants as she’ll end up somewhere on all of them. Many companies are unclear on where they want to get to and tend to be reactive, letting their destiny be determined by external forces. Obviously, this is a terrible idea. Strategy is about shaping the future and, to quote Alan Kay, the best way to predict the future is to invent it.
Want to read more like this? Sign up for my newsletter at jan@janbosch.com or follow me on janbosch.com/blog, LinkedIn (linkedin.com/in/janbosch) or Twitter (@JanBosch).