add job functionality