Automation with a twist: What Toyota can teach us about DevOps
Let’s face it: no matter how much exciting innovation is transpiring in the automotive industry, we take cars for granted, at least a little bit. It’s okay – just admit it. You hop in, drive wherever you’re going, park and leave it in the lot without a second thought about the complex, impressive process that brought your car into your daily life.
Well, what if I told you that reflecting on that pathway to a finished automobile could also teach us a lot about the future direction and keys to DevOps? More specifically, many of the principles underlying the socio-technical Toyota Production System (collectively known as the Toyota Way) mirror many of the outcomes we aim to achieve through DevOps.
If you think about it, the design, mechanical and materials engineers that must work together to produce a car are pretty similar to a merry band of software developers and ops professionals. The traditional assembly line is akin to application build, test and deployment. The robotic arms infiltrating today’s manufacturing plants are that industry’s version of automated improvements. Have I convinced you that it’s worth the time to dissect and consider Toyota as a model analogous to your DevOps initiative? Thought so.
Continuous improvement is paramount
Toyota is constantly looking to eliminate bottlenecks, become more efficient and avoid production errors. They don’t settle for being good at their design and manufacturing processes; they’re constantly searching for ways to be great. In software development, we call this ultimate goal DevOps nirvana, propelled by the practices of continuous integration and continuous delivery. We all want software to be equally great for customers, and this can only be achieved if dev and ops are consistently communicating, collaborating and pushing out frequent app updates. Pushing out a “good” app twice a year doesn’t cut it anymore. This isn’t the year 2000.
Respect for people comes before processes and tools
Sound familiar? Not surprised. Take a look back at the Agile Manifesto. When we’re talking about dev and ops, this means bringing the ops folks (aka database administrators [DBAs]) into the “inner circle” to become first-class software citizens. DBAs’ expertise and control of the database and updates critical to new versions of applications shouldn’t be marginalized or (and I’ve seen this happen) altogether ignored.
Automation isn't an option
The Toyota Production System includes a concept called “Jidoka” that’s pretty much tailor-made for DevOps. It translates to “automation with a human touch.” As an example, if you think DBAs are going to be able to survive taking the sea of SQL scripts provided by DevOps developers and manually reviewing, validating and approving database changes with any kind of effectiveness or consistency, you’re dreaming. On the other hand, those DBAs aren’t going to made obsolete by automation anytime soon. We still need to guide automation with their historical knowledge and rules that ensure the database performs optimally, complies with regulatory standards and is not at-risk to security vulnerabilities.
Regulations are complex - but it's worth it
Regulations are complicated, but no product can leave the factory without a thorough safety check. Admittedly, sometimes Toyota (or any auto manufacturer) is reminded of this the hard way. Still, the amount of crash testing and quality assurance that’s required at Toyota is mind-boggling. In DevOps, we can’t be any less exhaustive. Even if a developer doesn’t break the build, the figurative wheels can still fall off during the last mile of application delivery. We need to consider compliance. We need to stay secure. We need to be able to produce reports and conduct audits without wanting to quit our jobs. Those are nearly everyone’s least favorite things to tackle (save perhaps those obsessive CISOs), but they’re essential to reaching DevOps homeostasis.
If you ask me, the similarities between the Toyota Way and the “DevOps Way” are too uncanny to ignore. And, if we draw a few simple parallels, Toyota’s successes can teach us much about where our DevOps programs ought to be headed in the future. It should be every DevOps shop’s mission to become a global powerhouse like Toyota, and sometimes the key to doing so is going back to basics.
- » CenturyLink dips its toes into EMM waters with IBM MaaS360 offering
- » Mind the gap: Revenues will suffer if IT remains stretched, companies warned
- » Majority of mobile collaboration firms will support chatbots by end of 2017
- » Why enterprises who keep their IT models static will face trouble ahead
- » The three enterprise ‘smart’ app trends that are transforming business processes