How To Handle Legacy Code The Correct and Career Rewarding Way
Include the inspect-and-adapt cycle to get the aha-effect
--
Let’s talk about your motivation as a developer regarding maintenance and bug-fixing tasks. Honestly, it’s not the most exciting work, and these tasks have a bit of a bad rep. Be sure these tasks reward you pretty darn great.
Here’s the deal: Avoiding these tasks can seriously limit your growth as a developer. Sure, at first, they might seem like a time-sucking annoyance.
But from what I’ve seen, they’re not just worth the time and effort, they actually boost your learning in software development and level up your problem-solving skills.
In the world of agile development, maintenance is super important. If you ignore it, you’re not just putting the future of your project in jeopardy, but you’re also dragging down your colleagues' morale.
As if you are sawing off the branch you are sitting on.
Why It Has Such a Bad Reputation
What should I care about this garbage code? That was done by someone else!
I’d rather do the cool new features.
That’s how it often sounds, or something similar when maintaining old software pieces. Even in my head from time to time. Then I try to remember why to go for it and instantly get turned off by the old code.
“Legacy isn’t sexy.” — Me
If you think it will hardly benefit your development career.
Wrong thinking!
It doesn’t matter whether the business management or the challenging (and therefore instructive) task is everyone benefits from it, and I think it’s worth clarifying this point in more detail.
The Huge Gap Between Maintenance and Bug-Fixing
First of all, it is important to distinguish between maintenance and bug fixing.
Bug Fixing
Did you discover a bug in existing software? Fix it directly or at least open a ticket. This is a mandatory task for every team member without exception.