For matrix specifically, I recommend fluffy chat on mobile and cinny for web/desktop. Most notably, they both support the not-yet-official spec on custom emojis and stickers, which I think is important for any slack-like.
For the server (since you want to self host), you’d probably want to do Synapse - it supports not being federated as well as SSO. Also it wasn’t mentioned by mp3, but xmpp is another protocol that’s used by many large companies for internal chat systems as well.
I don’t hate apple. Especially from a privacy record, they actually have a far superior history than essentially every other hardware manufacturer out there.
I think they’re overpriced and I don’t agree with some of their design decisions, and in general feel like they could give the consumer more control over things, which is why I don’t personally have an iPhone or iPad etc., I use them at work and have nothing against them in general)