This is Kindergarten level issues here. You're supposed to know how to tie your own shoes and play nicely with others by the time you're 6 years old. Why do we continue to let the tech industry endorse childish behavior in the work environment?
EDIT: The one job I hated the most was the one where I was hired because I was a "good cultural fit". Turns out, they thought I was of the "culture" that enjoyed working free overtime. Nerf guns and free soda weren't enough to keep me in the office after 6pm, so I started to get squeezed out, culturally.
Sometimes assholes are super-productive geniuses (note that there are more assholes who think they're a genius) so even if they don't get along with the rest of your team (or any humans, really) it's a tough tradeoff whether it's worth having them around.
You have to balance whether they're doing more harm than good to the overall endeavor. In our case, we have one very senior guy who's highly antisocial but absolutely a crack dev. We've given him an extremely flexible work-from-home arrangement. It works out well because we hardly see him, and he's happy communicating over email and just churning out code in his batcave or whatever.
When I'm having trouble with something, the last person I want to help me figure out my problem is an exact clone of myself. I want people used to different tools and different ways of thinking.
You're not getting the point. All of you who keep parroting your master's "cultural fit" line are not seeing the lie for what it is worth. It's not about culture.