In our white paper Roadblocks to Customer Centricity1 we identified the role respect, understanding and empathy plays in breaking down silos. This article is designed to create a shared understanding of DevOps; describing what DevOps is and its role in supporting innovation and customer satisfaction.
Here we seek to bridge the understanding gap between ‘the business’ who is often wondering why small changes to digital platforms seem to take so long, and ‘IT’ who wonder why they can’t get funding for DevOps initiatives when the business is pushing them to go faster.
Why ‘the business’ needs to understand DevOps
In case you hadn’t heard, customers today can purchase their morning coffee with an iPhone, GPS apps have replaced Melways and new discoveries are made simply by uttering the words “Ok Google”.
Nowadays, companies ahead of the pack2 are focused on delivering digital or omni-channel experiences that allow their customers to choose how they want to interact with them. This requires all parts of the business to understand technology, and how to work with the people who build it.
DevOps emerged as a way of solving this problem. In its simplest form, it’s an approach that sees development and operational teams brought together, so that the same people who develop code also maintain it, with the aim of improving collaboration and automation.
DevOps is a way of working that frees people to do more, and allows the business to deliver better products to customers, faster. Instead of IT developers maintaining code, they are continually developing and exploring new features leading to improved customer experience and speed to market.
Data shows that teams practicing DevOps3 are spending 26% less time on unplanned work and rework and 44% more time on new work, increasing their ability to respond rapidly and safely to changing market conditions.
DevOps is, by its nature, a collaborative effort. The removal of silos between developer and operation teams means a transfer of skills and knowledge, along with the creation of shared goals. During design and development, teams have more awareness and appreciation for the organisation’s IT infrastructure and dependencies of the product.
A DevOps culture ensures that the products, services and code created are supported by a cohesive ecosystem, leading to less rework and a more seamless customer experience.
An added benefit is that a DevOps culture helps provide an end-to-end view of the systems with which a customer interacts. Having a ‘whole of system’ view then translates to a sense of ownership and responsibility for how the software meets the customers’ needs and expectations, and how it is maintained internally.
In a collaborative environment developer and operation teams combine their workflows, removing the lag of handover periods. Automation also plays a big part in a successful DevOps team. Automating repetitive and time-consuming tasks such as testing, configuration and deployment removes the chance of human error, improves efficiency and frees up teams to focus on work that adds value.
One of our digital first clients was able to reduce their delivery lead time for new features and products by two weeks, through implementing a common DevOps practice known as Continuous Integration (CI).
In the past, multiple teams working across the same product used to create code in isolated environments or ‘codebases’. This meant that they needed to spend two days every fortnight merging separate parts of code, often fixing conflicts, and running manual tests to make sure everything was still working.
Team members now integrate their code multiple times a day, through a centralised repository. By leveraging CI tools and test automation, integration issues are now detected immediately, ensuring code is always ready to release.
A DevOps culture supports small and frequent releases and updates over larger, less frequent releases, turning innovation from being one big bang launch, to a process of continuous innovation that happens every day of the week, with the learnings being fed back into decision making.
This allows every product to be launched as soon as it is good enough to learn from, and the company to realise value in the fastest way possible4.
3. Effectiveness as well as efficiency
A DevOps team’s focus may be on increasing efficiencies and speeding up time to market. But, when a DevOps culture is in place there is a shift to support innovation effectiveness as well as efficiency. This means a change in focus to releases that meet organisation objectives, supported by customer and market insights. It’s no longer about being fastest to market, it’s about meeting the need the best.
A DevOps culture supports innovation by feeding back a continual loop of insights and results. Releases are then made in response to solid data and feedback from the wider company, customers and suppliers.
Combining development and operations skills into one team also means not only is code written and released faster, but it can also be measured against user expectations and tested for applications and network performance issues earlier, providing more opportunities for optimisation.
4. Knowledge sharing
Creating a DevOps culture is an opportunity to generate new opportunities for innovation.
With faster speed to market and feedback loops, DevOps teams are well positioned to identify, share and utilise new consumer insights for the business. And with access to more data and information5, teams are also more informed when exploring how new technology could be put to use within the business.
Knowledge sharing drives more effective go-to-market strategies at companies like Netflix:
“We want to make sure that all the engineers at Netflix are able to work as fast and as responsibly fast as they want to work. If we don’t give them enough context about what they’re deploying or about what’s going on in the ecosystem at large then they could cause big problems in the service. They could cause disruptions in the service,” said Marsh. “So, we’ve built a lot of guardrails into our tools that give context to our developers to help them make good choices.”
How Netflix Supports DevOps at Scale, Dianne Marsh, Director of Engineering, Netflix6.
5. Break free from barriers
Organisations create rules, processes and bureaucracies to help enforce standardisation, improve quality and reduce risk. However, these rules and processes can slow down and stifle innovation.
A DevOps culture can help identify the red tape bottlenecks that are slowing down speed to market and innovative thinking and help align team goals with overall business objectives.
This allows you to set up an environment that facilitates the frictionless flow of designing, developing, testing and deploying code.
An example of how automation helped speed things up is with a client who required all changes to the code base to go through a change advisory board who met once a month. We worked with the board’s change manager to understand and translate the assessment criteria for approval so that it could be automated. By doing this, the client was able to move from manual releases to releasing on demand.
A siloed approach to software development puts teams in conflict with each other and ultimately means the right product isn’t delivered fast enough. But by growing a DevOps culture the opportunity is there to challenge this old way of building software, rethinking essential things like, team structures, social contracts, roles and responsibilities.
Organisations who actively evolve their DevOps practices have reduced the transaction cost of implementing a change, by making software quicker, safer and more reliable to release — to the benefit of both the company and the end customer.
- Roadblocks to Customer Centricity
- Amazon Blends Digital and Physical Experiences At Their New Book Store
- DevOps Data
- The role of speed in innovation: gaining a competitive advantage
- How data democracy creates a customer-centric organisation
- How Netflix Supports DevOps at Scale: Dianne Marsh, Director of Engineering, Netflix