Also - if you've ever been a manager, you'd realize that what is 'bs' is that you think you can just 'do your job' in the terms that you think it exists.
I literally have this problem right now with an Eng. who's decent, he technically moves the schedule forward roughly on time - but he's impossible to deal with, cynical at every turn, always negative, does not offer up flexible options when he should - and I hate having to speak to him, it ruins my day.
So does he 'do his job' - he could argue that he does. I have only a few complaints about his ability - but working on a team goes quite a bit beyond that.
I'm about to let him go and I will accept someone who is not quite as good in his wake if they are a better communicator -this person will be more valuable to the company - and my peace of mind is worth something.
For professionals - if you 'don't like working somewhere' you should probably leave. Life is too short. It's probably worth taking a little bit of a pay cut to work where you get along.