Having poor interpersonal skills isn't the only social dysfunction people can have. People can have normal interpersonal skills and all kinds of emotional baggage that drives toxic behaviors.
The worst developer I ever worked with, from a team productivity perspective, was a developer who had normal interpersonal skills, had an extremely high opinion of himself, had a disdain for development work relative to management, and had repeatedly failed at management. He was emotionally invested in the idea that he was a different and better kind of person than the other developers, but the people he identified with (managers) did not accept him as a peer, and he hated himself for it.
The development work he was supposed to do made him feel bad about himself, so he did the minimum (though the work he did was solid, though old-fashioned) and invested his energy into anything where he got to judge and direct other developers: diagnosing problems of the team, dictating processes and tools for developers to use, making project plans. He made his manager feel like he was their eyes and ears in the development team. He was utterly focused on his relationship with his manager, to the point where he didn't realize that he needed to be concerned with his relationships with anybody else. He was always outwardly friendly, and people started out liking him, but after a month or so, people learned to read condescension into everything he said. Since he had earned the complete trust of the manager, the situation couldn't be repaired, and the team basically disintegrated. Nobody could put their heart into their work under those circumstances, even if they tried.
He was always cordial and always had a graceful thing to say in any situation, the opposite of the toxic geek stereotype, but he had a worse impact on team dynamics than any of the egomaniac programmers I've worked with, including the ones who were overtly abusive towards other programmers.
External interfaces matter much more than internal implementation details.