https://aruva.medium.com/anti-corruption-layers-bridging-the-divide-between-microservices-3346b90eb6ac