Active Job framework in Rails helps run tasks in the background. You define a job class inheriting ApplicationJob with a perform method. Calling perform_later enqueues the job with arguments. A background worker picks the job from the queue and runs perform with those arguments. After perform finishes, the job is removed from the queue and optional callbacks run. This lets your app do work later without blocking user requests. perform_now runs the job immediately without queueing. Variables like job arguments and queue state change step-by-step as the job moves from enqueue to execution to completion.