Welcome back to our blog series on DevOps and automation. This is a series of posts that will touch on topics like the difference between DevOps and automation, ways to improve your DevOps culture, and how automation is an enabler to great customer experiences. Our last post focused on how an effective DevOps culture can lead to better automation. Today, I’ll be looking at the human side of things: how a personal touch still goes a long way, even as automation becomes more common.
Let’s be clear: automation certainly is still an important part of DevOps. You don’t want to waste time with daily, monotonous tasks, as there are only so many hours in the day to get our work done. Our time is better spent taking on value-add areas rather than processes that are repeatable. Fifteen years ago, you could push out updates every six months to a year and call it a day. Now, with the rapid pace of technology change, to stay in the game, updates must be far more frequent, often with multiple updates coming out in a single day. It’s very difficult to achieve this level of production without at least some automation, but it must work in tandem with a strong DevOps culture to maximize your results.
I like referring to the Agile Manifesto, especially if you feel like your organization is struggling with its ways of working. This manifesto aims to uncover better ways of developing software. The four values of the manifesto are below, and they all play into the idea of the personal touch:
When you combine Agile working practices with DevOps, you can manage change in a feature-focused manner, providing faster interaction and response. Managing change in this way means that in order to achieve the organization’s goals, a strong DevOps culture automates the majority of the overall development and delivery process, enabling teams to focus on areas that create a differential experience. This takes time – and a human aspect – to set up. Invest the energy into “automating the norm” and achieving the working practices and you’ll be well on your way to a strong DevOps culture.
Toyota is a great example of this. The Toyota Production System includes a concept called “Jidoka” that translates to “automation with a human touch.” That’s exactly the type of mindset your DevOps culture should have. It’s important to utilize automation to avoid human error and spend more time focusing on other processes and ideas, but losing that human element completely won’t do you any favors. For example, database administrators (DBAs) certainly can’t review, validate, and approve every single database change that comes through, but automation won’t be making them extinct. Rather, DBAs should serve as a complement to automation by using their knowledge and enforcing rules that ensure the database performs at an optimal level while remaining secure and compiling with regulatory standards.
Customers will appreciate that human touch, as well. It comes across in the product or service being offered. You can push out all the updates in the world, but if there’s a core issue in the infrastructure – say, new security risks, assessing your UI, the effect of a new browser on your application – automation won’t fix that straight away. You need the human element of digging into that problem area and developing a solution, which can then be automated for subsequent releases.