Worker Secluding algo

I need your help, We need algorithm for managing staff of the software company. Where work duration will be in minutes. Please check it. And let me know if you find any issue.

I am working on the project, That will generate available time slot according to selected service. We have following resource and condition.

Resource : Shop, Worker(Worker will be associate with a shop and will be expert in any one Specialty). Specialty(Type of skill that will be perform by worker) . Service (Combination of speciality , Speciality should have some time duration)

User will select Shop, then select Service(user can select multiple service). Then select the particular date. We need to find available time slot for selected services.

Ex > We have two worker in shop, Worker1, worker2, worker3. Worker1 is expert in designing, worker2 is expert in development and worker3 is expert in testing. designing (It takes 30 minutes), development (30 minutes) and testing (45 minutes) are the speciality with some duration. And we have 3 services, Service1 (designing + development), Service2(designing+testing), Service3(development+testing). So Service1 will take 30+30 = 60 minutes , Service2 will take 30+45 = 75 minutes , Service3 take 30+45 = 75 minutes.

Now user select the Service1 and service2. Then we need to generate the time slot take will cover both service in a single time slot. the time slot should be generate in 60 + 75 = 135 minutes interval. Like. 8:00 - 10:15 or 10:15 - 12:30 or 12:30 : 2:45 or 2:45 - 5:00 etc;

The time should be depend on worker availability for selected services.

Thanks in advance. Looking forward your reply.