07 April 2020
What are microservices and their state in 2020? Six key findings from the brand new report
Microservices – hot topic of the IT world, a darling of backend developers and perhaps a new standard? We’ve already heard a lot of opinions on how microservices architecture is viewed in 2020 and what is microservices future in software development. However, there wasn’t any aggregate study that would clearly show how developers around the world build their microservices – so we made one. Here are the most important conclusions from the State of Microservices 2020 report.
A quick introduction – the report has been created with help from 669 people with software development background: mostly CTOs, Lead Developers and Senior Developers, who came from Europe, North America, Central and South America, Middle East, South-East Asia, Australia and New Zealand.
In order to make sense of it all (and to receive the “legit report” stamp 😉), the report was also commented by experienced tech specialists, publicists and authors from well-known companies like DAZN, Cooperpress, ZEIT and more. So if you want to learn, what the industry thinks about microservice architecture, read on!
What is a microservice architecture?
What is a microservices architecture? In short, it’s an architectural style where your application is based on a collection of interconnected services, usually pretty small ones. As our colleagues wrote in their article “Microservices design patterns”:
Microservice is a largely independent application component tasked with a specific function in a system. Multiple microservices, each taking care of another function of an app, combined with clients (e.g. the frontend of your web and mobile apps) and other (optional) intermediary layers make a microservices-based architecture.
These are the basics. If you’re new to the subject of this architectural style and look for more educational materials on the benefits of microservices, we highly recommend:
- Introduction for CTOs: benefits and disadvantages of microservices for business
- Q&A: Microservices design patterns and architecture
- How we’ve successfully migrated from a monolithic application to microservices
We got theory out of the way, now let’s go back to the top six key findings from the State of Microservices 2020 report.
Before the era of workers, Node.js architecture was very prone to slowdowns, so Node.js developers simply had to learn how to work with multiple small services. Now, it’s a part of their developer DNA – and it makes building and maintaining microservice architecture whole lotta easier.
Hooray for the winners!
2. One cloud to rule microservices: AWS
If you’re not building your own server, then you’re probably #teamMicroservicesAWS. According to the survey, Amazon Web Services is THE cloud provider for microservices with almost 50% of picks. What’s more, AWS Lambda is also killing it in serverless technologies (62% of responses).
As Yan Cui (the host of “Real World Serverless” podcast) notices, AWS pretty much rule them all when it comes to cloud providers and serverless solutions, however, it’s not yet time to put a ring on it and call it THE ONE. With bare-metal servers still doing pretty well, Amazon Web Services are far from a monopoly on microservices.
I guess that when you’re in the cloud bubble, it’s easy to forget that traditional DCs is still a $200B market annually and accounts for as much IT spending as all the cloud providers combined.
3. Disadvantages of microservices? Debugging
It seems that many development teams are not proficient at properly debugging microservice-based systems. As Thomas Boltze (CTO of Asto Digital) points out, 27% of respondents use only logs in the debugging process, which is… really bad. No wonder that many think that debugging-related issues are the main disadvantage of microservices architecture. However, as Marek Gajda (CTO of The Software House) explains, changing our debugging and maintenance habits – e.g. preparing for them BEFORE adopting microservices approach – will make the whole process of testing microservices so much easier and less problematic. Logs are fine if supported by other solutions.
4. Continuous Integration is basically a standard now
Let’s face it – nowadays, Continuous Integration is pretty much a standard. 87% of respondents say that their development teams use CI while building microservices architecture. As Ewelina Wilkosz (IT Consultant at Praqma) suggests, Continuous Integration/Continuous Delivery is one of the biggest advantages of microservices and advises developers using microservices to try one of the solutions available on the market. Interestingly, none of the CI solutions actually dominates, so whether you prefer GitLab CI, Jenkins, Circle CI or Bitbucket Pipelines (or any of the dozen-or-so solutions) – go for it!
5. Micro frontends are a riot
According to Luca Mezzalira (VP of Architecture at DAZN and author of “Building Micro-Frontends”), there’s room for micro frontends to make a small revolution in frontend development. He points out that there are still many misconceptions when it comes to micro frontends – mostly because the technology is relatively new and developers haven’t got a chance to get completely proficient yet. This is reflected in the survey. Only 24% of developers have used micro frontends before. However, Luca is pretty sure that we may see the change in approach to micro frontends in the upcoming months/years. And we keep our fingers crossed!
6. “Microservices” killed by microservices?
Last but not least – how long will the term “microservices” last? Richard Rodger (author of “The Tao of Microservices”) predicts that it will virtually evaporate in the foreseeable future. Why? Because of all the amazing benefits of microservices (independent components exchanging messages, and the dynamic routing of those messages), they will become the primary architecture of software development and we’ll stop referring to them as “microservices” as they will simply become a standard that no one really talks about that much. It’s not only one man’s opinion – 36% of respondents think that microservices will become the industry standard for backend development, and whooping 49% believe that they will be a standard for complex systems.
When we look at the results of the report it seems clear that using microservices have changed software development for good. More and more developers and tech leaders know what microservices architecture benefits are and how to properly handle it – even in the most complex project. One thing is for sure – microservices are here to stay.
One more time, we strongly recommend to read the “State of Microservices 2020” report and compare your microservices habits and preferences with software developers from around the world. If you’re stuck with your monolithic application, want to start microservices project organized around business capabilities of your company, need consultation or any help with tech stack migrations (including microservices architecture, cloud or serverless) check out our resources for CTOs.