The fusion of development and operations known as DevOps has been around for quite some time. Since 2009 it has developed significantly, and now, in its second decade, it keeps evolving. In fact, a research by Global Market Insights shows some promising numbers for DevOps future: “DevOps Market size exceeded $4 billion in 2019, and is poised to grow at over 20% CAGR between 2020 and 2026.”
Yes, DevOps is a huge market, but it’s still not completely formed. Like a child (more like a teenager, really), it’s growing each year, advancing the way high-quality software is being delivered, paving its way armed with fancy words like “efficiency” “Shift left” and “Agile”. And while agile (have you heard of its evil twin “Badgile”?) is no longer a trend but rather a standard (more on that in this blog post), there are other trends to look at.
You see, that’s the upside of being in the middle of a process, growing and changing as you go along: there are a lot of trends and insights to discuss. And that’s without even considering last year’s effect…
And Then There Was the Pandemic
2020 and COVID-19 pandemic sure was (or shall I say, is) a notable phase that introduced more issues across the board, with DevOps being no exception. While we’re happy (to say the least) the challenges of 2020 are mostly behind us, we can’t ignore the innovation it has brought with it. Digitalization and automation flourished even more than in previous years, and with it came technology that enabled it. The ability to keep moving forward and overcoming obstacles became a value to live and work by. It seems that the trends related to work from home (see for example google’s “WFH” search trends), distributed workforce and processes, are here to stay. We can’t quite turn back time (and in some ways, we don’t want to). See more in this report by McKinsey.
DevOps Future – Moving Forward (as if We Have a Choice)
With this notion of moving forward, DevOps became more important than ever before, a strategic approach focusing on pushing things forward (frequent releases included), invoking innovation, and bridging the gap between companies’ and customers’ needs.
Under these circumstances, and from our experience talking with DevOps engineers and swimming in this ecosystem fish tank, it’s interesting to look at the trends that are now shaping DevOps future:
1. Microservice Architecture – We Would See More and More of That
Microservice architecture is essentially cutting applications (usually complex ones) into small chunks, independent services, units, or entities that are flexible and scalable. In brief, it’s the opposite of monolithic architecture. With monolithic architecture, introducing even a small change in the cycle can be quite a hassle, as it might require deploying a new version. You can’t just deploy small features or functionalities – you have to scale the entire application, the entire code base. And the more developers and users on the team, the more complex it gets. A microservice, on the other hand, can be built, tested, and deployed on its own.
You would think that microservices are the obvious architecture choice for today’s modern systems, and the shift to microservices is already a given fact. Well, think again. While the shift to microservices is still happening, it is not necessarily a default option in many industries. However, many industries which were much more reluctant to follow this road are ready to make the move to microservices architecture.
In most cases, the benefits of microservice architecture successfully overcome the complexity it brings, by allowing more flexible cycles, providing more customization capabilities, and offering scaling options.
The transition to microservices is one of the key factors driving DevOps. This far-from-new trend is deeply intertwined with DevOps and actually acts as a catalyst to it: they both promote the idea of operational efficiency, agility, and modularity.
The microservices trend, together with the growth in DevOps, is also highly related to the Cloud, which would be discussed later in this post.
2. DevSecOps – Agile Security
There is another fusion besides DevOps to take note of: DevOps and security, commonly known as DevSecOps (bring it on, double fusion).
I know what you’re thinking –again, not a new concept; we’ve been hearing and talking about it for a while now. It is often brought up with the shift left approach. The novelty might be the fact that it is still here. Yep, it appears that DevSecOps is not going anywhere but up. And why not? With all the attacks, breaches, and vulnerabilities running loose these days (working remotely and moving to the cloud sure didn’t help) and protection regulations to comply with (you’re probably familiar with GDPR), security is of the essence when building any application out there.
Figuring out how to incorporate and automate security earlier in the SDLC, right from the time of coding prevents all sorts of hazards, substantially reduces costs and speeds things up.
The novelty here is that companies across all industries don’t just talk about security as an obvious product feature; they make it part of the first requirements to tackle, across all aspects of the system and the development life cycle. We will see DevOps tools and systems involved more and more with security and auditing aspects of the system.
What can I say, it’s a security-first world – welcome aboard.
3. AIOps, MLOps, DataOps, and NoOps – The Ops Party
If you try to think how AI fits into your daily routine, you’ll find it’s in EVERYTHING these days (so much so that it’s the cause for the 4th industrial revolution, aka Industry 4). No reason not to have it in operations. Predictions support this AI DevOps combo…
Gartner predicts that “By 2023, 40% of DevOps teams will augment application and infrastructure monitoring with artificial intelligence for IT Operations capabilities.”
Strategies, decisions, policies, and alerts that today require delicate planning, tuning, coding or configuration, may become more and more automated with the introduction of AI and ML into DevOps. This correlates with the huge growth in the field of data science as part of the fourth industrial revolution.
DevOps teams utilizing AI, ML, and data science practices can solve problems much quicker and with less effort, and introduce more automation than ever before. The minimizing of human interaction can theoretically lead to NoOps (another burning trend) – making the operational teams obsolete.
4. Kubernetes People, Kubernetes
This is where things really start to get interesting. Why? Because while some (dare I say, most) predict Kubernetes (and containerization) will continue to be a great success, leading to NoOps scenarios (yes, that word again), others predict the excitement surrounding Kubernetes “will be tempered in the year to come”.
Everyone knows that Kubernetes is the de facto standard for container orchestration, but where is it going in the future? Kubernetes development is extremely dynamic and always moving forward, but don’t expect any big changes in the future in terms of new features. In terms of usage trends going forward, it seems that a lot of the focus shifts from treating Kubernetes as an infrastructure system (more on the “ops” side), to more of an app system/framework on the “dev” side. It is now quite easy to start a local Kubernetes cluster on a developer’s machine. This allows developers to utilize and rely on Kubernetes features early on in the development cycle. In terms of market share, it doesn’t seem like Kubernetes is going to lose market share any time soon. Some alternatives are still in active development but provide a much smaller feature set and fewer support options: Apache Mesos, Docker Swarm (now called swarmkit), and Nomad. OpenShift and Rancher are also worth mentioning as very powerful contenders, but both use Kubernetes under the hood. Support from big cloud vendors (AWS/Google/Azure) matured and lowered the entry bar for using Kubernetes, so you can skip right to “day 2 operations”.
Having said that, the learning curve for Kubernetes is not getting any easier, and the need for simpler, maybe more automated, solutions (did we say AI?) is always around.
So, which direction would it take? We’ll have to wait and see.
- Docker vs Kubernetes – Should We Really Compare?
- Using Kubernetes for CI Build Jobs and Generic Processing Tasks – part 1
5. On Cloud Nine
Cloud technology, with its agility and scalability, has really come through in the past year, considering the pandemic and the need to digitize everything. Sure, there is a price tag (which we gradually learn how to manage), but this trend will most definitely carry on with a growing use of Cloud Management Platforms (CMPs).
Many companies that prior to the COVID pandemic were not (yet) planning a move to the cloud are now starting (or soon would) to take parts of their systems and infrastructure to the cloud, or otherwise build an internal cloud infrastructure. All these fears and hesitations in regards to system security, control, and expenses are suddenly looking quite different under these circumstances, when your entire workforce is working from home. Add to this the move to SaaS and PaaS and you’ll find that companies are getting used to consuming services over the network instead of on-prem installations.
Related: Incredibuild Cloud
6. Less Is More – Going Serverless
The next logical step after cloud adoption is Serverless Architecture. The Serverless Architecture market is projected to grow from USD 7.6 billion in 2020 to USD 21.1 billion by 2025 due to “the rising need of shifting from CAPEX to OPEX by removing the need to manage servers, thereby reducing the infrastructure cost”. The flexibility, speed and cost efficiency (pay for what you use) of Serverless Architecture are making it a force to be reckoned with, relieving developers from most maintenance issues. This shift can be seen as the next generation of Microservices.
7. Infrastructure as Code (IaC)
A related trend to cloud adoption (as well as microservices) is IaC. Like the name suggests, infrastructure as code is all about having all your infrastructure defined as a code. IaC is getting quite close to “everything as code” as it basically takes almost everything into account. By turning all servers, networks, databases, and storage into lines of code, you can simplify and automate. In addition, it allows for easy rollback and recovery (via version control) and simple monitoring and analytics (KPIs). True, it’s quite a hazard to implement and you’ll probably also need to implement configuration management systems such as Ansible (which is very strong in this market), Puppet, Chef, and others, but it’s worth it! If you’re looking to dive into IaC and its trends this article is a good place to start.
8. It’s a Chaotic World Out Here – Chaos Engineering
Don’t you just love that name? Finally, a name that doesn’t sound like an academic definition but rather tells it like it is: chaotic. Although still not as common today as Gartner expects it to become, Chaos Engineering is a discipline in DevOps that supports experimenting on software in production to increase our confidence in the system to endure unpredictable issues or issues that go undetected by other testing methodologies. Chaos Engineering can lead organizations to confront failure head-on which can also be kind of risky if not handled correctly. Also, it requires organizations to embrace a cultural change, as Nora Jones, Senior Chaos Engineer at Netflix and co-author of the book “Chaos Engineering: Building Confidence in System Behavior through Experiments,” describes it: don’t ask “what happens if this fails, but when this fails.”
9. Don’t Keep It Low Key – Low Code
Forrester predicts low code will flourish in 2021. Again, the pandemic had much to do with it, as organizations turned to low code to develop apps quickly. In TechRepublic’s Dynamic Developer podcast, Jeffrey Hammond, vice president and principal analyst serving development leaders at Forrester (and one of the authors of the aforementioned Forester report) made some very ambitious predictions involving low code: “So the specific prediction is by the end of the year, 75% of development shops will deploy and use low-code solutions.” Wow… that’s a lot of productivity gained (which we know a thing or two about).
While there are developers out there that are pretty hesitant when it comes to low code, choosing to focus their concerns on quality, more and more developers and DevOps engineers are joining this trend, utilizing low code tools that offer nifty drag and drop elements. It seems that the old saying, “if you can’t beat them, join them,” still holds. The next step is naturally “No Code,” which is another noteworthy trend.
DevOps Future – Towards 2022
These trends and many others I didn’t even touch upon (SREs, Edge Computing, self-service, and more), will and continue to shape the 2021 DevOps model. After the notorious 2020, it would be interesting to see how 2021 differs or takes things further, and what will become of 2022. One thing for sure, it’s going to be interesting.