The following list can be used as a general guide when choosing a monolithic architecture. This is not a definitive list but gives an idea of when to go with a monolithic architecture over microservices:
- When the application scope is small and well defined, and you are sure that the application will not grow tremendously in terms of features. For example, a blog, a simple online shopping website, a simple CRUD application, and so on.
- When the team size is small, say less than eight people (it's not a hard limit but rather practical).
- When the average skill set of the team is either novice or intermediate.
- When time to market is critical.
- When you do not want to spend too much on infrastructure, monitoring, ...