The term DevOps is a clipped command of Software Development and Information Technology Operations. It refers to the collaboration and communication between software developers and information technology professionals. The aim of DevOps is to create a culture and environment where building, testing and releasing software can happen rapidly and reliable. DevOps is a combination of cultural changes, practices and services that allow an organisation to deliver at speed.
The collaboration between development, testing and operation means that there is not just one DevOps tool but instead a multifaceted toolchain. Under a DevOps model development and operations are merged and teams work across the entire life-cycle of the project. DevOps practitioners develop a range of skills rather than individual functions; this combined with practices to automate processes allows them to work independently rather than waiting on additional specialists increasing their overall speed.
DevOps has strong affinities with Agile and Lean approaches. Agile is an iterative approach to software development in which software is built incrementally from the start of the project instead of delivering it all at once at the end. The project is broken down into small sections called user stories, prioritised and then continuously delivered in two week long iterations. Lean process aim to maximise customer value while minimising waste. DevOps can be seen as an outgrowth of Agile - extending Agile principles beyond the boundaries of the code to the full delivery service.
Adopting a DevOps model requires changes in cultural philosophy as well as practices. At its simplest DevOps joins traditionally siloed teams and increasing ownership taken by team members of their services.
When successfully adopted DevOps created a continuous loop where teams plan, code, build, test, release, deploy, operate and monitor.
Are you looking to kick-start your career in technology? Apply to our award-winning graduate programme today.
Updated 17 February, 2017