gRPC
A contract-first RPC framework using Protocol Buffers over HTTP/2, with generated clients and servers and first-class streaming.
Where it wins is internal service-to-service communication: binary encoding is compact and fast,
HTTP/2 multiplexes many calls over one connection, the .proto file is a real machine-checked
contract, and client code is generated rather than written.
Where it does not win is anything a browser talks to directly — that needs a proxy layer — and anything a third party integrates with casually, because a REST endpoint can be explored with curl and a gRPC endpoint cannot.
The contract discipline is the underrated part. Protobuf's field numbering makes backward and forward compatibility explicit rules rather than good intentions: never reuse a field number, never change a type, add rather than modify.