While DevOps is firmly grounded in reality, numerous myths and misconceptions have grown up around the concept, several of which have prevented organizations from getting the most out of their teams.
Is your organization functioning under one or more DevOps misconceptions? Here's a rundown of the six top DevOps myths you need to avoid.
1. DevOps is a cultural transformation that can't happen quickly or be mandated
Culture does not transform; humans transform when inspired to do so, observed Jayne Groll, CEO of DevOps Institute, a DevOps professional organization. “While we know that cultural transformation is as critical to DevOps as digital transformation, culture is often painted as a single 'thing' that can be transformed or changed," she said.
Culture is, in fact, a complex mesh of social and psychological interactions and behaviors that affect how humans perceive their work environment, management support, and peer-to-peer relationships. "Changing the way humans think, behave and work is not easy and requires a different set of strategic and tactical initiatives that do not involve automation or technology," Groll noted.
The most successful DevOps organizations are those that visibly invest in people. Such organizations have shifted their organizational design, hired coaches, launched hackathon days, and provided ongoing opportunities for their teams to get upskilled. "This approach not only expedites flow, but it also makes these organizations highly attractive to top talent," Groll said.
2. DevOps is all about tools and automation
Although automation is essential at different stages across DevOps, it's also important to establish the right practices and culture before addressing automation, stated Prasanna Singaraju, CTO and co-founder of Qentelli, an IT services company focusing on several areas, including DevOps. "If current processes that do not lend themselves to DevOps are automated, it will only lead to accelerated chaos," he noted. "Also, investing in tools and resources and hoping they will somehow magically solve problems will only lead to lost time and demotivated teams."
3. DevOps is separate from InfoSec
Too often, security considerations are seen as a hinderance to innovation, and an afterthought to the DevOps process. "This mindset creates a chaotic environment that leaves behind an unmanageable amount of security gaps," advised Chris DeRamus, co-founder and CTO at DivvyCloud, a firm that offers security, compliance, and governance guardrails for public and private cloud infrastructures.
Security must be integrated into every step of DevOps, and DevOps teams must be given specific guidelines to work within that include critical security considerations. "For example, developers should always use least privilege access and scope it from the beginning of a project," DeRamus noted. "This step is often skipped with the intention of going back and scoping later, but it’s far too common for developers to forget to do this, thereby leaving sensitive data too open and accessible."
4. There's no room for failure in DevOps
Pilot and project failures aren’t just acceptable, they're necessary. "If you’re not experimenting, you’re falling behind," stated Brendan Bank, CTO of MessageBird, a business-to-customer communications platform provider. "The other side of the coin is that you have to prepare your infrastructure for failure," he added.
Trying to cater for every edge case to prevent failure is not possible within today's infrastructure, especially with so many dependencies on infrastructure that are beyond an organization's control. "You have to prepare for failure and ensure your infrastructure has sufficient elasticity and orchestration so when there's a failure your infrastructure is able to move customer traffic away from the problem," Banks said.
5. DevOps is only useful for new technologies
Since DevOps gained popularity along with the rise of several new techs, such as the cloud, APIs, and containers, most implementations are within relatively modern environments. "We tend to forget that most processes in an organization span multiple platforms and applications, many of which are legacy," observed Zeev Avidan, chief product officer at API integration and management software firm OpenLegacy. "It's important to not only find ways to incorporate legacy and older systems into the DevOps process and mentality but, more importantly, to even incorporate the connective-tissue between the systems -- the integration layer -- into the DevOps process."
6. DevOps is all about releasing software faster to market
DevOps is much more than that, however. "It is about the joint collaboration of software stakeholders, including Dev, Business, Test, and Ops, to release high-value products to customers while reducing risks through a high degree of process automation," said Eran Kinsbruner, chief evangelist at Web and mobile app testing firm Perfecto. "When focusing only on releasing faster, without giving much thought to the entire process and parties involved, including the ability to reduce risks, the delivery of software does not meet the main executive objectives: fast release of value with high quality," he noted.