Not really kotlin-specific, but we use protobufs combined with either sockets, or some socket level protocol (e.g. ZMQ). We use it in both C, C++, and Java. We’ve seen other RT systems also using protos. The one thing I don’t like about proto is sometimes the generated parsers can use more memory than I would like, and the parsing can be non-deterministic Ideally something more deterministic in parsing speed and memory usage would be used for real-time systems.