DevOps leaves plenty of room for interpretation. The vast majority of organisations I encounter agree that DevOps is a set of cultural guardrails and practices that automate and integrate processes so that teams can build, test and ship software faster and more reliably. This isn’t incorrect, but it doesn’t paint a full picture either.
What is missing is the very heart of DevOps – the essential human element between software development and the operations teams, and the role collaboration plays in bridging the gap so that teams can ship better software, faster.
Yes, it’s about increasing software quality and stability, shortening lead times and automating the process. But more importantly, DevOps is about enabling people to collaborate across roles to deliver value to end-users.
When you make that ideological shift, it is easier to take stock of what DevOps really is – and start to bust those myths that typically hold enterprises back from harnessing DevOps’ true potential.
1. There is a single, ‘right’ way to do DevOps
Untrue. Every organisation has completely different needs, constraints and goals. A uniform approach can defeat the object. The tools and processes that worked in one company are not guaranteed to have the same impact in another.
There are common practices and principles for successful DevOps, but these should be guides rather than the pre-ordained answer. Enterprises need to trust their gut, and focusing on the human element of DevOps is a sure-fire way to give yourself a head start.
2. Buying DevOps tools = doing DevOps
Investing in the right tools is an important step, but that doesn’t fast-track enterprises to success. Tooling and automation are how you implement DevOps, not DevOps itself. Choosing the right tools is vital, but every organisation needs a progressive DevOps culture in place first and foremost.
If you lose sight of your collaborative purpose and are blinded by the tools you need to get DevOps done, you’re not set up for success.
3. DevOps is the same as agile development
This is a common myth, but the two shouldn’t be confused. Processes such as agile, lean, extreme programming and other “work fast, ship often” models are an important part of DevOps, but do not define what DevOps is.
Agile might help enterprises ship software faster, but it doesn’t have the power to get teams to collaborate in the software lifecycle. Alone, it can overwhelm teams, especially if they are siloed.
4. DevOps and security teams can exist separately
OK, sure, they can – but they definitely shouldn’t. Security needs to be as much a shared responsibility as shipping.
DevOps teams have found ways to speed up software delivery through automation, collaboration and containers, but disjointed security processes still slow them down. Too often, code is simply passed to a security team for checking before it ships, with predictably poor results.
Instead, DevSecOps brings IT security into DevOps teams to ensure that security is prioritised at every step of the development lifecycle. Infusing security into the process means shipping better, more secure software with fewer delays.
5. DevOps is only about increasing software quality and stability
In organisations where the bottom line pervades every process, it is easy to dismiss DevOps as simply the way teams improve the quality of software. Sometimes the means becomes the end. But by automating workflows, people can focus more on the task at hand, improving culture and reducing burnout.
It’s not just about shipping software quickly, it’s about increasing value to the entire organisation and the users of software. Making this subtle tweak in an organisation’s outlook is critically important to how DevOps is viewed and valued.
Although there might be no single path to DevOps success, the organisations that focus on building DevOps on shared principles that reflect a team’s culture, goals and strengths are on the right path.
Kai Hilton-Jones is senior director of solutions engineering for EMEA at GitHub.