Author: Gabriel Vasquez

  • What To Do When Your DevOps Initiative is Failing

    What To Do When Your DevOps Initiative is Failing

    These days, it is difficult to find someone who hasn’t heard of DevOps. Statistics show that in 2017, just 6 percent of developers worldwide had never heard of it, and in 2018 this number decreased to 3 percent. You have to wonder who these 3 percent of developers are!

    Companies have been embracing DevOps initiatives with two core objectives: to reduce their time to market by delivering and deploying software faster, and to receive quicker feedback from customers. Many of these implementations have been successful. However, undertaking DevOps requires a major shift in terms of an organization’s culture and mindset, and companies often face difficulties.

    I want to examine some of the common challenges we see organizations facing and provide some best practices for overcoming them.

    Why do DevOps Initiatives Fail?

    Some of the core reasons DevOps initiatives fail include:

    • Not spreading a DevOps culture across the entire organization.
    • Choosing the tools without conducting research about what they do and evaluating whether they are a fit in your organization.
    • Setting unrealistic goals.
    • Trying to apply the same recipe that other companies have.
    • Not training your people.
    • Implementing a hybrid approach to DevOps where you attempt to keep your old culture.

    DevOps Initiatives Require Time and Patience

    Measuring your goals and monitoring your progress are the only ways to detect early warning signs that your DevOps initiative is not living up to expectations. But it’s important to note that patience is also required, as in most cases you will not achieve your objectives straight away.

    Getting to a full DevOps environment is not easy, particularly in large organizations, which are used to having siloed structures in their development process. So, start from the bottom up. Establish small goals that should be achievable, such as increasing the unit test coverage, improving the automation suit, reducing the time from code-commit to testing-ready. Measure these and use the results as possible warning signs or alert signals.

    There are also a series of steps you can take to put an initiative back on course. First, re-evaluate the process or processes you are having difficulties with and evaluate if:

    • The right metrics have been set and you are monitoring them.
    • The people applying the initiative are engaged with the DevOps culture, particularly if they are in different areas.
    • You have chosen the right tools.

    The Entire Organization is Responsible for Achieving DevOps Success

    In DevOps, the whole organization should be responsible if the DevOps initiative fails. There shouldn’t be one DevOps department or one person in charge of it; DevOps should be adopted by everyone, following the same path as Agile development. After all, they complement each other.

    Those companies that have successfully implemented DevOps have developed a strategy that fits the specific needs and demands of their organization. Although I’m currently mentioning some strategies that help companies achieve success with their implementation, there is no “magic” DevOps formula. A common mistake companies make when trying to fix a sub-par DevOps initiative is to simply copy what other companies do. Most of these companies end up abandoning the initiative because the outcome is not what they expected.

    Finally, if you’re planning to start implementing DevOps, keep in mind that it’s a process in which technical tools are as important as spreading a new culture based on collaboration, multidisciplinary, autonomy and open-mindedness. As this article points out, in many cases, the blockers to achieving success with DevOps are human, not technical.

    — Gabriel Vasquez

  • There is No Magic Recipe to Adopting DevOps

    There is No Magic Recipe to Adopting DevOps

    Over the past five years, we have seen more and more organizations of every size trying to adopt DevOps practices. However, we’re still expecting adoption rates to continue to rise—we have not yet reached “peak DevOps.” The motivations behind this comes from the need to reduce time to market, deliver better quality software, reduce operational costs and, ultimately, improve productivity and stay competitive.

    More enterprises are changing their business models by digitizing their business processes. We’re also seeing increased adoption of cloud technologies, agile frameworks and disruptive technologies. But these factors will not lead to an accelerated software development life cycle if organizations don’t prioritize better collaboration between people (no matter what area they belong to).

    Successfully implementing DevOps practices is not easy. Depending on the company’s size, it can take several months or even years. Most of these enterprises are learning what it takes to transform their organization. From our experience it takes several elements, but most importantly, engaged leadership is one of the most essential aspects for successful DevOps transformations. This leadership support will help organizations create dynamic and flexible business processes that eliminate traditional silos. This means that multiple teams can work together in a collaborative way, making seamless workflows that accelerate the software development life cycle and improve ongoing product maintenance. Such workflows bring tangible benefits, such as being able to rapidly respond to changing customer demands and developing better quality software, faster.

    Implementing DevOps is Unique to Every Company

    However, when talking about what it takes to adopt DevOps, we have to understand that there is no magic recipe that works for all. Every company has its own unique history, culture, and way of working, and thus will implement it differently. This is particularly the case because DevOps is really an amalgamation of different factors, from technology and automation to creating lean work processes and creating a culture of sharing between teams and individuals that traditionally were siloed.

    In 2019, Organizations Will Look to Scaling Initial Initiatives

    Very similar to what we have seen with the adoption of Agile development, most organizations have experimented with DevOps or have launched a small-scale pilot. They are aware of DevOps and the benefits it can bring. The challenge going into 2019, for the vast majority of businesses, is how to scale these pilots enterprise-wide. For example, in its 2017 survey, Forrester Research found that while just 13 percent of organizations had fully implemented DevOps, 50 percent had started their implementation and were expanding their use.

    We’re very much still on the journey to implementing DevOps practices. For example, many of the organizations that we work with are now using automation tools to get closer to continuous integration and continuous delivery capabilities, but there is still potential to use automation to a greater extent.

    There also exists a split in the types of applications that organizations are currently using DevOps for. Again, an interesting study by Forrester Research showed that in 2017, while 68 percent of organizations stated they were already using such practices for building and deploying mobile applications, this percentage dropped to 56 percent for ecommerce websites. I also believe that organizations need to improve how they measure DevOps success: Can they create metrics, such as level of level of innovation, or tie success directly to product revenue or process efficiency?

    As we look forward to 2019, more than ever business leaders will find value in looking at the best practices that companies have already developed on their DevOps journey. But we can’t forget that while two organizations may use the same automation tool, they will have very different cultures and way of working, with different goals and objectives. That’s why DevOps takes so long to implement, and represents a fundamental shift in how most organizations create, deliver and maintain software.

    — Gabriel Vasquez