In the past couple of years microservice architectures have risen to prominence. Leading technology organizations, from Netflix to Facebook, are using microservice architectures to ensure they have the flexibility and nimbleness to rapidly adapt and respond to their customers. Research from Gartner, even back in 2015, found that 68% of organizations were already investigating or had implemented microservices (the majority were still investigating).
This rise in prominence of microservices reflects the shift to smaller lightweight applications, from large, code-heavy applications (or monoliths as they are commonly referred to) which were the norm just a few years ago. You can read more about microservice architectures in our recently published whitepaper.
In this blog I want to highlight 3 top tips based on discussions with our software architects here at Belatrix:
Agile development is a methodology ideally suited to microservices
In microservices you have small teams working together, focused on specific areas. In much the same way, the Agile Manifesto recommends that successful and efficient teams are those that comprise of 6-8 people, who are empowered to make the necessary decisions. Agile provides the structure for teams to work together effectively when handling applications on a microservices architecture.
Decide if microservices are really for you
Not every application needs to be rearchitected for a microservice environment. Among the companies that we work with, we advise them to consider and evaluate applications and decide if transitioning to microservices will really bring benefits, or if the time and investment is worth it. However, as we point out in the whitepaper, leading companies are already making this transition because they believe a microservices architecture provides significant benefits.
Hire great project managers
If you decide to take the microservices route, then you’ll need not just a highly qualified software architect, but also great project managers. This is a role that comes to the fore in a microservice environment, because here you have numerous different teams working on different parts of the application. Unfortunately when multiple teams are working on different elements, it can be the case that a problem is not confronted directly – you might hear “it’s your problem”, for example. Effective project management is required to prevent this. To keep this in sync, and to avoid these problems, hire great project managers.
To find out more about microservices, download your copy of the whitepaper.