Jobs in BullMQ are basically a user created data structure that can be stored in the queue. Jobs are processed by workers. A Worker is the second class you should be aware about. Workers are instances capable of processing jobs. You can have many workers, either running in the same Node.js process, or in separate processes as well as in different machines. They will all consume jobs from the queue and mark the jobs as completed or failed.