implement bg jobs, but not test it