People often confuse engineering and design. Slack has a very good design team, the UX is far above IRC or competing solutions and everything flows and works in a way that most users expect. The engineering itself is not the strong point, that's for sure. Slow, bandwidth hungry, memory intensive, strange syncing problems, security issues, etc.