There are times when people just don't get along with each other for whatever reason there might be. Whereas one can learn how to work with someone if they absolutely need to, the truth is that sometimes one doesn't need to, and one has to evaluate just when it's time for a change, and what kind of change.

For instance, if you're in the superior position, you pretty much know you're not going to be the one to leave. What you have to do is evaluate whether the person working for you is valuable enough to you and your department to decide it's worth it to figure out ways to work with this person or not. If not, well, that's a part of the reason you have the higher position.

If you're in a subordinate position, it's a much easier decision most of the time. You can try to find another job while still working at that one, or you can decide to try to find a way to change the circumstances of where you are.

If you're in an equal position you have the worst of it, because the hardest thing for anyone to do is leave because of another co-worker of equal standing. It doesn't look good to go to management to complain because managers hate getting in the middle of what amounts to personality clashes. Often it's hard to have a regular conversation with someone of equal standing because they don't have to listen, as they don't report to you and you don't report to them. So, sometimes you're put into a position of having to decide if ignoring this person or trying to open communications with this person is worth the trouble, or if it's so bad that you decide it's time to leave.

In any case, having to make decisions on leaving is never easy. But sometimes, it's the only saving grace you'll have in the long run.