The thing is, there’s so much more value to gain if we expand our thinking beyond DevOps/DesOps/DevSecOps.
We’ve formed our own perspective on how to create great services in hundreds of projects and development streams that we have done with our clients, users, and partners.
We’d like to share what we’ve learned as well as our way of thinking, hopefully initiating a discussion around the holistic side of DevOps.
What is Holistic DevOps?
DevOps thinking has its origin in tech teams using their common sense and combining software development, maintenance, and infrastructure operations. We went a little further and applied DevOps thinking beyond the tech domain by including design, business, and leadership perspectives. It’s a mindset that enables organisations to find, develop, and sustain competitive advantage in a fast-paced digital world.
The core idea of Holistic DevOps is to build a system that enables a fast-paced, continuous, and feedback driven evolution of services.
The key enablers for this kind of working culture are: Multidisciplinary and autonomous teams with flexible roles and a full mandate
- Systematic experimentation and validation
- Ownership created by belonging to a team with a mission
- An urgency to create value by solving real problems
- Emphasis on production as THE source of value and true feedback
- KPI and priority-based direction instead of scope and schedule based control
- A constant drive to automate everything that can be automated
- Understanding that failing and taking risks = learning
- Lean workflow with feedback loops and a pull system
Economies of speed
In the industrial age, we built functional organisations to leverage specialisation and economies of scale. Modern economies are built on code and code scales indefinitely, without delay. The application produced by a 10 person team can be distributed globally with negligible delay or increase in production costs. Economies of scale have been replaced by economies of speed.
Cycle speed and evolution are key.
Autonomy = speed, speed = evolution
Both capital and computing power are plentiful. Code is practically indefinitely scalable. The one thing we don’t have is time. Handovers, dependencies, lack of skills, and lack of decision-making power are our worst enemies. They kill the speed and productivity needed for constant evolution.
To do it right you need autonomous teams with all the core skills and “functionalities” they need. Provide them with the right tools and business leaders with sufficient decision-making power to make the necessary calls. Let them move fast. Moving fast enables evolution.
Constant validation keeps things on the right track
Moving fast is good, but moving fast in the right direction is even better. In its eternal hunt for value increments a Holistic DevOps team must systematically seek to understand its customers, identify problems worth solving and solutions worth building, as well as validate the impact of any changes in production. Only those increments that create value should stay in production. Finding the right direction is possible only through constant validation in all steps of the service development flow, which includes everything from opportunity mapping to production.
Don’t super-size it
We are finite creatures. We tend to communicate more efficiently with teams that fit into the same room. A single problem will generally keep us inspired for weeks rather than years. We are usually more efficient when we focus on one problem and domain instead of switching between dozens of problems per day. Compact teams that focus on solving one top priority problem will reach high cycle speeds and evolve faster than large functional silos. Teams are far more likely to keep up good energy levels and stay motivated.
Love the Production
Traditional project thinking often leads us to think that the journey ends when we have launched the service. We miss the opportunity to learn in production. In Holistic DevOps thinking, the journey really starts when you have something in production. That’s when we start solving our customers’ problems and the continuous learning begins. This is why we want focus on the most valuable problems, focus on increments and make them as compact as possible, and ship often to create value earlier and to learn faster.
It’s a fight against our own egos
Our egos prevent us from learning from failure. Our egos drive us to build mammoth projects and hierarchical organisations that make us look more important and powerful as leaders. Our egos make us think our own ideas are great and no validation is needed. Our egos encourage us to think that we can plan a perfect solution without any iterations. Our egos are convinced that our own competence and profession is superior.
Making real changes requires us to put our egos aside.
It’s not a project, it’s not IT
Holistic DevOps thinking introduces significant changes to organisation structure and management philosophy. Traditional project thinking, budgeting practices, and functional silos require too many handovers and kill the ownership in value creation. Top management’s role is shifting towards that of a venture capitalist who develops and supports a portfolio of independent teams that resemble independent startup companies.
In this era beyond digital, Holistic DevOps thinking is not an IT topic. It’s a business topic.