feat(jobs): implement background sync

Closes #7