updated background job infrastructure