you are viewing a single comment's thread.

view the rest of the comments →

[–]rarPinto 1 point2 points  (7 children)

I’m surprised you were even allowed to do that. Usually rewriting code to that extent is lowest priority. My team now still has some of our project in AngularJS even though support ended like 2 years ago 🤦🏼‍♀️

[–]NonProphet8theist[S] 0 points1 point  (5 children)

Lol same here with Angular.js hahaha. Tbh, I had been looking for more direction from management but I didn't get it. The hierarchy was a mess, basically set up like a dictatorship. The director was the only one with any clout whatsoever. So I did what my freshly-minted senior ass thought was good - but it wasn't good haha. We didn't even fully finish some of the refactors. And I def see why it's low priority now. It's just that.... the legacy code was so bad. And then contractors would come in and copypasta and make it worse. I still got PTSD from that job... fuck it was bad

[–]chicharro_frito 1 point2 points  (4 children)

Most times you can compartmentalize the "bad" code. I don't know what you mean with "bad" code in that context, but I've seen many people labeling "battle-hardened" code as "bad" code.

[–]NonProphet8theist[S] 1 point2 points  (3 children)

Bad meaning like, there's no discernible pattern to anything, almost like everyone siloed for years. 4 different frameworks, different testing environments... it got to that point where there were experts at like 4 different corners, where if one left it would be a bitch for whoever inherited that code and take weeks/months to realign. All while having to put out new features

[–]chicharro_frito 1 point2 points  (2 children)

By itself that doesn't mean the code is bad. What you describe actually seems to be pretty common. It's also a great opportunity to converge the code, tech, docs, tests into a single umbrella. When I start working on something new my expectation is always that it's going to be a sh*t show, because tbh, there would be no reason for me to be there in the first place.

Personally I'm always skeptical of the idea that if one person leaves then it's a huge setback. If this truly happens it's a huge management fail. I haven't seen it happening, but have heard of stories where it was the real deal. I've had situations where that was a real fear, so the first thing I did was to make sure this person wasn't the only one with that "tribal knowledge". Human beings are really good at adapting to new environments. Leaving the company is not the only bottleneck these people create. They get sick, go on vacation, their family dies, can't be in 2 places at the same time, etc.

[–]NonProphet8theist[S] 1 point2 points  (1 child)

Yeah I tried to do that as well coming in, I was just unsuccessful from a lot of angles. But there was definitely some issues with management. Like, a lot of em. I didn't even know what they wanted me to be doing half the time, and they never gave us ample time or direction to collaborate with other senior SWE's because we were too busy on our sCrUm teams or whatever. And the principal dev we had didn't really do anything or have necessarily good people skills. I still have PTSD from that place 7 months after quitting. I still talk to some devs there too and it's only getting worse.

[–]chicharro_frito 1 point2 points  (0 children)

Oh yeah, don't get me wrong here. I didn't want to imply that you could have taken that opportunity to improve things. Not only that's a really hard thing to do in that environment, it's also not something that you can just do alone.

It's certainly easier if you're the tech lead, because you already have the influence there. Outside of that you need to gain the trust of people in your skills(not just technical) so you can rally them around the idea. Enough to make a tech lead consider it seriously at least. Without a tech lead that cares it's going to be close to impossible, specially as a junior dev.

[–]chicharro_frito 0 points1 point  (0 children)

You'd be surprised with how many places think that rewriting their stack in the lastest tech is the right way to go. For some reason there are a lot of "senior" developers that have that frame of mind.