Microservices: An Enterprise Software Sea Change
As some of you already know, I have been following the shift towards microservices adoption for a while now. For the longest time, when the industry thought of the transition to microservices, they thought of smaller companies leading the charge. However, I’ve seen large enterprises get value from microservices as well and saw this trickle-in starting in 2016, which is why I am excited to learn this now has achieved mainstream adoption.
Did you know that 61 percent of large enterprises are already in production with microservices? This finding came out of our recently released 2020 Digital Innovation Benchmark. This research, completed in partnership with the research agency Vanson Bourne, surveyed 200 U.S. technology leaders across industries on the state of digital innovation in their organizations. The research findings underscored that microservices are widely adopted across large enterprises and revealed the major reasons technology leaders are adopting microservices. Realizing that staying competitive requires keeping up with the pace of innovation, technology leaders are prioritizing moving to microservices in order to improve security, development speed, speed to integrate new technologies, infrastructure flexibility and improved collaboration across teams.
While many organizations still have critical applications running based on monolithic architectures, this new research showcased how widespread the adoption of microservices has become across large enterprises. In the survey, 35 percent of technology leaders at large enterprises reported they are using over 100 microservices and 61 percent reported they are using over 50 microservices. Now that at least partial adoption of microservices represents the clear majority in enterprises, the question for technology leaders has increasingly shifted from “why should we move to microservices?” to “how can we ensure success in our microservices journey?”
Another surprising finding from the research was that while improving developer velocity is one of the top reasons technology leaders choose to move to microservices, the number one reason is actually to improve security. This may seem counter-intuitive since some believe that microservices increases the surface area of attack. However, respondents felt less secure with a monolithic architecture where all the code is in one place for an application subject to attack.
Technology leaders cited the following reasons for transitioning to microservices: improvements to security (56 percent), increased development speed (55 percent), increased speed of integrating new technologies (53 percent), improved infrastructure flexibility (53 percent) and improved collaboration across teams (46 percent). To unpack the reason these benefits rose to the top for adopting microservices, it helps to understand the context of the challenges many organizations are facing when it comes to running on legacy monolithic architectures.
Development speed is slow because pushing an update to one part of the application requires testing and pushing to production the entire codebase. The time to integrate with new technologies is lengthy because monolithic applications limit you to a certain technology stack. For example, if you were working with a Java Virtual Machine (JVM), then components of the application written in non-JVM languages would not work in your monolithic architecture, and your application would quickly become obsolete. Finally, a monolithic architecture is challenging for developers to work with efficiently. Because the code base is unwieldy in size, new team members are challenged to understand previous implementations, and as the team grows, there is no way to effectively segment contributions by functional area of the application.
Also, one thing the survey did was for the respondents to self-select their own definition of microservices. While there are many purest versions of the definition of microservices, what I have seen over the years is when customers move to a decentralized architecture, they call it moving to “microservices”. How granular their service is, differs by a wide range and for example some of what they call microservices might be what Gartner calls “miniservices”.
We can see how the benefits of driving microservices adoption are really all ways to address the pain of working with legacy monolith architectures. Based on the findings from this research, the takeaway for technology leaders is that getting started on a microservices journey offers critical benefits for improving efficiency and reducing costs of development, as well as staying competitive in the market. Rather than simply focusing on delivering “more” microservices, the key is throughout the transition to keep the focus on pragmatic digital transformation. Microservices adoption will drive value to the business to the extent that new patterns make development teams more efficient, applications more secure, and systems more able to evolve and adapt to today’s rapid pace of innovation.
Read the full 2020 Digital Innovation Benchmark