Why I Stopped Reviewing PRs at Work

The Secret Developer is a seasoned software developer who loves helping colleagues move their tickets to the right.

So how have they suddenly had a moment of clarity where they realize their efforts need to stop for the good of themselves and the team.

The Situation

Working in a company usually means working together to get features shipped and work done.

Unfortunately, in my current role, only the senior developers seem to review pull requests. I challenged one of our contractors about this, and they told me.

“I review sometimes. I don’t have time to review code all day.”

I also know another developer is happy to review (at most) one PR a day. At times our coding pipeline grinds to a halt.

I’ve worked in other companies where there is a reciprocal relationship where if you review a PR that person is likely to review your PR — this does not exist within my current company.

There is a further situation which has rather tipped me over the edge. It’s about a particular PR.

What Tipped Me Over

The PR

For once, the awful PR in question isn’t my creation but the handiwork of a colleague. 

Here’s a rundown of what happened.

My colleague needed to rename 12 or so classes. They used the refactoring command on their IDE to quickly and easily change the names — a fine move. It’s a pity that they forgot to check all of the instances of the name change so there were a number of inconsistencies. 

No problem because I’m not perfect either. I make many mistakes (typically not reading requirements) so I’m usually relieved when others make a slip.

However, what happened next, I felt I couldn’t abide.

What Happened Next

They simply ignored me. Actually, that isn’t fair because they did something about my comment on the PR.

Under each comment I’d made they wrote “next PR”. Since our culture at the company is to use ‘approved with suggestions’ they simply resolved my comments and merged the changes.

Pretty soon, they raised another PR with those changes embedded in a set of other changes which as they were entangled it was difficult to review in a single PR. Slack pinged. ‘PR ready for review’.”

The Consequence

I’ve noted that this isn’t a singular event. This is a pattern of behavior and it doesn’t just apply to me.

Yet I feel a decline in my mental health. I don’t feel listened to or respected.

Sure, I understand that we want to ship features as fast as possible and want to get stuff done. Yet the task seems to fall to me to review work, and if you choose to fix the issues it’s down to me to review your work. I need to remember all of the context and understand what is required from me.

Do you know what is best for me in this situation? I’m not going to review PRs unless I really need to or someone demands that I do it.

In the meantime, I’m going to look for another job. I suspect I won’t be missed.

What Should You Do in Such a Situation?

I know, you’re probably not as grumpy and antisocial as I am.

I also know that some other teams (can I join you, pretty please?) do not use approve with suggestions

However, you might have a rather more generic version of this issue where you feel you’re not quite listened to by your team.

Here are some top tips about how you can either avoid this situation or resolve it if you come across an issue like this.

Communicate Clearly

Ensure clear communication about issues found in PRs. Avoid passive-aggressive comments; be direct and constructive.

Confirm Boundaries

Ask what the boundaries are for PR practices in your organization. Initiate conversations about how suggestions can be implemented in your code.

Establish Boundaries

Set clear boundaries for what is acceptable in PR practices. If necessary, refuse to review PRs that consistently ignore your suggestions.

Ultimately

It’s important to be treated with respect. If you aren’t, perhaps you should think about your future and whether you are in the right place to achieve your goals.

Conclusion

I’m sure people will let me know in the comments about whether I come across as an entitled software developer.

In my defense, there is some advice here that perhaps I should be following to solve this situation, but even then, I think we are rather missing the point. 

I’m not happy in my job and the ultimate solution for this is to leave and join a company that “better represents my values”. So, I’m better off actively working on the job hunt, right?

Previous
Previous

It’s Time to Move on From Agile Development

Next
Next

The Urban Legend of the Human Documentation in Software Development