diff --git a/lib/queue_classic_plus/queue_classic/queue.rb b/lib/queue_classic_plus/queue_classic/queue.rb
index <HASH>..<HASH> 100644
--- a/lib/queue_classic_plus/queue_classic/queue.rb
+++ b/lib/queue_classic_plus/queue_classic/queue.rb
@@ -40,7 +40,7 @@ module QC
             job[:args] = JSON.parse(r["args"])
             job[:remaining_retries] = r["remaining_retries"]
             if r["scheduled_at"]
-              job[:scheduled_at] = Time.parse(r["scheduled_at"])
+              job[:scheduled_at] = r["scheduled_at"].kind_of?(Time) ? r["scheduled_at"] : Time.parse(r["scheduled_at"])
               ttl = Integer((Time.now - job[:scheduled_at]) * 1000)
               QC.measure("time-to-lock=#{ttl}ms source=#{name}")
             end
Port activerecord 6 support from QC::Queue

original commit (<URL>) resolves `no implicit conversion of Time into String`.