4 Ways to overcome early DevOps adoption challenges

There's no standard recipe for DevOps, but there are a few things that can help

4 min read

January 2021

Overhead view of a complicated highway interchange

What makes DevOps stick in a large organization in an established industry? As a manager of a group of DevOps engineers focused on automation of Continuous Delivery Pipelines for the enterprise, I’ve had a front row seat to Progressive’s journey to DevOps. There is no standard recipe for DevOps but here are a few things that helped us overcome early challenges.

Find willing partners and start small

It’s difficult to tackle large, critical projects without establishing a solid foundation first. Luckily, we had several willing partners (application development teams) that were well grounded in Lean and Agile practices. We worked with a small number of teams to demonstrate business value of an automated Continuous Integration/Continuous Delivery (CI/CD) Pipeline. We took time with those early teams to establish some of the key elements of a CI/CD Pipeline (e.g., Trunk-based Development, Continuous Integration, Automated Deployments, Integrated Automated Tests).

Once we gained confidence from those early implementations, it was time to scale up! We shifted focus to a large effort (10+ development teams) tasked with building the next generation Claims system for Progressive. It forced us to learn fast and identify obstacles to scaling.

Automation is important, but address process bottlenecks first

Automation is not a quick-fix solution to broken or bad processes. It’s common in large organizations to see work move through many different teams and organizational silos. These handoffs, whether within a team (e.g. Dev to Dev) or between teams (e.g. Dev to Ops), interrupts the flow of work and delivery of value. Since process improvement efforts can take months, it’s important to prioritize and focus on the right processes. Value stream mapping can be a great tool to identify and prioritize such bottlenecks.

For us, these handoffs had roots in legacy tools and siloed functional organization structure. Our initial focus was to improve developer experience and collaboration around Source Code Management and Continuous Integration. Removing those process bottlenecks unlocked immediate value for the development teams. It served as a positive reinforcement for further improvements and our ability to tackle more complex Release & Deploy processes. It also paved the road for automation to gain ground.

Avoid tool traps

While you are bound to have passionate discussions around tool choices for your CD Pipeline, it helps to ground those discussions in business and organizational goals. Most modern CI/CD tools in the marketplace can get the job done and are probably not going to be your bottleneck. The tool choices and offerings from vendors are likely to evolve over time. So, it’s more important to have a strategy around your tool chain integration than focusing on a specific tool.

Progressive’s choice of tools is guided by our desire to support multiple data centers and multi-cloud environments. Our tool chaining effort focused on global integration and consumption of DevOps tools, methodologies, and practices in the form of a "Pipeline Factory." The Factory abstracts underlying tools and integration complexities and enables a simpler and automated way to provision working pipelines.

Make it yours

DevOps is not about the destination, it’s about the journey. It’s a change management exercise to a large extent, which means people and culture should be on the forefront. At Progressive, we take pride in our culture of innovation and work environment, where people feel they can risk, learn, and grow. And our strong culture has undoubtedly been a key part of our success story.

It’s important to start the journey and evolve with a continuous improvement mindset. It takes time for different pieces to come together, even if you know what to do (e.g., addressing application architectural constraints, moving towards Continuous Testing, etc.). Communication is an ongoing challenge, partly due to traditional organizational barriers and fluidity of the transition. These challenges are unique to each organization, so the solution should be uniquely yours, as well. Start your journey and make it yours!

Sanjeeb Nayak has over 13 years of experience in managing IT application and infrastructure delivery teams at Progressive Insurance. He currently manages a team of DevOps Engineers responsible for designing and implementing solutions to advance Continuous Delivery and self-service capabilities.

Search careers and apply today

View job openingsCareers login

Join our Talent Network and get updated as new jobs become available.