| Rewriting an application can mean different things: 1. "We are going to start over from scratch and rewrite the whole thing!" Joel Spolksy famously said to "Never do this!" 2. "We are going to slowly refactor the whole codebase." This can, eventually, lead you to a place where none of the original code is there so it's like a rewrite but much simpler. 3. "We are going to slowly add new places to replace the old system till there is no new system." This is called the "Strangler App" model as described by Martin Fowler (https://martinfowler.com/bliki/StranglerFigApplication.html) Granted, for some reason, it seems that "I retired a legacy system and rolled out a brand new one" seems to look better on a resume than "I refactored a legacy system into a better system." so your YMMV. |
Maybe that's because most jobs I apply for tend to have at least one 'legacy' system laying around that needs some help. But this is somewhat common outside of the startup scene.
Legacy in this case means an app that's maybe 7-10 years old, often written like everything happened on the back of a napkin. Sprawling, inconsistent, monolithic stuff. But not true legacy where it's written in Fortran or something in the 1500s.
At any rate, I think it's worth having refactors on your resume. I know I'd be interested in people who have done it - it's always such an educational experience.