Almost 10 years ago, Amazon CTO Werner Vogels famously revealed how the company had moved away from traditional department-led Web operations to developers deploying their own code.
“The traditional model is that you take your software to the wall that separates development and operations, and throw it over and then forget about it. Not at Amazon. You build it, you run it,” he said.
(Related: Putting the ‘Ops’ back in DevOps)
His words now ring true for Web development teams everywhere. A workflow that was unthinkable 10 years ago is now becoming the standard for modern teams thanks to today’s powerful, reliable and easy-to-use cloud infrastructure services. And thanks to new tools like Amazon Web Services, Heroku, DigitalOcean, GitHub, hosted CI, etc., developers can now write, test, deploy and operate large-scale Web applications without involving traditional Ops teams or system admins.
It’s a new landscape where entire roles are being phased out and developers need to rapidly acquire new skillsets to adapt. Like any drastic change in an industry, those who don’t adapt will get left behind.
Great CTOs need to successfully transition their developers to this new reality. When introducing a workflow of “You write it, you ship it. You ship it, you fix it,” every developer will be held accountable for the code he or she ships. It can be stressful to know that when shipping code, you’re adding to the bucket of code that you’re already responsible for. An unintended effect of this approach is that it could contribute to greater anxiety around shipping code, thereby decreasing output.
Software output is already a major issue for CTOs. A Cambridge University study from 2012 concluded that developers spend nearly half of their time (49.9%) debugging. As a developer myself, I’d say that number is pretty accurate—and probably conservative for large organizations.
If the right culture and tools are in place, it’s a great business case to have developers operate and fix their own code. Moving to this model makes a lot of sense for today’s organizations that need to keep pace with how quickly businesses move. Developers can fix code faster than any non-developer or traditional Ops person because they wrote it. Being held accountable for their own code can increase overall code quality and lower overall debugging costs.