Ben Petersen's Software Development blog

Legacy apps are not fun to work in, but it can be healthier by applying best practices and moving forward.
code | 2017-05-25
Tags: Software Legacy Applications Development

Applying best practices to lecacy apps, like component architecture, definetely helps be more motivated to work on those systems.

For me working in legacy code, not using the latest and greatest things. Companies often make an effort because of financial advantage and because they hear what developers are interested in them and it would help us be happier at work.

Usually, all companies need to do is “Hey look, we’re listening, we’re looking this way, it’s on the road map and there’s a few things we need to do to get there”. You don’t need to be on the bleeding edge, especially in a production app, but avoiding being stagnant is important.

“It doesn’t matter how much you’re being paid, if you’re unhappy at work, it doesn’t matter what technology your using, it doesn’t matter how much you like your co-workers, if you’re frustrated at work there

Legacy applications usually need to be supported and some developers live and breathe by keeping production apps up and running, those developers are crucial! Every developer on your team can’t be on the bleeding edge, if they love doing that then great!

Technical stack is more important than money, if it doesn’t fit my vision of what technology stack or what kinds of applications I want to develop, then I may take a lower salary in hopes of a good fit. There are companies that I wouldn’t even touch, no matter how much they pay me. I don’t think I’d ever move backwacks in terms of salary, but finding a good fit technology wise is crucial, it has to be a match.

I’ve had employers hire me because I’m a javascript developer then turn around and ask me to support quite a number of .NET legacy applications. It was quite a bit different than what we talked about, it’s a bad situation, kind of like a bait and switch thing. Disappointing, confusing, “I thought we’d be heading here”, and “How did this get pulled out from under our feet?”

Engagement is important here, I want to be able to move the project forward and not just fix bugs.