I've recently joined a new company where everybody loves to complain about Skype/Lync stating similar things to this. But I have zero issues, and had near zero issues at my prior company where it was widely used and improved remote working considerably. The only difference I can see is in this new company everybody is using MacOS (and admittedly when I tried it on Mac it was terrible).
Group chat isn't anything amazing with it but I haven't found it deficient. Maybe I'm using it wrong.
The current solution requires persistent rooms to be enabled, a new AD account, and a VM running our proxy.
Once set up though, you can do 2-way, real-time sync between Slack channels and SfB rooms (https://vimeo.com/174265102).
Even when running IRC in the browser with IRCCloud it's snappy.
Mattermost is trivial to self-host so that's probably not a bad option if you're looking for something closer to slack (I think?).
This way all the private stuff can stay inside the network and behind VPN if needed. Security 101 really.
the slack servers probably get a lot more security attention than your private XMPP or IRC server that probably sees a few minutes a year of attention from some engineer to run "apt-get dist-upgrade" or something.
Also, Slack is a much bigger and juicier target for attack.
Ultimately it's a tradeoff. You may need to pay more attention to security in-house, but in exchange you're no longer tying the critical aspects of your business to some random SV web startup that is here today, but may get acquihired tomorrow and kill the product overnight.
I think of Slack as "IRC for yuppies". Seen this way, it makes sense. It doesn't have the low-level features of IRC, but it follows you around easily, when juggling multiple clients. For that, it's pretty good.
I don't love it, I don't hate it. It works, kinda. It's loud and attention-grabby, for sure.