If you are running something like a factory where thousands of independent systems need to communicate in some way, this kind of tech starts to look like the only option.
If you are orchestrating the concerns of 5-10 services, I think you are making your life harder than it needs to be with ESB-style abstractions. Direct method invocation is much more reliable than whatever any one of these vendors could ever sell you. Put all your services into one exe. If you can't be bothered to use one language/repo, there are still ways to achieve this.
The real architect's dilemma is shoving one's edifice-constructing ego into a box long enough to produce a useful shack for the business.