Are microservices right for your business?
Both the experience economy and pace of technological change continues to move at breakneck speed.
Businesses are now expected to deploy new software, services and add new code at a rate that is forcing many leaders to rethink their increasingly dated-looking architectural structures.
Traditionally, if you dared to look under the hood of your most used applications, you would find a client-facing interface, a database, and a server-side application. Although this model has served businesses well for decades, its rigidity is falling out of favor in a world driven by continuous change.
Anything that puts obstacles in the way of isolating services, maintaining code, and applying quick bug fixes will slow down the pace that a business needs to change. Business leaders do not want to hear about slower times to market and difficulty to scale. They want an easier way to help them thrive in the digital age of continuous deployment.
Many believe that developing a monolithic application all in one piece is no longer fit for purpose. However, breaking down software applications into a smaller suite of independently deployable components that are continuously developed and separately maintained looks attractive by comparison.
The migration to microservices
Understandably, businesses are seizing the opportunities that come with this fit for the cloud model to implement agile and customizable software. After years of being burned by lengthy IT projects that over-promised and undelivered, technology is finally helping business goals reach their goals quicker.
These are just a few reasons why businesses around the world are migrating from monolithic to microservice architecture. Everyone from Apple, Netflix to the BBC are reaping the benefits. Predictably the biggest winners of leveraging microservices and DevOps is the tech behemoth Amazon whose engineers deploy new code every 11.7 seconds.
A much more agile approach helped the company dramatically reduce the number and duration of outages. The migration also resulted in increased revenue quickly provided the elusive ROI that many tech projects fail to deliver.
It’s more complicated than you think
Unfortunately, it’s not as simple as diving headfirst into the world of microservice architecture. If we have learned anything from the complicated relationship between business and technology, it’s that there is no such thing as a silver bullet.
Increasing the number of services can result in information silos. As the number of services inevitably increases, the integration and management of everything can quickly become even more complicated. Additional complexities for developers will arise too, especially when faced with mitigating fault tolerance, network latency, load balancing, and the risk of creating distributed spaghetti code.
Dynatrace CEO, John Van Siclen recently advised that 87 percent of businesses have already adopted some form of microservices. Analysts predict that we will continue to build and deploy more apps in the next three years than we have created in the last 40 years. But Siclen warned we could be causing bigger problems for IT and DevOps teams in the future. Automation will need to become mandatory in the unsexy world of application performance management (APM).
The road ahead
Analysts predict that 90 percent of all new apps will feature microservices architecture. Before jumping on the next big thing in tech bandwagon, it’s your unique business requirements that should determine your next move. Unfortunately, a one-size-fits-all architecture solution doesn’t exist. Microservices will probably already be a critical component of your IT strategy, but many of your legacy applications are unlikely to be candidates for improvement.
There is a cultural and technical cost involved when moving to a microservices architecture that needs to be considered to avoid racking up technical debt. According to Gartner, a bi-modal IT strategy will enable microservices and traditional applications to work together in the same environments.
The strategy will enable legacy IT applications to focus on traditional metrics such as stability and uptime. By contrast, the new shiny apps that are more agile with shorter development cycles will be catered for too.
However, splitting IT into two groups has split thinking in the IT community, and some believe that the concept is spreading a myth. Can you imagine a world where Mode 1 manages traditional business requirements such as safety and accuracy? And where teams can switch to Mode 2 for new apps focusing on different apps that need agility and speed?
Here in 2020, buzzwords such as microservices and bi-modal IT will be capturing the headlines and attention of business leaders looking to evolve their technology stack. But the reality facing many organizations will be the need to adapt their strategy to work with both monolithic and microservice approaches for many years to come.
This article first appeared on TechHQ.