How would you handle a low performer on your team?
Start by separating performance from circumstance. Before labeling someone a low performer, I confirm three things: clear expectations were set in writing, the engineer has the context and tools they need, and there is no personal or team-level disruption that explains the dip. Once I've ruled those out, I move to a structured conversation — not a surprise. I share specific examples (two or three, not a pattern lecture), describe the impact, and ask for their read on what's getting in the way. From there we agree on a 30-day plan with measurable checkpoints: scope of work, definition of done, and weekly 1:1 reviews. If the gap closes, we close the loop publicly so they regain trust. If it doesn't, I move into a formal performance improvement plan with HR, but I make sure the engineer has heard every concern from me long before the document arrives. The worst outcome is firing someone who never knew they were underperforming — it signals to the rest of the team that feedback isn't real until it's terminal.
Describe a difficult performance review you gave.
I had a senior engineer who was technically excellent but consistently dismissive in code review. Junior engineers had stopped submitting PRs to him because the feedback felt punitive. The difficulty was that his code shipped, his designs were sound, and on paper he was a top performer — but the team's velocity was being silently taxed. I went into the review with two specific incidents documented and the team's calibration data: review turnaround time on his PRs versus others, attrition signals from skip-levels. I framed it as a leverage problem rather than a character flaw — at his level, his impact is bounded by how others grow around him. He pushed back hard at first. I held the line, gave him 90 days to demonstrate improved review tone with concrete behaviors (asking questions before declaring fixes, acknowledging good design before flagging issues), and offered coaching support. He course-corrected, and within two cycles I was able to write a much stronger promotion case for him because his sphere of influence had genuinely grown.
How do you give feedback to a senior engineer who outranks you in tenure or technical depth?
I lead with curiosity, not authority. Senior engineers can smell positional feedback from a mile away — and they're usually right that the manager doesn't have the deepest technical context. So I anchor feedback in observable outcomes the engineer also cares about: a design that two on-call rotations had to patch, a doc the team can't navigate, a meeting where a decision wasn't made. I describe what I saw, what the second-order effect was, and ask what their read is. If they disagree, I treat that as legitimate input — sometimes I'm wrong, sometimes I'm missing context. If they agree but resist changing behavior, I get specific about what 'better' looks like at their level: not 'be nicer' but 'before disagreeing in a meeting, restate the proposal in your own words first.' The mistake new managers make with senior ICs is hedging — softening feedback so much that the engineer leaves the room thinking everything is fine. Senior engineers respect directness more than seniority.
Tell me about a time you had to fire someone.
I let go of a mid-level engineer about 14 months into my first manager role. He had been on a PIP for 60 days, missed two of three milestones, and the third was checked off only because his teammate had quietly rewritten his work. The decision wasn't hard by the time it arrived — what was hard was owning that I had let it go too long. I should have had the first hard conversation three months earlier. When I made the call, I did three things deliberately: I gave him the news first thing on a Monday so he had the full week to plan, not on a Friday afternoon. I had HR in the room but I delivered the message myself, including the specific reasons. And I gave him a generous severance window and a referral commitment for roles that suited his actual strengths, which were real — they just weren't the strengths the role demanded. The team knew within an hour. I told them what I was allowed to say, acknowledged that everyone had been carrying his load, and announced the backfill plan that day. Trust on the team went up, not down, because the silent tax was finally removed.
How do you measure team health?
Velocity and incident rate are lagging indicators — by the time they move, the team is already in trouble. I track four leading signals. First, 1:1 sentiment trend: I keep a private rubric per engineer scored each 1:1 (engaged / neutral / disengaged) and watch the slope, not the absolute. Second, voluntary collaboration: how often do engineers pair, review each other's PRs, or volunteer for ambiguous work? When that drops, fear is up. Third, on-call experience: I read every incident retro and look for blame language and weekend pages. Fourth, the gap between what people say in 1:1s and what they say in team meetings — when those diverge sharply, psychological safety is eroding. I supplement with a quarterly anonymous pulse, but I don't lead with it. The number tells you something is wrong; the conversations tell you what.
How do you handle a conflict between two strong engineers on your team?
First, I get the conflict out of Slack and into a synchronous conversation — async escalates because tone is missing. I meet with each privately, not to take sides but to understand what each one believes the disagreement is about. Often it's not the technical question they're arguing — it's a status, ownership, or autonomy concern dressed up as a technical debate. Once I understand both views, I bring them together with a clear frame: 'Here's the decision we owe the team by Friday. Here's what I heard from each of you. What would change your mind?' My job in the room is to keep the conversation on the artifact, not the person. If they can converge, great — we document the decision and move on. If they can't, I make the call myself, explain the reasoning, and ask both of them to commit to it publicly. Disagree-and-commit only works if commit is visible.
How do you support an engineer who wants to be promoted but isn't ready?
I separate the conversation into two threads: where they are today against the next-level rubric, and what concrete artifacts would close the gap. The mistake is to either over-promise ('absolutely, by next cycle') or to deflect ('keep working hard'). Neither helps the engineer make a real decision about how to spend the next six months. I share the rubric line by line, mark which lines they're already exceeding, which they're meeting, and which are not yet visible. For the not-yet-visible lines I propose specific projects that would create that evidence — not assignments I invented, but real work the team needs. Then I make a calibration prediction: 'If you ship X and Y at this quality level, I am prepared to advocate for you next cycle. I cannot guarantee committee outcomes.' That's an honest contract. Some engineers leave that conversation energized. A few realize they don't actually want what the next level requires, which is also a valid outcome.