I asked Gene Kim, researcher and co-author of The Phoenix Project, five thought-provoking, high-level questions about how DevOps and Platform as a Service (PaaS) can benefit 21st-century enterprises right now and in the long term.
Steve Leung – What are some of the most common challenges for Development & Operations teams today?
Gene Kim – There is a downward spiral that will occur in almost every IT organization if left unchecked. It is so powerful that it pre-ordains horrible outcomes, if not abject failure. It happens in both large and small organizations, for-profit and non-profit, across every type of industry.
The story almost always starts in IT Operations when we have to support fragile infrastructure. Why do we call it fragile? Because every time anyone touches it, it breaks horrifically, causing an epic amount of unplanned work for everyone.
All this unplanned work makes it impossible to get our planned work done, and because what is fragile are some of the most important applications, the organization becomes unable to achieve the commitments that they promised the outside world, whether it’s customers, analysts or Wall Street.
Promised features aren’t available, market share isn’t going up, average order sizes are going down, specific revenue goals are being missed… And that’s when something really terrible happens.
Things get worse when the business starts making even bigger commitments to Wall Street, often dreamed up by product managers. As they dream up new features designed to dazzle the marketplace, they start making promises to the outside world.
Now Development will see more and more urgent date-driven projects put in the queue, often requiring things that the organization has never done before. Because the date can’t be moved (because of all those external promises made), everyone has to start cutting corners.
Development must focus on getting the features done, so the corners that get cut are all the non-functional requirements (e.g., manageability, scalability, reliability, security, and so forth). This means that technical debt starts to increase. And that means increasingly fragile infrastructure in production.
Technical debt not only prevents us from fixing and replacing fragile artifacts, but it also slows down deployments. We can all think of an application that used to take an hour and now takes three hours, then a day, then two days—which is okay, because can still get it done in a weekend. But then it takes three days, and then a week, then two weeks!
When the deployments become this difficult, basic human nature kicks in: we want to do painful things less frequently. This means less frequent changes, more painful deployments, longer recovery times, less practice at doing the deployments, etc…
And the downward spiral gets more and more painful.
Steve Leung – Who should be driving the changes needed, business or IT? What is the role of the CIO in this transformation?
Gene Kim – More than ever, organizations need to innovate in order to win in the marketplace. And almost all innovation requires technology. Over 95% of capital projects involve IT, and over 50% of capital spending is technology-related.
IT has become not only the nervous system of the organizations we serve, but also is the majority of the muscle mass.
The need to innovate and deliver technology to help the business win is a competency for any organization. As Chris Little quipped, “Every company is an IT company, regardless of the business they think they’re in.”
The role of the CIO is to create a culture that enables fast flow of work, and amplifies feedback loops so we can quickly experiment and make adjustments, and engineer resilience into the code, infrastructure and organization.
Scott Cook’s rampant innovation culture showed how the 100 experiments they performed to the online TurboTax property (in the middle of peak filing season!) increased customer conversion rates by 50%. Facebook’s regular Hackathons improve their tools, automation and processes iteratively created the infrastructure that now serves over one billion users. Amazon’s focus on accelerating hypothesis-driven delivery, where each deployment is part of an A/B test to improve a business outcome, now results in an average of 2,000 production deployments per day.
Steve Leung – What would you say are some indicators that an organization is ready to take on a DevOps project?
Gene Kim – It’s when an organization starts to recognize the shared goals between Development and IT Operations and they are both contributing to the IT downward spiral that I discuss in Question #1.
When both groups can say, “Holy crap, that’s happening to us, and we need to do something to stop it from happening again,” it’s an indication that there’s a collective will to solve the problem.
When you have people in IT Operations and Development reaching out to the others, and these boundary spanners create a coalition to start changing how things are done, we know we’ve gone beyond just talking about the problem. Now we’re actually changing habits and behaviors, and that is what changes outcomes.
Steve Leung – What are common misconceptions about DevOps and PaaS?
Gene Kim – The two biggest misconceptions about DevOps and PaaS are that it’s a technology problem and that PaaS enables #NoOps: the skills and instincts of IT Operations is still needed, regardless of the environment that the code runs within.
Steve Leung – What is the role of PaaS in the context of DevOps?
Gene Kim – One of my favorite quotes I heard recently came from Kelsey Hightower, who said that his goal as an IT Operations leader is to enable self-service wherever possible. “Self-service is awesome; if they can get work done without opening a ticket, we’re winning.”
We now know that one of the best predictors of DevOps performance is that IT Operations can make available environments available on-demand to Development and Test, so that they can build and test the application in an environment that is synchronized with Production.
This requires that there be an automated process to create the environment, and one of the best mechanisms to do this is with PaaS, and can be a game-changer for how code is delivered to customers.
To learn more, you can check out our On-Demand content featuring the Google+ Hangout titled, “Private PaaS: Accelerating Continuous Delivery for DevOps.”
For more on cloud and systems integration, watch this webinar with Forrester VP and Principal Analyst John Rymer.