We continue to belief in the microservices concept and its related patterns and best practices. However, it's worth mentioning that we had to learn some lessons when it came to resilient thinking and deployment-related dependencies between microservices.
We feel that our microservice-based applications are more robust than monolithic ones have been. Thanks to the split of the overall complexity into multiple services, new employees or team members are becoming productive within days or a few weeks.
In order to get microservices right and to benefit from the advantages, there is a lot more required. The following "pyramid of need" for microservices shows this: