3 ms·
What is your true objective? What will you be evaluated on? Focus and think of any other improvement you could do. It sounds like management doesn’t think the
by Curzel 4y ago
What is your true objective? What will you be evaluated on?
Focus and think of any other improvement you could do.
It sounds like management doesn’t think there is an actual problem to solve, so I wouldn’t necessarily pick refactoring or rewrite as the hill to die on.
If you go the refactoring route, i have little advice:
0. Clean up the database, it will immediately impact performance and make management happy
1. Find vertical (feature-wise) or horizontal (layer-wise) architectural boundaries and split the code base into module, separated libraries. This will be an ongoing process for a long while.
Do it by touching as little code as possible - this is pure scaffolding, actual refactoring comes later.
2. Stick with PHP, at least until results from #1 aren’t good enough.
3. Use testing as a tool to pressure management, it works a surprisingly large number of times
4. Rewrite one feature/page at a time, once results from #1 indicate a good candidate.
It might be a good idea to introduce a new language at this point, or even some form of micro services (if it makes sense).