15

How to handle mistakes by you and others?

Profile picture
Mid-Level Software Engineer at Taro Community5 months ago

My style is to admit mistakes when I do them and provide a list of things of what I should have done and the plan moving forward, I always blame myself and always tell others that I’ve done their mistake before and that it’s confusing and easy to fall for it. I have a teammate who when something fails due to a mistake we’ve both contributed to, they don’t like to admit their share and starts to blame others. This teammate is senior to me and they’re knowledgeable and smart but we’re humans and mistakes do happen! How can I handle this situation? Nothing is coming from my manager so far but I’m not sure how to handle the conversations with this teammate and my manager if they mention any mistakes that happened moving forward.

1.1K
4

Discussion

(4 comments)
  • 12
    Profile picture
    Staff Eng @ Google, Ex-Meta SWE, Ex-Amazon SDM/SDE
    5 months ago

    +1 to Charlie and Alex’s thoughts.

    I want to add something, though. If the culture is blameless, this person doesn’t have to accept blame. If they are blaming others, that is the root of the problem to address. Don’t worry about them being reflective and publicly accepting blame. They may have self-confidence issues, imposter syndrome, are insecure in their seniority, or any other number of issues. Maybe they’ve been scarred by a culture of blame, have been fired or seen people fired when something is “pinned” on them. Whatever the reasons, that’s not for you to know.

    You can talk to your manager about this person, and I don’t know that you have to in order to work on this. You can spearhead blameless culture, team norms, and other principles that aren’t targeted at this person, they are meant to improve culture and morale team-wide. When they are understood and adopted, it isn’t you pushing back on this team member, it is the team culture and they are being reminded that everyone is on the same side, fighting against faulty systems and processes, and for the end user.

    When people bring up a mistake, you don’t have to accept or assign blame. You say “I’m excited to drive the postmortem on that, I bet we can identify some solid action items to make sure that never happens again, or can’t affect that many users.” If someone is pointing a finger, I think that you can gently redirect. “Yeah, it’s really unfortunate that we didn’t have better documents in place. It was really admirable that Ajay took that on, and has already implemented some of the AIs to protect the rest of us and our users”. Again, you don’t HAVE to be the only champion, and always be redirecting, but if the team norm is “we blame processes, we praise people” it can be easy to just say “blame the process” or whatever as shorthand, and ideally the rest of the team will, too.

    Don’t set this up as a conflict between you and this other engineer, or something they need to fix. The team needs to fix it, the problem is with culture, not one person. If they don’t know any different, blame-assigning isn’t particularly unusual. At my first job we’d form a blame train, picking up people as we went, trying to track down who broke the build or whatever. It was sort of light-hearted, but wasn’t as productive as looking for the problem not the perpetrator.

    • 4
      Profile picture
      Tech Lead @ Robinhood, Meta, Course Hero
      5 months ago

      we blame processes, we praise people

      This is SO GOOD! I'm going to borrow this phrasing in the future 😁

  • 11
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    5 months ago

    Argh, it sucks when this happens (I also am always looking to see how I can shoulder at least some of the blame and improve myself). I went through a really bad case of this back at Portal with a really terrible TPM. It didn't resolve great, but I do think I got the best outcome possible and what I did there is what I recommend to you as well: Talk to your manager.

    Think of your manager as a "people API". You call them as an API when you (a person) are having trouble with other people. In your next manager 1 on 1, bring up that this senior engineer isn't respecting blameless culture principles and that this is making you feel hurt. However, don't make it seem like you are just attacking this person and saying they're evil: Mention that you do have respect for them and understand that it's scary to take on blame. Here's a good video for inspiration: Voicing Your Problems And Frustrations Productively

    I recommend my Effective Communication course as well: [Course] Effective Communication For Engineers

  • 8
    Profile picture
    Eng @ Taro
    5 months ago

    This issue can be difficult because you don't want to blame them back even if they contributed to the mistake. It's also not great for the engineering culture because people will be afraid to make mistakes. This can start to present itself when people want to do the minimum to decrease the potential surface area of their mistakes.

    For larger incidents, you can look into having blameless post-mortems:

    For a postmortem to be truly blameless, it must focus on identifying the contributing causes of the incident without indicting any individual or team for bad or inappropriate behavior. A blamelessly written postmortem assumes that everyone involved in an incident had good intentions and did the right thing with the information they had. If a culture of finger pointing and shaming individuals or teams for doing the "wrong" thing prevails, people will not bring issues to light for fear of punishment.

    You can come up with a template for a blameless post-mortem and talk to your manager about it to get it spread throughout your team or org. We used to have a weekly meeting where we went over incidents following the above protocol to make sure issues don't happen again.