adding functionality for background jobs