Do work with (some) jerks
There’s an almost meme-level usage of “don’t work with assholes/jerks” within the tech industry. While originally well-intentioned, this has unfortunately come to mean “don’t hire people who openly disagree with others”.
You need those people. You need more than one. Folks that are able to get combative, to set a boundary for themselves or for their team and stand fiercely by it, even in the face of opposition–that’s how you end up with a healthy team, with the ability to set their own priorities and deliver on them. “Nice” is great, but prioritizing for it in isolation can lead to a team being passive and easily steamrolled.
I find it’s helpful to break down “jerks” by their center of gravity. Jerks are fighters.
If they’re just fighting for themselves, or just to make a mess, they’re brutes.
If they’re fighting for what’s right–they’re strongly opinionated, but don’t base their sense of self on winning arguments–they’re paladins.
Do work with paladins. Don’t work with brutes.