Author: Tim Stone, Director of Operations
While Fortnite may be all the rage among teens (and millions of adults), for IT leaders, DevOps is where it’s at. Yet, despite its growing popularity, this concept is still foreign to many enterprise decision makers. To really gain the value of a DevOps pipeline, the time is now to get your organization on board.
But how do we start? How do we justify the effort? And how do we ensure success?
You may be engaged in DevOps if…
If your developers use a toolchain approach; if your current systems monitor metrics to measure application performance; if you are using Cloud computing to advance your infrastructure… Your company is already in the DevOps game.
Despite some of the confusion and mystery behind DevOps, the fact is, even if it’s not fully understood or branded as such internally, most organizations already have some sort of DevOps in play, from basic source code control to release management protocols.
Pointing out existing DevOps initiatives is an opportunity for IT leaders to educate management on the concept, dispel fears or misnomers, gain their support and move forward with a more robust program.
Show me the Value
With 74 percent of organizations adopting DevOps principles and practices in 2016 – up from 66 percent only one year earlier (DevOps.com) – this culture is proliferating the software development field. This should come as no surprise when we consider some of the many tangible and immediate benefits of this approach.
- By applying Agile principles, a sound DevOps strategy enables faster development, more precise coding and more frequent market delivery.
- The removal of manual, error prone steps in the release process, combined with a clearly defined and automated testing process ensures faster recognition and remediation of code defects.
- Freeing up key resources from tedious, manual tasks allows them to focus on adding real, strategic value to the business (and makes them happier).
- From requirement to product release, DevOps fosters collaboration, transparency and shared accountability between teams, thus streamlining the process and increasing deployment success.
The price you pay
In contemplating DevOps, rather than asking “What’s it going to cost?” organization leaders must ask “What will be the cost of NOT doing this?”
Getting leadership buy-in is critical to any development project. However, initial support will be deemed meaningless if your process leads to a failed release. The pain from a failed release can range from minor inconveniences and short-term down time stemming from an internal application outage to significant financial and reputational damage associated with a public facing site outage.
In addition, without DevOps, every new release requires significantly more hours of labor, thus incurring higher operating expenses. Furthermore, manual methodologies of code deployment do not typically allow for automated testing yet often do require extensive documentation and skills training, which may not be part of the teams’ core job function.
Out with the old, in with the new
For most companies the process of releasing new systems or applications – internal or external – is an intensive, manual endeavor. With a lot of tribal knowledge baked in, these organically grown systems become inherently fragile, prone to errors and reliant on key personnel to execute every release. In order to shift to DevOps, you must first shed light on the good, the bad and ugly of your current process for addressing:
- New features / bugs that need attention
- Scope and prioritization for new development
- Code saves
- Code builds
- QA action and process
- Release to production
- Validating success
Once the current process is mapped out, you need to design an “ideal state” DevOps pipeline. While it’s not something any organization can expect to achieve immediately, it is important to formally state this goal, which will include: requirement gathering, development, source control, build process, testing, release and continuous improvement.
The End Game
DevOps is often a project that sounds great, but because it entails a cultural shift within an organization, it can be challenging to get off the ground. By setting expectations and promoting the benefits of the end goal – streamlined development cycles, fewer deployment failures, faster recovery and cost reductions – IT leaders can gain support from those who will be using the tools and from those who will by paying the bills. With the organization on board and measurable steps in place, you can carve out specific functions, focus on automation and continually improve the development process. Remember you don’t have to do everything at once, but by adopting a cross-functional development culture, it won’t take long for your organization to realize the benefits of devotion to DevOps.