How to have tech discussions with a headstrong coworker

Posted by CoroteDeMelancia@reddit | ExperiencedDevs | View on Reddit | 55 comments

I'm currently in a refactoring project with a coworker that, while very competent, is also unbearably stubborn.

As an engineer, I make my decisions based on facts, specifically their pros and cons in terms of reliability, developer experience, and performance, etc. If you can give me the evidence that your way gets us more value or less cost, I will choose your way.

My coworker, however, argues in terms of emotions: "feeling like" it's better, being "used to it", or "I think this the standard way", rarely providing evidence and logical arguments for his views. This gets us into heated arguments where I ask him "why? but why? why is that?" over and over until either I get some actual factual meat so that we can productively discuss costs and benefits, or he gets tired and ends the discussion because it is "futile" and a "matter of preference" (it's not).

I'm unsure of how to deal with this. It gets tiring to have to force him to do things a certain way by getting a majority of the team on my side. I'm thinking of maybe using a discussion document where we list the arguments of each side and our conclusions about them; maybe this will help us stay in track and have meaningful discussions.

What do you guys think of this?