refactoring , created separate class for different operation on job