This is a version of the issue described in https://ivolunteer.com/multiple-signups-same-time-slot-same-volunteer where a volunteer may sign up for overlapping time slots.
One easy solution to this problem I'd like to see implemented is to restrict number of slots per column. This would let you design your event with the task listed in each row and the shift listed in each column.
Just a feature request, I understand it may not be top priority. Thanks!