Here’s a quick checklist of things we’d need to worry about for an application like Market Spread if we were to start from scratch: Creating a robust communication layer between communicating processes Ensuring message replay occurs when a message fails to process.