This document discusses using Apache Kafka for heterogeneous job processing. It describes how the speaker's company evolved their job processing infrastructure from using a database with cron jobs, to Resque backed by Redis, to a custom system using Kafka. The custom system aims to provide durability and scalability for long-running jobs by decoupling jobs into smaller tasks communicated through Kafka topics. It achieves reliability by ensuring Kafka message replication and allowing tasks to recover from failures.
Related topics: