I appreciate you sharing this article with us. In most aspects, I am in agreement with you.
Having worked with microservice architecture for more than a decade, I concur with the author's assertion that it is not always the ideal solution for every situation.
A project's complexity and scale are key factors to consider when evaluating a microservice architecture. A simpler architecture may suffice for small projects or situations where microservices are not required. However, microservice architecture is best suited for large, complex projects involving multiple teams, as it is well known.
Cost is another significant factor to consider when implementing microservices. It can be expensive, especially if updated infrastructure is needed or if additional staff are hired (today is very hard to find DevOps people who knows IoC well). As a result, microservice architecture can take longer to implement than monolithic architecture, which may not be ideal for projects like statups and MVP-s.
In another hand understanding the business domain and the system's requirements is crucial to effectively defining the boundaries of each microservice. In order to ensure that the services are designed to align with business needs and provide the necessary functionality, collaboration between the business team and the technical team is necessary in vertical slice.
The best advice I can give is not to follow others blindly. Make decisions based on what you need. To achieve your goals, be open to new ideas and emerging technologies. Position yourself for long-term success by staying proactive, strategic, and thoughtful in your decision-making.