refactor mongo job to allow for multiple job types