Actually that should also be possible, since CanCan allows additional conditions to be passed to the can? method: https://github.com/ryanb/cancan/wiki/defining-abilities#hash-of-conditions
So something  liken 'can :edit, JobOffer, :responsible_user_id => user.id' in the ability.rb should restrict the editing to JobOffers to the corresponding responsible user.