It seems as though you would generate the available time slots for each technician then it would be a matter of displaying the intersecting time slots to the user as a single time slot.

Definitely something that would be quicker in the browser rather creating database entries though.

Is that similar to how you are setting it up?