I was once a junior engineer dealing with a senior engineer on my team who gave very harsh code reviews. And it was so frustrating that I had to go to my manager for support. I was also once a senior engineer dealing with a junior engineer on my team whose code quality was just not up to my standards. And worse, I felt like my manager was being too easy on me.
And of course, I was once a manager dealing with two engineers on my team arguing over code review and code quality. And I felt like I had to step in and save the day. These kind of conflicts happen all the time. When they happen, we can find ourselves caught up in a plague linked to specific characters. Whether it's code reviews, discussing tech debt, choosing the right architecture, these kind of conflicts are very difficult and tough to navigate.
I'm going to break down why conflicts like this can feel so difficult and endless. Now, you can get things back on track. And it starts with the fact that conflict like this has one thing in common. If you look closely, there's a triangle. Not a love triangle, but a drama triangle. This is Karpman's drama triangle. It's a social model of human interaction proposed by psychiatrist Steven Karpman. The idea is there are three roles, victim, persecutor, and rescuer, that perpetuate dysfunction and drama. The way out of this conflict is by not playing any of the roles in the triangle and helping other people leave the triangle as well.
You see, when I was the junior engineer, I didn't realize it, but I was playing the victim role. I wanted someone to care for me instead of recognizing I have the power to change my circumstances. I wanted to cast the engineer as being overly critical, instead of recognizing that I can choose how I respond even when someone is being unfair. Ultimately, I was afraid. What if these standards are reasonable and I can't meet them? What if I can't reason with the engineer? To get out of the triangle, I need to shift away from a victim role to a creator role. Now, here's what that might look like. When I see the code review comments, I don't take any meanness to heart. I know this has nothing to do with my self-worth or calling into question whether I'm a bad engineer or not. I'm learning, and if I'm making mistakes, I'll navigate them and I'll learn from them. Looking through the comments, I look past the top layer of something that might be deemed mean or nitpicky to figure out what is and isn't fair. And when I take a closer look, I realize that, you know what? The reason the senior engineer has been on my case for a minute test is because they told me several times that I'm not following the team standards. So I make a note of that as an area for me to focus on for next time.
Comments