With so much written about DevOps, it is easy to forget that it is only in its early stages of maturity. But during the next few years, we can expect it to evolve far beyond its current status.
Software teams have the opportunity to start sharpening their skills now in order to be ready for the next level of DevOps, across development, deployment, and quality assurance. At the same time, those team members need to be ready to address some big challenges.
The future of DevOps: Impacts for teams and individuals
Here’s a peek into what the future of DevOps work will require:
Manual activities and gates that still exist within DevOps must be automated, scaled, and sustained. Greater use of artificial intelligence and machine learning, microservices, and the ability to properly manage pipelines will be priorities for both DevOps management and developers. For many organizations, shifting from existing monolithic software architectures is going to be a huge hurdle, but it’s necessary if they are to achieve the control and quality needed to survive.
Simultaneously, automation of as many pipeline activities as possible — including environment virtualization, build acceptance testing, deployments, and more — will be vital to cope with increasing scale and complexity.
Teams also need to be prepared to embrace AI/ML and the low-code/no-code movement, rather than viewing them as potential threats to their careers. These technologies are going to play a critical role in creating more efficient software development pipelines by supporting automation, added intelligence, and continuous improvement.
[ How does continuous improvement help? Read How to set up a CI/CD pipeline. ]
Big culture changes ahead for DevOps teams
Due to this level of change, the way that DevOps teams work will change too. Management support is essential, not just in processes and roadmaps, but in budgeting for reskilling and retooling as necessary. It is important not to under-estimate how much is involved.
Management also needs to guide, communicate, and collaborate with teams, as well as set realistic criteria to measure success at each stage.
Many DevOps teams are already somewhat on that journey. Their organizations, for example, may already have defined feature teams or squads focused on individual functional areas of the product. That may not change dramatically, but what will be different is synchronization and cross-team collaboration across the organization. For instance, going forward, it will be more common for several independent feature teams to share insights, resources, testing assets, and other activities.
All this will reduce software waste and product quality and help ensure DevOps is “joined-up” across an organization, not just in individual teams. In turn, this will contribute massively to DevOps’ maturity, helping organizations to achieve its real potential: A move away from continuous delivery and more towards continuous deployment, from the moment a developer has checked in his or her code until it is live in production, with zero — or near-zero — manual gates.
The potential benefits are huge, but it is important to start planning now. Making changes to software tools and architecture is one thing. Helping team members have a more collaborative and transparent mindset is arguably even more important.
How to take practical steps toward the DevOps future
A starting point for transformation to more mature DevOps begins with identifying the most problematic and common bottlenecks, then putting together a plan with budgets, owners, and metrics. Once the number of escaped defects into production is demonstrable, then the value of that transformation also starts to become evident. That can then be replicated across other bottlenecks or areas that could be improved.
Reducing problems – and the effort of solving them – should also help secure greater acceptance from team members who may be resisting change. For instance, people who have been in the industry for a long time may find it hard to let go of manual processes, but making them part of a collaborative process where data and insight support continuous improvement should tangibly improve their working lives.
Management may need to consider investing in new competencies around DevSecOps, DevQualOps (shift-left or continuous testing), and perhaps DevAPMOps (embedding APM activities within the build cycle). New platforms will also create new demands on software development beyond those already mentioned – for example, 5G and IoT devices.
The software of the future is changing fast, and DevOps is evolving rapidly. These are exciting times, but to make the most of the opportunities available, management must focus on supporting teams across tools and skills. At the same time, individual team members need to embrace this new world and the personal development it can bring.
[ How can automation free up more staff time for innovation? Get the free Ebook: Managing IT with Automation. ]