Quando você precisar usar observadores com DJ, não chame métodos de instância do observador de forma assíncrona. Você precisa fazer assim:
class UserObserver
def after_save(user)
self.class.do_something_with user
end
protected
class << self
def do_something_with user
some_hard_action_on_user user
end
handle_asynchronously :do_something_with
end
end
DJ provavelmente teria um tempo interessante serializando e desserializando uma instância de observador, especialmente considerando que observadores são classes singleton.