top of page

Handle Disagreement as a Lead — Engineering Leadership, Part 9

Shift Quality Editorial
Sep 29
3 min read

Updated: Oct 4

Two engineers can't agree. Now what? Or: two teams want different things. You're in the middle.


Step 1: Disagree and Commit > Avoid (10 min)


Default culture: speak up; once decided, commit.


Not:


  • Avoid disagreement

  • Pretend to agree

  • Sandbag the decision


A team that can't disagree well makes bad decisions in silence.


Model it: disagree in public; commit after.


Step 2: Time-Box Discussion (10 min)


"Let's discuss for 30 minutes. If no consensus, I'll decide."

Don't let it drag. After enough talk:


  • Either pattern emerges (consensus)

  • Or you decide


Time-boxing forces resolution.


Step 3: Stay Curious (10 min)


When engineers disagree:


  • Listen first

  • Ask "Why do you think so?"

  • Steel-man both sides

  • Look for unstated assumptions


Often: they're optimizing for different things. Surface the underlying values.


Example:


A: "We should rewrite this in Go."
B: "We should not rewrite."

You: "A, what specifically does Go give us? B, what does the rewrite cost?"

The "disagreement" is often a missed shared problem.


Step 4: Use Data (10 min)


Replace opinion with data:


  • Benchmarks

  • Profiling output

  • User research

  • Cost analysis

  • Prior incidents


"Before we decide, can someone benchmark? Let's reconvene Friday."

Data dissolves many arguments. Run the experiment.


Step 5: Acknowledge Both Sides Have a Point (10 min)


"A's right that we need to scale. B's right that the rewrite is
expensive. Here's the trade-off..."

Validation reduces defensiveness. People feel heard. Decision lands better.


Don't dismiss either side.


Step 6: Decide When You Need To (10 min)


Sometimes consensus won't emerge:


"We've heard both sides. I'm going with option A because [reason].
B, your concern is real; let's set a check at Q4."

Specific. Explained. Bounded.


Leaders decide. Hiding behind "team consensus" when there isn't any = abdication.


Step 7: Disagree with Your Manager (15 min)


Same principles up the chain:


  • Disagree in private

  • Be specific

  • Bring options

  • Once they decide: commit


If commit is impossible (ethical issue, hard line for you):


  • State that clearly

  • Discuss alternatives

  • Sometimes: escalate to skip-level

  • Sometimes: leave


Rare. But know when the conversation is past disagreement.


Step 8: Cross-Team Disagreement (15 min)


Your team vs. another team:


  • Direct conversation first (you ↔ their lead)

  • Agreed plan; both leads commit

  • Document the decision

  • Escalate to managers only if direct fails


Don't:


  • Slack-throw teams under buses

  • Run to managers first

  • Stew quietly


Other team leads are your peers, not your opponents.


Step 9: When to Get Help (10 min)


You and another lead can't resolve it. Escalate:


  • To your manager

  • Co-write a brief: positions, options, recommendations

  • Both leads present


Manager either decides or pushes the brief up. Decision documented.


Use sparingly. Most disagreements resolve at peer level.


Step 10: Healthy Conflict Habits (10 min)


For long-term team health:


  • Make disagreement normal

  • Praise people who push back well

  • Apologize when you're wrong (publicly)

  • Don't penalize the dissent that turned out wrong

  • Decide; commit; move on


Teams that fight well make better decisions. Teams that suppress fight rot.


What You Just Did


Disagreement as a lead: disagree-and-commit, time-box, curiosity, data, validate both sides, decide, manage up, cross-team, escalate, healthy conflict. Productive friction.


Common Failure Modes


Suppress disagreement. Bad decisions; rot.


Endless debate. Decision paralysis.


Cave to the loudest. Wrong calls.


Decide without explanation. Lose buy-in.


Hold grudges after decisions. Future disagreement avoided.



Part of the Engineering Leadership guide — ShiftQuality's complete map to leading engineers.

bottom of page