We should move to orjson later just like our backend DRF serializer. It can be an order of magintude faster, especially useful here where we want to minimize CPU bound stuff and do asyncio/gevent for IO bound stuff.
Long term: see how close are we to adopting protobuf, avro etc. Do we get schema sharing, migration benefits there?