Over-architecting microservices
Over architecture or over-architecting is a subjective term and has a lot of room for debate but in my opinion, it's the time and effort you put into solving architecture problems you don't have or can foresee, which results in an architecture that's hard to read and follow. As an architect, you should always be striving to make the overall architecture more understandable and maintainable to support future enhancements. Architecting microservices can be overwhelming enough to influence teams to look for similarities across the system and apply generic solutions rather than focusing on use cases. For example, if too much time is spent on over-architecting the application earlier in the project, this may result in precious time being lost, which causes delays when it comes to starting coding activities. A lot of the time, application design evolves as teams become more knowledgeable about the use cases. In the next few sections, we will...