2) Get them off of the very expensive & complicated AWS stack
We've migrated staging and testing to a DO Droplet with DO MySQl/Redis stack.
Moving to DO with plenty of headroom is a 10th of the cost of AWS!
3) After that, not sure at this stage. Most likely we will refactor low hanging fruit.
A ground up rewrite would require knowing all of the business logic. We'll just begin cleaning it up and getting it into a manageable state. We don't know what we don't know yet! :-)
I'm in a similar situation to yours, and I've kind of settled on a similar approach: put out the most pressing fires and reassess 3-6 months down the line. At first I had thoughts to refactor but now I just don't want to deal with the complexity, not to mention I have end-users pressing me. I'll have to tolerate the spaghetti, but at least make it produce correct output.
1) Fix the issues with email notification logic
2) Get them off of the very expensive & complicated AWS stack We've migrated staging and testing to a DO Droplet with DO MySQl/Redis stack. Moving to DO with plenty of headroom is a 10th of the cost of AWS!
3) After that, not sure at this stage. Most likely we will refactor low hanging fruit.
A ground up rewrite would require knowing all of the business logic. We'll just begin cleaning it up and getting it into a manageable state. We don't know what we don't know yet! :-)