Fotolia
When a NoOps implementation is -- and when it isn't -- the right choice
NoOps skills and tools are highly useful regardless of the IT environment, but site reliability engineering brings operations admins into development when an organization can't afford to lose them.
For some organizations, NoOps is a no-go; for others, it's the only way to go.
Some organizations envision that NoOps' benefits of peak infrastructure and application automation and abstraction eliminate the need for operations personnel to manage the IT environment.
But not every IT environment is cut out for a NoOps implementation. Site reliability engineering (SRE) is a useful middle ground for organizations that aren't ready or equipped for NoOps.
Will NoOps replace DevOps?
The truth is that NoOps is a scenario reserved almost exclusively for startup organizations that start out on A-to-Z IT automation tools and software. In cloud deployments, with no hardware or data centers to manage, developers can code or automate operations tasks -- and operations administrators might struggle to find a seat at the table.
Instead, organizations that start from day one with automated provisioning, deployment, management and monitoring should hire an operations specialist or an IT infrastructure architect to help the development team set up environments and pipelines, said Maarten Moen, consultant at 25Friday, a consulting agency based in Hilversum, North Holland, which helps startups set up NoOps environments.
Maarten Moenconsultant, 25Friday
"Development or technology engineers move more to a full-stack engineering background," he said. "They can do the front and back end, but also the infrastructure and the cloud structure behind it."
DevOps is still too siloed and interdependent for the speed of modern business activity, Moen said. This assessment holds weight for the startups 25Friday advises: there is no reason for a five-person company to split into distinct development and operations teams.
Instead, Moen suggests organizations instate a center of excellence, with one to three senior-level operations consultants or advisors to help development teams set up -- but not implement -- the infrastructure and share best practices. Development teams implement the infrastructure so that they're familiar with how it works and how to maintain it.
Legacy applications are incompatible with NoOps
A NoOps changeover won't work for organizations with established legacy applications -- which, in this case, means any app five years old or more -- and sizeable development and operations teams. The tools, hardware and software necessary to maintain these apps require operational management. Odds are high that a legacy application would need to be completely rebuilt to accommodate NoOps, which is neither cost-effective nor reasonably feasible.
Moreover, most organizations don't have a loosely coupled system that facilitates a NoOps structure, said Gary Gruver, consultant and author of several DevOps books. Small independent teams can only do so much, and building a wall between them doesn't make sense. In the end, someone must be accountable to ensure that the application and infrastructure functions in production, both on premises and in cloud environments, he said.
NoOps vs. SRE
When a larger organization adopts infrastructure-as-code tools, senior operations staff often act as advisors, and they then shift into engineering roles.
But downsizing isn't always the answer. The SRE role, which emphasizes automation to reduce human error and ensure speed, accuracy and reliability, has supplanted the operations administrator role in many IT organizations because it places ops much closer to, or even within, the development team.
"It's operations work, and it has been, whether we're analysts, sys admins, IT operations, SREs, DevOps -- it doesn't matter," said Jennifer Davis, principle SRE at RealSelf Inc., a cosmetic surgery review company based in Seattle, Wash., and an O'Reilly Media author, in a talk at the Velocity conference last month in New York.
Operations work can be done by anyone, but organizations differ on how they handle that fact. Does an organization eliminate the operations team altogether or simply reorganize them into SREs and retain their operational knowledge and experience?
At RealSelf, Davis' SRE team educates and mentors developers in all aspects of operations via positions in sprint teams.
"Some of the critical skills that we have as operations folks [are] filling in gaps with relevant information, identifying information that is nonessential, and prioritizing a wide array of work," she said.*
Is NoOps feasible?
Jennifer Davisprinciple SRE, RealSelf
NoOps implementations by 25Friday have been successful, Moen said. RealSelf's Davis, however, argues that NoOps is, in general, not feasible for non-startups.
"Basically, NoOps is the same thing as no pilots or no doctors," Davis said. "We need to have pathways to use the systems and software that we create. Those systems and software are created by humans -- who are invaluable -- but they will make mistakes. We need people to be responsible for gauging what's happening."
Human fallibility has driven the move to scripting and automation in IT organizations for decades. Companies should strive to have as little human error as possible, but also recognize that humans are still vital for success.
Comprehensive integration of AI into IT operations tools is still several years away, and even then, AI will rely on human interaction to operate with the precision expected. Davis likens the situation to the ongoing drive for autonomous cars: They only work if you eliminate all the other drivers on the road.
Next steps for operations careers
As IT organizations adopt modern approaches to deployment and management, such as automated tools and applications that live on cloud services, the operations team will undoubtedly shrink. Displaced operations professionals must then retrain in other areas of IT.
Some move into various development roles, but quality assurance and manual testing are popular career shifts in Europe, especially for old-fashioned professionals whose jobs have been automated out of their hands, Moen said. SRE is another path that requires additional training, but not a complete divergence from one's existing job description.
Admins should brush up on scripting skills, as well as the intricacies of distributed platforms to be ready to both hand over any newer self-service infrastructure to developers and train them to use it properly. They should study chaos engineering to help developers create more resilient applications and team up with both the ops and dev teams to create a best practices guideline to manage technical debt in the organization. This becomes paramount as infrastructure layouts grow more complex.
NoOps and SRE are both possible future directions on IT organizations' radars. NoOps mini-environments can live within a fuller DevOps environment, which can be managed by site reliability engineers. Ultimately, the drive for automation must reign, but not with the extermination of an entire profession that ensures its continued success.
Site editor David Carty contributed to this article.
*Information changed after publication.