DevOps is ripe with potential pitfalls when it’s time for implementation, and they generally fall into three categories: business, technology and IT leadership.
And those mistakes do not sit in a silo, according to a recent iSpeak webinar; the top five in each area are intertwined.
From a business perspective, the top mistake is a lack of clear communication of changes, said business technology strategist and iSpeak webinar host Jeanne Morain. “Make sure that your business counterparts are aware of changes.” Providing FAQs for organization change management is a good way to educate users. “Little changes that we think may be mundane can be significant to the company.” One example she cited was an icon change that prompted savvy users to think a system was infected with a virus. Consequently, the company’s IT help desk was flooded by 10,000 support calls.
If there is a change management system in place, adhering to it usually mitigates against the likelihood of IT deploying code before the business is ready, she said.
Andi Mann, founder and business technology strategist at Sageable, said it’s really important to understand the downstream impact that changes are having. Streaming out changes to the end user, especially in a larger organization such as a bank, can be problematic. “You do get confusion.”
“The business cannot consume the changes as quickly as IT can deploy them,” Morain added.
Many organizations start their implementation before the business ready and without having executive buy-in. “This is a critical component,” Morain said. Organizations should make sure business leaders are aligned on the timing of changes that will affect the business and have an executive champion for any DevOps initiative.
That champion should be surrounded by cross-functional representatives that encompass business, technology, governance and finance. “With their buy-in, you’re going to be more apt to have their team adopt the new system,” said Morain.
Many enterprises move ahead with a DevOps implementation without setting any key performance metrics once the funding is won, but executives and corporate board members are looking for value updates. IT leaders should look at measuring key performance indicators early and often. “The more you can provide value to your customers, which are your business counterparts, the more they are going to see IT not as a cost center, but as a profit center.”
Mann said a big part of DevOps is looking at the whole system of delivering a new application end-to-end. “That means having executives understand it and having them sponsor it,” he said. “It involves both the upstream and the downstream.”
IT leadership needs to do different things than the executive leadership, said Mann. “One of the big problems I see is technology leaders starting with technology solutions.” He said DevOps is a people issue and how they work with each other and the process. “It’s also about delivering a service to the customer.”
A frequent problem is the maintaining of silos, said Mann, as well as the creation of new ones. The wall between Dev and Ops must be torn down, and DevOps should not be treated as a project. It’s about continuous improvement that doesn’t end. “Start with people and processes, don’t start with products and technology solutions.”
The technology is still important, said Brian Elkins, VP engineering at ExamSoft, and there are five common technical mistakes made in DevOps: not understanding technical security and access management; failing to manage environments consistently; ignoring monitoring and metrics; having a codebase that’s not ready for frequent releases; and, not designing automated tests for scale.
“You really want to map out a plan to secure your environments,” he said, including enterprise infrastructure and cloud providers. “You also need to map out your APIs or any automation scripts you may be using for deployment.” Plans need to be tested, he added, to fill security holes and gaps.
Elkins said organizations often make the mistake of taking 10-year-old legacy code written in a handful of languages and trying to migrate it to the cloud; Morain advises organizations to avoid an application that already has a fragile codebase; a DevOps implementation should start out with something that’s already pretty stable.
Ultimately, DevOps is not just about the code or the technology implementation, said Morain. “It’s really looking at the bigger picture across business, leadership and technology and making sure you put the right mix together.”