Microservice composition or integration is probably the hardest thing in microservices architecture. Unlike conventional, centralized ESB-based integration, we need to leverage the smart-endpoints and dumb pipes terminology when it comes to integrating microservices. There are two main microservices integration patterns: service orchestration (active integrations) and service choreography (reactive integration). In this session, we will delve into the implementation techniques and standards for implementing these microservice patterns and discuss how you can leverage Ballerina to realize those patterns.