re implementation of delayed job