In the software community, I hear often that “agile is a mindset” or “agile is a way of delivering software in iterations.” I think a bigger point is often missed. Before I address the missing point, let me first begin by sharing a little bit about organizations that are no longer agile and why.
Like a rock
Organizations start lean and mean because they have to be. If an organization survives its infancy stage, it usually leads to growth in size and profits. Small companies become mid-size and mid-size companies become large or even multi-national companies. Consolidating redundancies helps reduce cost as you grow larger and more efficient. Efficiencies at scale can improve profits and for publicly traded companies its stock price will improve as a result. However, the risk of communication breaking down becomes greater when organizations grow rapidly. Processes are then created to help improve efficiency and silos are often formed to align people to the appropriate areas of the process. Mid-level managers often become chiefs of fiefdoms protecting their self-interests, which are not always in-line with company goals. Getting work done becomes more challenging in this fractured and distributed company. Innovating becomes almost virtually impossible. Responding to market opportunities and changing customer requests bogs down the people and the organization. Projects are more frequently late, quality suffers, innovation stalls. The impact might even be seen in profits which finally earns senior leadership attention. The organization has become rigid and inflexible. If a more agile or nimbler competitor enters their space, the end is near.
Becoming rigid was an unintentional result of years of process, risk mitigation, cost control, company policy, and leadership decisions. If “rigid” is a result, “agile” is also a result. For a company to become more agile, it must readjust its way of thinking (or mindset) prior to becoming a rigid organization. Being agile means improving communication to spread good ideas, improving quality to speed up delivery, delivering smaller projects faster, avoiding solutions no one really wants, and reducing burdensome and unnecessary corporate policies wherever possible that slow innovation to a halt. Becoming more agile means focusing on and achieving company goals. It means reducing wasteful activities. In general, it’s about getting back to that lean and mean place when the company first started so you can start innovating again. If you do this, if you can pivot more quickly what a bad idea is discovered, if you can innovate faster, if you can manage change faster, you are agile.
Not everyone needs to be agile
For some companies, being rigid doesn’t affect their bottom line, thus their motivation to do anything new will be low. Examples include monopolistic enterprises like cable companies from 20 years ago, those with multi-year government contracts that won’t change like the software companies that contracted to build the backend systems for Healthcare.gov, and organizations that have very large barriers to entry such as taxi companies and medical device manufacturers. However, in the modern era of digital transformations and software becoming critical in all industries, companies with historically high barriers to entry and those that have virtual monopolies have found it won’t work forever. Change has rapidly come and more nimble competitors have eaten a lot of big company lunches. For companies figuring this out and doing it well, they will be the next market dominators. If you want to be competitive in the future, you’ll have to be agile or find your place in the history books.
There are lots of techniques and practices that enable agility at the team level that are commonly referred to as Agile software development. Those practices were pioneered by individuals who were trying to be more responsive to business goals and customer needs while delivering higher quality in less time. But over the years, ‘agile’ has become something teams and organizations do rather than something they are, and there is often little focus on results. If you are currently struggling with an Agile implementation, I recommend reading my blog Four Reasons Why your Agile Implementation isn’t Working.
Let’s speak broadly about ‘agile’ in terms of business results. Once we agree that we are trying to build teams and organizations that can effectively assess and respond to change, it’s a lot easier to discuss how to achieve those results using modern frameworks and practices that support agility.
Do you have thoughts on what agile means to you? I’d love to hear your comments!