updated background job handling