Defer background job

Is it possible to defer a background job so that it’s skipped (but still kept in the queue) and reprocessed after a given interval, or maybe change the job to a delayed job somehow? I had a look at the DisableMultipleQueuedItemsFilter gist as an example, but it just cancels the job.

Any insight will help.

/cc @odinserj

Found another snippet at which might work after a little tweaking.

Update: Changing the context.CandidateState to Scheduled in OnStateElection works fine.