Developer taking credit for work of an engineer he ousted rubs me the wrong way.

Posted by theyellowbrother@reddit | ExperiencedDevs | View on Reddit | 183 comments

Matt was the engineer that got ousted. Dev B was instrumental in getting Matt fired. Matt had some problems -- wrote too much code, often sloppy but his biggest flaw was not knowing how to use git properly and causing problems with the team. So he got the boot.

Dev B has taken over Matt's work. Has influences and tells leadership Matt's code is so bad, it requires a complete rewrite. Demanding to replace all 3rd party libraries with home-grown, in-house. So the business buys into the idea of having a long-term stable mature codebase. The problem is Matt cranked out features in days and finished a project in 4 months where it actively used in production. Dev's B rewrite is projected to run 3 years. At first business is fine with it but now everyone's patient is wearing thin. Dev B is replacing everything wholesale and making major mistakes like removing complete features just so his version gets pushed. This is affecting everyone. The product is now less useful and limited. It is a major step back. Customers are abandoning it. The churn is very real.

Now, there is this one basic feature that you can find in any major framework. Dev B wants to do it all from scratch. He can't because it is beyond his level of skills and it is obvious he can't do the work. I said, Matt's component did it well. And it was well written (that particular example).

I had to call it out. I said that component was written in a week. Does not use any library while Dev B took 3 weeks trying to figure it out. I am not trying to defend Matt as he isn't here. But this type of stealing credit doesn't sit well. I sort of wish I didn't point out what Matt did and let Dev B figured it out and struggle on his own. If I didn't show the source code,as it was archived, Dev B would have struggled to write it from scratch.

Now, he goes into Matt's repo and takes that old code. There are some new functionalities like making a component support multi-tenancy and provide additional output. This is just an enhancement, adding a new feature to pass some additional arguments. I don't even see it as a refactor. Dev B takes Matt's code and now tells everyone in scrum he is making it more robust, more scaleable. The fact is the basic code has not changed. It has been plagiarized. 2 days prior, he was completely lost on how to approach it. Now, he is the subject matter expert.

Really, this is what people do? Tear others down and uplift themselves. It is affecting everyone because those component rewrites mean everyone has to rewrite all their adaptors and rewrite major sections of the code to support Dev B's version.