Traditionally we look at time-based business rules like invoice reminders or making a customer preferred as batch jobs. We've always done it that way so why bother changing it? Simply put: the more customers and orders that are added to this system, the longer it will take the batch job to run. Your company's success can be your batch job's undoing. With messaging at hand we can start predicting the future by sending a message to our future selves.
In this talk, I show you how to leverage durable timeouts with messaging and the saga pattern to become the TimeLord in your business domains. You can finally get rid of your batch jobs. To satisfy the Doc Brown in all of us we'll dive into mad scientist implementations of durable timeouts in RabbitMQ and AmazonSQS. Knock. Knock. When's there?