Start publishing today create an account now.



How To Survive As A New Developer In A Legacy Project


By: Kurt Guntheroth

There are things you need to understand about your situation

  • You will never be as productive on this project as developers who have been there for the whole project. They have all the secret knowledge it will take you years to acquire.
  • You and your manager need to have the same understanding of the situation or you are going to underperform expectations and get laid off. If you don’t have a shared understanding that you can’t possibly perform as well as the folks who designed this flaky old project, you might as well quit now as wait to be fired.
  • This company has bad design practices. The company made an affirmative choice not to do documentation and run a messy project, and now it’s biting them on the ass. These decisions, made ten years ago, are not your fault, and you don’t need to feel bad about not being very productive.
  • Keeping a legacy project running is not glamorous work. In fact it’s a thankless task. The project no doubt is full of bugs (because it was poorly implemented). In your users’ minds, it will be your fault that bugs didn’t get instantly fixed the moment you were hired. In your managers’ minds, all the excitement is directed toward the new things that some other engineers are working on. You are a necessary evil.
  • Keep your own counsel. Don’t go whining about the low qualify of the legacy code. Don’t go griping about your thankless job. You can know in your head that it’s not your fault, but it’s career suicide to talk about it, except for setting expectations with your manager, and even that must be done gently and not too often.

Your best and only choice is to begin correcting the situation.

  • Start writing documentation.
  • Start writing tests.
  • Refactor the project one function, one member at a time. Take small bites. Test your changes. Don’t be ashamed to refactor the same code more than once. Every time you fix a bug, take time to do a little refactoring. If you’re on the job more than a year, it will pay you back.
  • Managers of this kind of project think refactoring is a waste of time. Don’t tell them what you’re doing, or say it was impossible to do anything else than what you did. Stand up to them. Ask to be reassigned if they keep browbeating you.
  • Keep monitoring how your manager feels about you. You are in an impossible position. Don’t expect your manager to think you’re a hero. Expect your manager to think you’re not working hard enough, despite what you know to the contrary. Keep your resume up to date, and change jobs the moment something better comes along.
  • Legacy projects are the first things to get canceled. Your job goes away when your project goes away. This is another good reason to keep your resume up to date and your contacts warm.

Truth Meter
100% True
0% False

Broadcast message

To advertise here email info[at]

5 most recent comments