Microservices are more complex to build and deploy and have larger attack surfaces than monolithic applications. Inter-service communication can increase the latency demands and cause congestion in the network. Since this is a new approach to software development, teams must learn to adapt and use a new set of tools, workflows and integrations.