3 minutes on... NoOps
Author: Sarah Finch
- Service Technology and engineering
- Date 11 May 2022
What do you get when you automate the work of the Operations team? In NoOps, software is maintained automatically.
NoOps is part of a drive in recent years to automate more and more aspects of software engineering. In NoOps (or No Operations), an infrastructure environment is built which doesn't need to be managed by human engineers. Instead, once it has been deployed, software is maintained automatically.
The automation focus of NoOps can also be found in modern DevOps practices. However, whilst DevOps integrates the traditionally separate fields of software Development and Operations — ie. the building and maintenance of software — making them the responsibility of the same team, NoOps takes this one step further. Its goal is instead to entirely automate operations, removing people from the process entirely.
It is debatable whether true NoOps — in the sense of having no humans involved in operations whatsoever — is possible. Instead, it might be better to think of NoOps as an ideal, which can help an IT team to automate as much of the software development, deployment and maintenance process as they can. This helps to speed up and improve the quality of software engineering.
NoOps goes hand in hand with cloud computing, and a modern approach to IT which calls for smaller teams and more dynamic delivery.
By freeing up software engineers to focus on code, NoOps helps them to deliver better solutions more quickly, and have a greater business impact. It's worth noting that working towards NoOps isn't always possible, however. Hybrid environments, with a mix of cloud and legacy technology, are a challenge as monolithic systems are generally not well suited to automation.
The lowdown on NoOps
- automating Operations — the maintenance of software
- more of a guiding principle than a realistic goal
- enables software engineers to focus on code suited to modern, cloud environments