do job func