use job objects internally