Low-latency messaging in big distributed systems has never been easy. Developing systems with many microservices that rely on messaging for cross service communication, especially when the services are developed by different teams, brings a lot of challenges. It requires discipline and a clear exchange contract. The last thing you want to have to deal with is a backwards-incompatible change in the message that is sent to a topic consumed by your service. Having a clear schema for topics will reduce and ideally eliminate the potential for this problem occuring.