Technology/
Digital Experience/
Custom Development/
Project Management

Why do companies and developers bank on microservices?

 

According to the survey “Microservices in the Enterprise, 2021” conducted among 1200 developers and IT managers of large and medium companies, 80% of them believe microservices can make work easier for everyone and investing in them is worthwhile. As many as 77% of respondents reckon microservices to be a reliable and recognised way of creating IT solutions. What are the benefits of using this architecture?

Taking a closer look at the definition of microservices

The year 2013 was a breakthrough time for microservices. It was then that this architecture first got mentioned, and its popularity has been continuously on the rise since then.

Microservices offer an approach according to which the designed applications are divided into multiple modules. Each of the modules is responsible for a group of functions related to one business problem. All modules can communicate with each other, while constituting an integral whole - an application or a system, e.g. an e-commerce system. Breaking a single system into smaller chunks facilitates management and growth. Each chunk can be replaced or fixed without disrupting the entire structure. For instance, updating the texting process does not affect the function of using information dashboards.

Key microservice advantages are:

  • increased system efficiency;
  • easier management of the software architecture;
  • easier development of particular components' expansion;
  • scalability at the level of each service, not the entire system;
  • minimised risk of errors in other modules;
  • reduced costs of system development;
  • stoppage-free system updates;
  • higher reliability – instability of one element does not affect other components.

Customized Software Solutions for Investment Funds

Monoliths are no longer attractive to business and end users

Let us imagine one large structure of a very dense texture. Next to it there is another equally big structure consisting of several interconnected elements. Which structure will be easier to adjust? This parallel demonstrates the difference between monolithic structures and microservices.

Both for business and users monoliths entail the following:

  • a necessity to reinstall the entire application for each even tiny adjustment, which causes the system to be temporarily inaccessible to users;
  • non-scalability of particular system components, which carries a risk of overload and causes inaccessibility to the end user;
  • frequent non-scalability produces higher maintenance costs;
  • reduced ability to implement new technologies due to cost factors and increased workload on the side of the technological partner;
  • higher dependence of the company on the service provider;
  • much more difficult integration with external systems and API.

It does not mean, though, that monoliths have no advantages. They may be a reasonable solution for start-ups which are only growing their business and need a single centralised system.

It should be remembered that companies like Twitter, LinkedIn, Netflix or Amazon started operations based on monolithic structures. It was only when they began offering more services and growing rapidly, that they switched to much more flexible microservices.

Microservices reduce technological debt

In a questionnaire conducted by a consulting company McKinsey, IT managers estimated that even up to 20 per cent of the technological budget (including also innovations), is allocated to tackle the problems generated by the digital debt.

Companies repay this debt, by completely replacing or gradually rebuilding the entire system. Microservice architecture works fine in both cases. It allows to fully or partly switch to other environments in a relatively simple way, as well as helps develop new scalable and resilient systems.

A solution not merely for the biggest players

According to Statista, in 2021 about 85% of large organisations had already used microservices, and 14% were planning to implement them in the future. As mentioned before, the biggest players like Netflix, LinkedIn or Twitter continue to use the solution.

However, it should not be understood that microservices are an attractive solution only for large companies. They may be employed by any company planning to expand operations which needs a flexible solution and wants to stop being completely dependent on its vendor.

Recently, we have implemented a transactional service for one of our clients - NN Investment Partners - one of the leading investment fund companies in Poland. In spring 2022 the company became part of the global group Goldman Sachs Asset Management. The entire architecture of this system was based on microservices, specifically 9 of them. Each of the microservices performs the tasks which relate to a particular segment of business functions handled by the application. They are responsible for user log-ins, they manage service processes in the application or send text messages containing authorisation codes to clients.

Do microservices have any shortcomings? Most certainly, yes

Apart from its undisputed benefits, the solution has also some downsides. Microservices possess a much more complex architecture, testing and spotting application errors is more demanding when a given process uses microservices. An additional level of difficulty comes from the network quality in the communication between application components.

Designing the architecture of each solution should be preceded by a detailed business analysis. Therefore, before each implementation, a tailored team of e-point specialists works conscientiously to find out all customer needs and to propose a solution which can ensure real growth. We are confident that the steadily increasing microservice popularity is grounded in business needs and provides a strong rationale for future software development trends.