Live data from Hacker News

You're not a senior engineer until you've worked on a legacy project (2023)

infobip.com

91–100 of 431 posts

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#91

I know a guy who always says you're not senior until you've had to maintain your own project that's become legacy and I agree. Too many developers serially job-hopping every 18-24 months. They all have experience with other people's legacy code but not their own. They're all happy to build something new but if they don't stick around long enough to see the consequences of their decisions, they're lacking critical exp…

I job hop a bunch and a common theme that I have had in my jobs is to go in and understand the legacy, and bring it up to a more reasonable state. It's been interesting having to be the one dealing with someone else's consequences.

I'll sometimes chat with the people who have had to maintain whatever ground work I had laid, and each time around, I get a little bit better at laying down a framework of infrastructure and operations that's better and better at staying sustainable

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#92
For readers, programmers, and engineers stopping in here asking "ok what can I do to better myself here?"

I really recommend "Working Effectively with Legacy Code" By Michael C. Feathers. It is a top notch read, and helps newcomers (and vets alike) approach these legacy systems.

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#93
post #56

Earlier quoted context omitted.

Depends on your definition of interesting? I find improving established code of far more interest and reward than greenfield. Coming to understand what a person was thinking while building something is fascinating. My updates are tangible life improvements to real human beings. That interests me, at least. Greenfield, I have the incredibly stressful job of making all the major architectural mistakes people will compl…

I’m interested in finding the patterns and architecture that prevents those mistakes. I think I’ve found it already.

You've found a way to correctly anticipate new user needs and new technologies years, even decades, in advance?

And you've found a way to completely forestall the non-technical demands that force non-ideal design choices?

You're sitting on a gold mine friend.

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#94
post #19

I once had a manager that was fond of saying: > Experience is what you get when you don’t have any. The only better experience than working on a legacy codebase is working on a greenfield project long enough to watch it become legacy and see the good and bad consequences of past decisions.

And the only better experience than "working on a greenfield project long enough to watch it become legacy and see the good and bad consequences of past decisions" is working on a second greenfield project long enough to see that drastically overcompensating for all the bad things from the first one is not the right solution either :)

Second System Syndrome! :)

https://en.m.wikipedia.org/wiki/Second-system_effect

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#95

Earlier quoted context omitted.

Additionally, reading through other people's code is educational and it also builds self-esteem.

> it also builds self-esteem. Well crafted dig.

I don’t think there was any dig implied. And I will second that it will add to self esteem. Specially during discussions if you have more understanding about the code you will have both better contribution and take away

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#96
post #87

Earlier quoted context omitted.

I’m interested in finding the patterns and architecture that prevents those mistakes. I think I’ve found it already.

Check back in a couple years ;)

I did it. There’s always things that went wrong. But I found the way to minimize it.

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#97

Earlier quoted context omitted.

Additionally, reading through other people's code is educational and it also builds self-esteem.

> it also builds self-esteem. Well crafted dig.

Imposter syndrome is fueled by colleague deification.

It's easy to view smart coworkers as superpeople... until you're reminded that they, on occasion, make dumb human mistakes too.

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#98
post #32

Earlier quoted context omitted.

Haven’t you also often made a moat between yourself and doing literally anything else more interesting at the company?

I have hobbies. The most interesting work is going to be 10% interesting and 90% not interesting. In most cases it will be less interesting than that. Prioritizing "interesting" work means you'll always be exploited by the companies that can sell you on less pay, less benefits, less time off, less respect in exchange for some pittance of perceived novelty. Don't fall for this trap.

tell me you don't have ADHD without telling me you don't have ADHD

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#99
Legacy projects are great! If you don't have any current critical time pressures, you've now got yourself a beautiful puzzle to slowly unfold and understand. If you've got things like git blame annotations turned on you can read commit messages, see past pull requests and really start to get a feel for the people who worked on the project previously and understand how their minds work.

The biggest challenge is of course trying to prevent those feelings becoming contempt, rage and resentment as you see the same mistake repeated over and over again by one person who should know better while they make funny little comments in their commit messages while writing bugs that end up causing data corruption a year down the line.

The trick is mindfulness meditation and definitely not going to LinkedIn, printing out a copy of their face and then ripping it up while screaming.

Re: You're not a senior engineer until you've worked on a legacy project (2023)

#100
post #55

Earlier quoted context omitted.

The best code is the code that doesn't exist.

Certainly the most secure code. Not sure about best.

Better on every axis: security, performance, resource consumption, reliability, verification, documentation...

Code is a pure liability that you accept to get a useful service.

Post reply on HN