On conflicts

work

In the context of Software Professionals, there are 2 major type of conflicts that are common -

Case-1 Technical conflicts

Example - An internal debate is happening in your team; two engineers have conflicting opinions about a technical decision, and this is slowing the team down.

Technical conflicts are comparatively easier to resolve than other type of conflicts -

  1. Don't take it personally and don't make it personal. Review the code, the document, the text, the idea. Have conflicts on these things, not people. Being right is not enough; you have to be kind. Two code reviewers who want to convey the same thing can sound different.

    • "Why have you written this code in this method? Don't you know xyz?"
    • "This code makes more sense in this file. Here's a recommended article on xyz"
  2. The two engineers may have a bias toward different technologies, and they may think that one is better suited to be used than the other. In case there is a senior/principal engineer around, I'd ask them to share their point of view. Chances are that they'll not only provide a point of view but also explain why they hold it. This might result in a change of perspective in either person.

  3. If time permits, they can conduct a POC (proof of concept) with benchmarks using their preferred technology to solve the underlying problem. The POC should include numbers and pros and cons of using different technologies. This generally provides a clear winner, but it's always good to get comments from relevant folks.

  4. Another way to approach this is - let's say the two technologies are PostgreSQL and ElasticSearch. They can both consult the respective experts of these technologies and determine whether their ideas are correct in the context of the given problem, considering the constraints.

  5. Understand the trade-offs. "Should I always use the best tool for the job?" I may not. There is no "best tool" for any job. There are only great and available tools for different jobs. Keep new tools in your arsenal so that you can reason among them, understand them, and use them whenever needed and move on.

Case-2 Personal conflicts

Example - You have a new colleague who is questioning everything in the company without spending time and gaining context. Teammates are not comfortable around this person.
  1. We should ensure that individually we have humble people on the team. Ego is a waste of time, and people who carry it are hard to work with. The legendary people in their respective fields are never afraid to acknowledge their own biases when needed. And they can correct others with feedback using the correct words and tone.

  2. Regular constructive communication and feedback from respective managers or teammates can also help.

  3. Reach out to leadership for guidance. Many who have spent years in the industry have gone through this. They can analyze the situation.

  4. As leaders, they should be aware of the nature of the people they hire. Ideally, hiring should ensure that these types of conflicts don't happen. But hiring is hard. Give feedback and take action early if things don't get better.


Most conflicts are resolvable with enough empathy and respect for each other. Just make sure that you have such people around you.