How to choose the right technology for your next CMS project

#4: Monolith or microservices?

With a traditional CMS, you use the CMS as a platform and build your website on top of that. At first glance, this makes perfect sense because you get a lot of out-of-the-box functionality, which means that even a less-experienced developer can quickly build a sophisticated website.

The problem is that your code is tightly coupled with your CMS, which means that you can’t use a different programming language and that the CMS might not work well with the latest front-end frameworks. And, when you decide to move to another CMS, you typically have to rewrite your code from scratch.

That’s why developers increasingly prefer a microservices architecture where CMS is just one of the services they use.

They combine their own microservices and third-party APIs, such as SendGrid for emails, Auth0 for authentication or Stripe for payments. It gives them more flexibility and independence on other solutions and vendors. On the other hand, this approach may require more coding and stronger development skills.

It’s no wonder the headless CMS becomes so popular among developers who use microservices. According to the report, 30% of developers already use microservices, and those who do are twice as likely to be already using headless CMS (39%) than those who don’t (19%).

Do you use microservices to build your applications? (n=711)

The move toward the microservices architecture also has a significant impact on how you think about your career development: In the past, you needed to learn the specifics of a CMS and how to develop with it.

In the API-first world, such knowledge becomes mostly irrelevant as you only need to learn relatively simple APIs.

My advice: Instead of learning a specific CMS, invest your time into understanding the microservices architecture and improving your development skills.

read original article here