Let’s face it, web design and software development are not easy. Development and operations teams have different priorities, use different tools and methodologies, and can work in different environments. A typical scenario is one where the developers write and test code and then send it over to operations to deploy. Because web software is developed in one environment and then run in another, issues arise, conflicts occur, and the schedule is ultimately impacted. Rinse. Repeat. With teams siloed and oftentimes not even working in the same city, it can be difficult to get everyone on the same page at the right time. However, a solidly-embedded culture called DevOps seeks to use communication, collaboration, and automation to improve processes throughout the entire web development operations pipeline.
If your organization has worked with an agile web development methodology, then they are used to seeing the benefits of organized teamwork, faster turnarounds, and checkpoints and changes through the web software development lifecycle. This way of working can help your team make the transition to DevOps, which resides at the intersection of development and operations and exists to improve not only the software delivery chain, but also the organization’s overall performance. A main principle of DevOps is to encourage the development and operations teams to work together to understand each other’s processes and unique challenges so that they can release code faster and be better prepared to respond to changing business requirements. Much like agile, DevOps takes a holistic approach to software development and succeeds by changing the mindset of the staff and the way things are traditionally done. DevOps relies heavily on the human factor, so shifting the corporate culture won’t happen overnight. Change has to come from the top, but starting from a positive place of “yes” will put you on the right track.
The impact that DevOps has on an organization is measureable and adopting DevOps tenets such as code ownership, continuous improvement, and automation has become de rigueur for many corporate giants. Companies including Facebook, Target, and Adobe have all become believers as has Amazon which adopted a “You build it, you own it” culture where developers of a service are responsible for its operations throughout the lifecycle. Statistics paint a positive picture of the DevOps movement as seen in Puppet’s State of DevOps reports. These annual reports aim understand how companies that implement DevOps practices (i.e., high-performing organizations) fare with issues such as deployment, employee loyalty, rework, and security. The impressive results for 2016 are below.
1. High-performing organizations are decisively outperforming their lower-performing peers in terms of throughput. High performers deploy 200 times more frequently than low performers, with 2,555 times faster lead times. They also continue to significantly outperform low performers, with 24 times faster recovery times and three times lower change failure rates.
2. High performers have better employee loyalty, as measured by employee Net Promoter Score (eNPS). Employees in high-performing organizations were 2.2 times more likely to recommend their organization to a friend as a great place to work, and 1.8 times more likely to recommend their team to a friend as a great working environment. Other studies have shown that this is correlated with better business outcomes.
3. High-performing organizations spend 22 percent less time on unplanned work and rework. As a result, they are able to spend 29 percent more time on new work, such as new features or code. They are able to do this because they build quality into each stage of the development process through the use of continuous delivery practices, instead of retrofitting quality at the end of a development cycle.
4. High performers spend 50 percent less time remediating security issues than low performers. By better integrating information security objectives into daily work, teams achieve higher levels of IT performance and build more secure systems.
Starting a DevOps culture begins by developing a long-term plan that outlines how you would like your web team to function in 12-18 months. This is the time to take a good long look at your plan, assess your processes, and identify where you are seeing risk. Ask yourself and your team, “What is causing the process to be inefficient?” and “What are the typical issues that continually arise?” Give your team a voice and ask them for suggestions as to how they think the process can be realistically improved. What do they think about putting operations people on development projects? Is there anyone on the team who would be willing to learn new skills and work as the DevOps engineer to help bridge the gap between operations and development? What about inviting the operations team to kick-off meetings? Gathering this information may require a few closed-door sessions with your staff, but at least you will be getting them to talk about the process and think about solutions. Once your plan has been implemented, share it with other departments. The beauty of a DevOps culture is that its roots in project ownership and cross-functional teams can be implemented throughout your organization for increased efficiency and better outcomes.
Please contact us if you are interested in working with a high performing devops team on a web development project requiring our digital strategists, web designers, web developers, and data integration engineers