You would have a few options, you could have a service in Azure that handles this. The advantage here is that you can deploy services in the same region as your tenant for fast performance.
Another option would be to create your timer job solution as a compiled executable and use a central server in your environment as a "scheduling hub". Here you would configure a windows scheduled task the runs your executable on your defined schedule.
You could combine the 2 options by having a windows server in Azure executing your executable on schedule.
In our scenario, we have a central server on prem that executes custom executables on schedule.