DEV Community

Cover image for Sloan's Inbox: Will working with legacy code hold me back?
Sloan the DEV Moderator for The DEV Team

Posted on • Edited on

Sloan's Inbox: Will working with legacy code hold me back?

Hello there! Sloan, DEV Moderator and resident mascot, here. We've got a new one in the inbox, let's check it out. 🦥

Welcome to another installment of Sloan's Inbox, your go-to place for sharing advice and observations. Whether it's career development, office politics, industry trends, or improving technical skills, we've got you covered. Let's continue our journey of learning and growth together.

As always, I'm here to dive into your questions, comments, and thoughts. So, let's get to it!

Today's question is:

I'm a new developer and have the opportunity to start my first real dev career. The thing is, I spoke to a member of the organization and they let me know that they have a large legacy codebase. I'm curious if this means I'm likely to be working with old, outdated technologies or if there's a lack of documentation or something else entirely. If it is the former and I'm meant to be working with outdated tech, will this put me in a bad spot for the future?

Share your thoughts and lets help a fellow DEV member out! Remember to keep kind and stay classy. 💚


Want to submit a question for discussion or ask for advice? Visit Sloan's Inbox! You can choose to remain anonymous.

Top comments (7)

Collapse
 
ben profile image
Ben Halpern

Honestly, I think you learn more.

Maybe it's something you don't want to be stuck with for your whole career, but for an experience, I think it's worth it.

Collapse
 
renancferro profile image
Renan Ferro

I agree, you work a lot of soft skills like "patience", "resilience" haha ​​but it's cool to see your own evolution! For example, take a structure that you look at the code and think: What was I thinking when I did that?! or What was the person thinking when they did that?!

But it's worth it and it's quite challenging!

Collapse
 
jmfayard profile image
Jean-Michel 🕵🏻‍♂️ Fayard

Also it's a pretty safe career plan if you happen to like doing that.
It's not like there is a fierce competition of developers eager to maintain legacy code
Then that will a big NO to the question "Will working with legacy code hold me back?"

Collapse
 
fjones profile image
FJones

Three main points:

  1. Legacy doesn't necessarily mean "outdated".
  2. Even if it is, chasing the latest trends doesn't make you a better developer - there's a lot to learn from what we used to do, and why we did it. And especially from why we're reworking those parts to be better now.
  3. As long as you aren't stuck maintaining a legacy codebase, the skills you learn working around the limitations of an existing codebase with a history to it are invaluable to your career - you will likely outperform your peers on problem solving, architectural concerns, and optimization in the medium to long term.
Collapse
 
theaccordance profile image
Joe Mainwaring

A legacy codebase shouldn't be a severe detriment to your career, and it's a good place to get some experience under your belt. Plus, there are some opportunities to command niche freelancing rates with legacy technology expertise.

Collapse
 
ruthmoog profile image
ruthmoog

The reality is most established companies will have a lot of legacy code to navigate.
It does make development harder, because often legacy code isn't tested well or has been changed strangely.

The things that will help you are

  • becoming really good at debugging
  • having a good development workflow at the company; testing feedback and peer advice will be so so helpful.
  • learning how to write great (or as good as possible) tests! This is probably the most difficult thing, because you can't always tell what the code is supposed to do, so you'll often need to be a detective.
Collapse
 
ruthmoog profile image
ruthmoog

Also just to say, because another company is a start-up or greenfield, that doesn't mean the code will be well designed.

We're always writing tomorrow's legacy code, just doing the best we can with what we know at the time!