Holding the Performance Bar: Effort Gaps, Capability Gaps, and Knowing the Difference

10 minute read

Published:

Failing a student is the closest thing a teacher has to firing someone. A student who failed my course and came back twice, and a senior hire who did not work out, and what each taught me about holding a performance bar without wrecking the person on the other side of it.

TL;DR

  • Tell people where they stand while they can still do something about it. Honesty is the kindest version of the conversation, not the harshest.
  • A performance bar you have documented, repeated, and practiced is a bar you can hold. Personally own that bar.
  • Offer grace, but make people ask for it. “Come talk to me if you are stuck” has to be said out loud, and it only works if the person uses it.
  • Distinguish a coaching problem from a performance problem. Coaching that produces no change across 2-3 checkpoints is a signal.
  • Before I decide, I give them a fair test of the thing I actually need, that is aligned with their own claimed strengths.
  • Then act. Identify issues → act decisively. Once the evidence is in, a slow decision doesn’t help anyone.
  • Hold the line and treat the person well, with empathy. Those are not in tension.

Teacher to EM

I spent 15+ years as a teacher & university professor. I learned a lot about how to keep the performance bar. As an engineering manager I sometimes have to deal with someone who doesn’t meet the performance bar, and might even have to let them go. As a teacher I couldn’t “fire” a student but there is an analogue - failing the class. Firing and failing are both unfortunate outcomes none of us want, but still happen.

Tell People Where They Stand While They Can Still Act

I taught a course in “Introduction to Civil Liberties” to undergrad students for years. I remember one student clearly who failed to meet the bar. As I’ve written elsewhere I take seriously my responsibility to clarify tasks/assignments and have regular reminders. This student missed some classes, and had weak deliverables early on. Basically she was putting in a half-assed effort. Students can always drop a course without penalty during the first few weeks if they want. For that reason, I like to let students know where they stand as early as possible so that they can drop if they want. I pulled this one aside to ask if she was struggling or had some conflicts … i.e. hinting it’d be OK to drop the class. She said no, she was fine and in fact enjoyed my class. I said something like, “Well this early assignment won’t count for much overall but it isn’t a great sign. You’ll have to put in a bit more effort.” She continued, but failed to give me a mid-term essay and ended up dropping the course.

Holding the Line When You Have Already Given Every Warning

She was back again in my class the next year. It was an elective but she said she had enjoyed the course, but hadn’t focused much in her first year. She did much better, handing in assignments on time, collaborating on presentations etc. But there was a final essay requirement worth a lot of the overall grade. And that had a precondition of giving me an outline and getting approval for the topic. For most students that was a trivial bar to meet. This was in the syllabus. This is something I mentioned many, many times throughout the term. This is something we practiced in class. I even emailed a few students and/or talked to them after class to remind them about the outline, including this one. The due date was weeks before the last day of class (when the essay was due). But this student never did the outline. She did everything else. I reminded her in person. I reminded her by email. I directly told her that I wouldn’t accept an essay without the outline before hand (as written in the syllabus) and that she was in danger of failing. You can probably guess what happened. She didn’t give me the outline or get approval. She also missed the final class but did send me her essay by email a couple days later. I gave her a zero (as specified in the syllabus) and she failed the course.

When the Bar Gets Challenged

She complained to the school admin and I met with her and them, went through the syllabus and dates. I also told her I’m sorry that you failed the course after the effort you put in, but I have been reminding you of requirements. And I also reminded her that I have explicitly said if someone has a conflict or too much on your plate come talk to me and I can probably give you some grace. But she didn’t do that, and I have to hold the performance bar that I had defined.

A Third Try

I figured she would have hated me after that. So I was shocked when she was back in my class in her 3rd year! I pulled her aside for a talk. This is an elective for you, do you really want to do this? I also mentioned that I had re-jiggered the whole course over the previous summer. I had dropped some modules, expanded others. So it might not even be like re-doing something you already know. She said she was sure she wanted to take it.

Holding a Line Without Burning the Person.

There were some minor slacking with her (like missing a class), but nothing out of the ordinary. And she did a great job on all the major assignments and passed with an ‘A’. I have no idea what was going on with her the previous years but I like to think she was like me in my first year of university. I slacked off, got behind on assignments and way over my head. And when I asked for help got told off and ridiculed by profs. (My CS prof told me I should go pump gas or something and stop wasting my parents money!) I never went back to those profs’ classes. But at least with this student I held a line but also treated her with empathy. I like to think that’s why she came back for a third crack.

A Strong Resume and a Slow Start

I’ve had to deal with a few performance failures in my EM career. One is a person I almost forgot about. I’ll call him Steve. He was interviewed and hired just before me. I had a 1:1 with him within my first couple days and was impressed. He had an impressive educational background in machine learning and AI. (PhD if I remember correctly.) And he seemed to have some solid work experience. But I already noticed a few issues during out next check-in. He seemed very slow and the quality of his coding rather low. This is during his onboarding phase so I assumed that he was getting used to the codebase. I gave him some coaching in clean code practices and advice on how to get up to speed quickly. But by our next checkpoint I didn’t see any improvement in his code or delivery rate. I had also learned that he was spending a time with other team members giving advice on their work and also working on architectural designs. Neither things that were in his purview. It seemed like this might not be a “coaching” issue but actually a performance issue.

Coaching Problem or Performance Problem?

I had a straightforward chat with him. Why are you doing these things? And why are you working through some simple coding tasks so slowly. It turns out in his previous job he had been “more of an architect” and didn’t do any hands-on coding. He would develop algorithms, and architecture designs … but never do any actual production implementation. He admitted he was “rusty” and had tried to fall back on his “strengths” to carve out a comfortable position for himself.

Give Them a Fair Shot at Proving You Wrong

I told him I thought there had been some sort of misunderstanding. But we didn’t have a need for a (non-coding) architect. We needed a hands-on senior or lead who could take on large ambiguous implementation tasks. I told him I had concerns about his ability to meet those performance demands. I would need to see some evidence of those skills. I assigned a range of tickets to him - some of which should be quick and easy, some requiring more autonomy and ambiguity tolerance. He said he was an “architect” - at least he should be able to architect a solution to the latter.

He failed to meet the bar on either kind of ticket. The low-hanging fruit tickets weren’t quick, didn’t meet Clean Code standards and lacked adequate testing. The more ambitious tickets did have nice architectural designs and discussions attached but the implementation was problematic.

Making the Call

I had to make the decision to let Steve go. It was not a good fit. I believe he lacked professional experience of engineering solutions (in Python) and didn’t have the foundations to allow him to get up to speed.

Why One Came Back and One Did Not

Two stories. Opposite outcomes. But the same instinct behind both. I did fail (fire) the student (twice) but she came back a third time. Fired employees don’t have that option to do a re-try. What’s really different here?

The student didn’t have a talent gap. She had the ability but wasn’t applying it. i.e. she didn’t have the will. Steve had the will but not the ability. Effort gaps (student) respond to reminders, clarifying requirements and second chances. That is what the performance bar is for. But capability gaps don’t move on the same kind of timescale. A reminder or clarification isn’t going to help bridge a capability chasm.

The thing is you can’t always tell what type of issue you have in front of you. Is it a capability gap or an effort gap? Even then, will the person respond to coaching or demonstrate no movement. You don’t know what kind of gap until you test for it.

The two stories had the different outcomes, but the same conduct. In both cases I told the people plainly (and early) where they stood, and tried to do so with respect and empathy.