3 ms·
This sounds like solid advice. A rewrite would be a world of hurt, particularly if you don’t have buy-in from the existing team. Regarding the team, junior the
by garren 4y ago
This sounds like solid advice. A rewrite would be a world of hurt, particularly if you don’t have buy-in from the existing team.
Regarding the team, junior they may be, as he says, but they’re rolling with a multi-mullion dollar product. If they’re keeping the product going and continuing to add business value, then they’re doing something right. Their engineering practices might be questionable, but they seem to have a solid product.
However, getting testing in place is going to be a challenge. I’ve encountered systems that sound similar to this one (perfectly functional, zero discernible architecture, not remotely designed with any kind of testing in mind.) It’ll be difficult to convince the suits that introducing testing has any real value when you’re starting from zero.
The first thing than comes to mind is the strangler fig pattern. Sounds like a useful idea in this instance.
> …an alternative [to a re-write] is to gradually create a new system around the edges of the old, letting it grow slowly over several years until the old system is strangled.[0]
[0] https://martinfowler.com/bliki/StranglerFigApplication.html https://martinfowler.com/bliki/StranglerFigApplication.html