Execute worker first and update progress afterwards