JobFactory refactoring