Guide

SDE3 (senior) is the level where "strong individual contributor who ships features" stops being enough. The job shifts toward owning fuzzy problems, setting direction in a local sphere, raising the quality bar, and multiplying other engineers. Titles vary. The behavioral change does not.

Seniors still write code. They just stop being the only way code gets written in their area. If every critical path requires their hands on the keyboard, they have created a bus factor, not a senior practice.

Concept

Ambiguity means the problem statement is incomplete: unclear owner, conflicting goals, missing metrics, or several plausible designs. Junior engineers need ambiguity removed. Senior engineers remove it for others — by writing it down, deciding, or running a process that decides. See what the levels mean.

What changes

BehaviorStrong SDE2SDE3 / senior
Problem shapeClear feature or project outcomesFuzzy pain: reliability, cost, migration, product bets with incomplete specs
Start conditionNeeds goals and constraintsDefines goals, constraints, and success metrics with stakeholders
Technical roleExcellent execution inside a designSets or heavily shapes the design; anticipates failure modes
PeopleMentors when asked; strong reviewsDeliberately grows others; sets team standards
HorizonThis quarter's launchNext few quarters' trajectory for an area

Walking through a timeout

SDE2: "Reduce timeout errors on checkout." They find the buggy retry, fix it, add tests, ship.

SDE3: Timeout errors are one symptom of a flaky dependency and unclear SLOs. They pull metrics, propose a layered fix (client backoff, bulkhead, dependency SLO, runbook), align with the owning team, sequence the work so juniors can take slices, and make sure the dashboard tells the truth. They may write the riskiest patch themselves. The design doc and the adoption plan matter as much.

Being indispensable is not the same as being senior. If your vacation breaks the team, you have concentrated risk, not leveled up. Seniors make themselves replaceable on yesterday's work so they can take tomorrow's ambiguity.

Common mistakes

  • Waiting for a clean ticket. Senior-shaped work arrives fuzzy.
  • Staying the only person who can ship the area. That is a bus factor.
  • Confusing harder LeetCode with more senior. The step is which problems land on you.
  • Removing ambiguity only in your head. Write it down so others can act.

Check yourself

  1. Checkout timeouts are up. What does an SDE3 do first that an SDE2 might skip? Frame the fuzzy cause — dependency, SLOs, retries — and sequence work others can take, not only patch the retry.

  2. Your vacation pages the team. Are you senior? Not yet on multiplication. Document, teach, and hand off yesterday's work.

Key takeaways

  • SDE3 is owning ambiguity, direction, bar-raising, and multiplication — not harder tickets.
  • Seniors define goals and success metrics; they do not wait for them.
  • Write the problem down so others can take slices.
  • Make yourself replaceable on yesterday's work.

Further learning

Next, lead without reports in technical leadership.