Microservices must isolate underlying implementation details from the outside world and define a standard interface to interact with it. This will not only reduce complexity, but also enhance the ability to adopt new changes easily, making the whole system more flexible and robust.