Are you transitioning to microservices? Do you have remote teams? Do you want to update existing services? Are you doing all three? The consistent theme in all of these needs is that they require collaboration across teams and concerns. A common problem with collaboration, however, is that there's often a lot of wait time. Team A needs Team B to implement and deploy a service, update a service, or figure out why a service isn’t working correctly. This can be a very frustrating process, and instead of collaborating, you feel like you're competing! There's a better way, though, and that's with contract-driven development!