Disagreeing with a tech decision from your lead
How to handle disagreement with a senior or principal engineer's technical direction β the communication framework, when to escalate, and how to make your case without damaging trust.
30-Second Opening
State the decision, your concern, and the risk you were trying to reduce. Then say how you sought the leadβs context, brought evidence or a concrete alternative, and committed once the decision was made.
5-Minute Answer Structure
Use STAR, with most of the time on the conversation and the decision process: what you learned, how you framed the concern in terms of outcomes, what options you proposed, and how you handled disagreement. Close with the result for the project and the trust relationship.
Why This Question Matters
"Tell me about a time you disagreed with a technical decision" is one of the most revealing questions in senior/staff interviews. The interviewer is testing: Do you raise concerns or stay quiet? Do you do it constructively or destructively? Do you commit once a decision is made, or continue lobbying?
Most candidates answer this wrong in one of two ways:
- Capitulation story: "I disagreed but went along with it." (No signal.)
- Confrontation story: "I proved they were wrong." (Wrong takeaway.)
The right story shows you influenced a decision through evidence, understood the other side's constraints, and committed to the outcome whether or not you got your way.
The Cognitive Frame You Need
Technical decisions are almost never purely technical. Your lead chose that approach because of:
- Constraints you may not know about: political pressure, migration cost, team skill set
- Experience you don't have: "We tried the other way two years ago and it failed here's why"
- Risk tolerance they're calibrated on: they may know the org's tolerance for breaking changes better than you do
Your disagreement might be technically correct and still wrong in context. The question "Am I right?" is less useful than "What are we each optimizing for, and why do they differ?"
The Communication Framework
Step 1: Understand before advocating
Before stating your position, make sure you understand the reasoning behind theirs:
"Can you help me understand the reasoning behind this approach?
I want to make sure I'm not missing something before I share a concern."
This signal is huge. It shows intellectual humility and often surfaces constraints that change your view entirely.
Step 2: State your concern in terms of outcome risk
β "I think using a single-node Redis for this is wrong."
β
"I'm worried that a single-node Redis here creates a SPOF for the
checkout flow β if Redis becomes unavailable, users can't complete
purchases. Can we talk about the failure mode?"
Lead with the risk to the outcome, not your preference. "I think" invites debate about opinions. "This creates a failure mode" invites discussion about facts.
Step 3: Propose alternatives, not just problems
β "This approach is going to have problems."
β
"I see two options that might avoid the failure mode:
(1) Redis Sentinel with automatic failover β adds ~2 hours of setup
(2) Making the checkout flow degrade gracefully without Redis β adds a sprint
Are either of these worth the tradeoff given our timeline?"
Always bring alternatives. If you can't propose an alternative, you're identifying a problem without helping solve it.
Step 4: Commit once the decision is made
Once you've made your case and the decision is made β whether or not your view won β commit fully. Half-hearted commitment undermines team cohesion and creates a self-fulfilling prophecy where the approach fails because you stopped caring.
"I still have some reservations, but I understand the constraints.
I'm committed to making this work. Let's make sure we have good monitoring
on the Redis availability metric so we catch any problems early."
The "Disagree and Commit" Nuance
The Amazon "disagree and commit" principle is often misunderstood. It doesn't mean "swallow your objections silently." It means:
- You raised your concerns clearly, with evidence.
- The decision was made by the appropriate person with that context.
- You now execute with full effort, not diminished effort.
The key: "commit" only applies to reversible decisions. If the decision is irreversible and potentially catastrophic (data loss, security vulnerability, legal risk), escalation is the right path β not silent acceptance.
Escalation: When Is It Right?
Most technical disagreements should resolve between the two people. Escalation is appropriate when:
- The decision creates irreversible risk: data loss, regulatory non-compliance, security vulnerability
- You've had the conversation twice and can't resolve it
- The scope of impact extends beyond the immediate team (platform, infrastructure, multi-team)
When you escalate, frame it as seeking input, not appealing a ruling:
"I want to make sure I'm thinking about this correctly. We're aligned on
the approach being single-node Redis, but I'm still concerned about the
checkout failure mode. Can we get [tech lead / principal / architect] to
weigh in on the failure mode risk?"
Story Structure for the Interview
The disagreement (30s): What decision, what technical concern, and why did it matter?
How you raised it (1 min): Did you understand their reasoning first? What was your framing?
The resolution (1 min): Did they change course, or did you come to understand their constraints? What was the final decision?
The commit (30s): What happened after? Did you execute fully? What was the outcome?
Red Flags the Interviewer Is Watching For
| Behavior | What It Signals |
|---|---|
| Asked too many clarifying questions before raising concern | Passive-aggressive |
| Raised concern in a group meeting to embarrass the lead | Politically unaware |
| Never raised the concern at all ("I just did what I was told") | Won't advocate for quality |
| Kept lobbying after decision was made | Can't commit; will undermine execution |
| Had no alternative, just a complaint | Problem-identifier, not problem-solver |
Common Interview Follow-Ups
"What if your lead did not change the decision?"
Say how you made sure the concern was understood, supported the final plan, and added a monitor or checkpoint when the risk was meaningful.
"When would you escalate?"
Use severity and reversibility: escalate risks involving data loss, security, legal obligations, or a broad irreversible impact. Do not escalate merely because you lost a technical debate.
Common Mistakes
- Treating seniority as proof that the other person must be right.
- Treating technical correctness as permission to ignore context or relationships.
- Escalating to win rather than to get the right expertise for a material risk.
- Saying "disagree and commit" while withholding effort or quietly pursuing a different design.
Test Your Understanding
Question: What should you do after your lead makes a decision you still dislike?
Quick Recap
- "Technical disagreement" questions test whether you advocate for quality, communicate constructively, and commit once a decision is made.
- Understand before advocating β surface their constraints before proposing your alternative.
- Frame concerns as outcome risk, not personal preference.
- Always bring at least one concrete alternative with the tradeoff quantified.
- Disagree and commit β but know when the severity of risk requires escalation rather than acceptance.