The Dev Ops Problem
What it is, and what to do about it.
As someone who spends all day, every day working with AWS technologies, I think of wheels and spaceships often.
I’ve spent a lot of my career with my hands on the keyboard, reinventing the wheel. It’s not unusual to write some custom code or process to solve a common IT problem, or use a tried-and-true IT tool to meet a need: Cron jobs for managing backups, custom deployment scripts, leveraging a suite of open source monitoring tools.
It’s only natural to want to apply those same tools and processes in the cloud. But in the cloud, we have opportunities to construct spaceships to help organizations provide a greater range of offerings and better solutions for their customers, and that’s not going to happen by making another wheel. Building a spaceship requires standing on the shoulders of giants (who are creating flexible solutions for thousands of customers), taking the latest foundational technologies and designing from there.
To get from building wheels to erecting spaceships, we need to acknowledge three fundamental and inter-related problems with DevOps:
Technology: Anyone spending any amount of time in the cloud will tell you that the pace of innovation is dizzying to keep up with, whether navigating the “New” pop outs on the AWS console, following the latest releases on blog sites, reading the latest white papers, or going to conferences such as re:Invent. Keeping up with these changes is a full time job.
Tools: Native cloud tools compete with marketplace solutions as well as third party and open source solutions for, well, just about everything you can think of. It’s a smorgasbord of solutions, a buffet of items to choose from, and much like a spice market in Istanbul, overpowering and at times disorienting. I always find it fascinating at re:Invent when AWS announces a ‘feature’ release, which effectively puts 20 or 30 of the vendors in the Expo hall out of business, or at least sends them back to the white board to figure out how to derive even greater value out of their products, often just to play catch up.
People: The cold, hard truth is that a traditional IT mindset brings increasingly less and less benefit to the cloud infrastructure environments, where understanding the value of a cloud-native approach is critical. In fact, it’s an incredibly scary time for IT people in general, where infrastructure as code and machine learning are replacing and enhancing so many traditional IT approaches to deployment, config management, security, governance, etc. To maintain relevance in this milieu requires a fairly exhausting mix of leaving the comfort zone, humility and study.