I have a team leader right now who blocks all of my PRs and always demands rework, despite the code functioning exactly as intended and being performant and efficient as well, and maintainable too.
I have a team leader right now who blocks all of my PRs and always demands rework, despite the code functioning exactly as intended and being performant and efficient as well, and maintainable too.
At some point you've got a job, and code alone is not the whole job. Can't do part of it, then you're not doing a good job.
A job is almost never just code.
I make sure to thoroughly document my changes in my commit messages and sometimes in my comments, especially documenting who requested the change so that there's a nice paper trail. I also push back often, but the mere act of responding to feedback that does not seem honest from a team lead is traumatic.
My problem is: how do you report such a passive-aggressive person? A single request or question on its own seems benign and not particularly harassing, but the overall trend is a huge red flag. To be honest, I'm not sure much can be done.
If you decide for whatever reason that you cannot leave, the best way to deal with a passive aggressive person is to erase from your memory that they are passive aggressive at all. It is a test of wills that you will win, just don't lose your cool. Never forget that a passive aggressive person is a fundamentally insecure person, and then you will always have the upper hand.
This is genuinely just an example of bad management and bad workplace politics. If the code is working and checks all the boxes, nobody in the organization should be allowed to say "I personally do not want your code to be deployed", especially if other developers dont face such restrictions.
The simple solution is to leave, but I am growing tired of job hopping. If I can land a job as a lead, or at least a place that has autonomy, I am pledging not to do such things to those "beneath" me, as if that word was even true.
At first I thought I was just hopelessly bad at coding/following instructions, but even when I pair programmed with these folks and followed their every instruction, they'd still want to refactor all of it the next day.
Some people are just never content unless it's 100% written by them.
I sometimes do that with contracts drafted by junior lawyers — and often it's due to having had additional thoughts after seeing an actual "product," in sort of a fail-fast mode of drafting. Could that be part of the explanation in your case?
I've dealt with this before by documenting everything they told me to do differently, with date and time.
Always fun doing code review in a group, having the lead point out a number of problems they have with the code, especially actual bugs, and pulling up the changelog which includes notes from the one criticizing your code, telling you to make those design choices. I've collapsed whole meetings this way, with people walking out and going straight to HR with requests to transfer teams. Really helps to remove the poison from the group.
var string = "";
instead of
String string = "";
My teammates waste their time focusing on the most inane things.
There are members of my team whose PRs are rarely approved without rework. There are other members of my team whose PRs almost never require rework.
It's just a gut check question. This guy could be totally wrong and a jerk. Or he could be right and a jerk. If he's right and a jerk, then internalizing that feedback might help you (even if he's still a jerk.)