Initial prototype

  def perform
    
    raise SyncNotReady, "Synchronization is still working" unless Sync.ready?

    compile_reminder and dispatch_reminder

    Delayed::Job.enqueue Mail.new, {run_at: Mail.schedule, queue: 'mail'}

  rescue => e
    log_error(e)
    raise $!
  end

Что думаешь?