Не должна она отработать в контроллере. В этом то и смысл асинхронного выполнения. Он выполняется sidekiq-ом. И ошибка должна быть в логах sidekiq-а. В контроллере лишь создаётся задача для выполнения.
Ошибка: NameError: uninitialized constant DeliveryWorker
Где вызывается эта ошибка?