Если в итоге в job передаётся один большой массив, то лучше в момент сбора данных передавать частями, по крайней мере у меня job так лучше отрабатывает. А при обработке одного большого массива 40к элементов, job отваливается по таймауту, а при его увеличении просто зависает, не обрабатывается полностью.
Я думаю это мина замедленного действия , а если данные растут и скоро будет не 40к а 100k или больше, надо код писать сразу готовым к этому, если знаешь что данные растут