Sagar Patel

I build automations and data tools for a K-12 online learning provider. I test them before they go live, and I keep a record of what went wrong.

Lab Operations Specialist

Data, automation and internal tools

Booking tutoring in the student's own clock

Students can ask for a one-to-one video tutoring session. My booking engine picks a tutor and a time that suits the student's own time zone, sends the calendar invitation within seconds, and hands anything it is unsure about to a staff member.

  • Automation

Forecasts that keep score

Every Friday I predicted how much student work would still be waiting to be graded on Monday, and wrote down in advance what result would prove me wrong. On Monday I checked, and kept a scorecard of hits and misses.

  • Forecasting

Messages that check their own times

Before every tutoring session, the student gets a message telling them the date and time. I wrote a program that drafts these messages and double-checks the time in the student's own time zone, so I never send a student the wrong hour.

  • Automation
  • Data quality

Sorting courses by their neighbours

When a new course is added, someone has to decide which team of subject specialists will grade its students' work. Instead of guessing from words in the course title, my program finds the most similar existing courses and lets them vote.

  • Tools
  • Data quality

Proving a copy matches the original

My team relied on copies of the platform's lists of schools, courses and lessons. I built a way to prove that a copy matches the original exactly, and to explain every difference when it does not.

  • Data quality

A grader's toolkit beside the work

Staff grade student assignments on a web page. I built a small add-on panel that sits beside that page and puts the answer key, the student's other records and a chart of the grading workload in one place.

  • Tools

Running a team on a spreadsheet-database without losing data

My team runs its daily work on a shared, spreadsheet-like database. These are the safety rules I use so that changing it never loses or breaks anyone's data, and so the emails it sends to schools are right.

  • Tools
  • Data quality

Scheduler sandbox

Made-up dataFull screen

A request comes in. The engine books a tutor and a time in the student's own clock, or sends it to a person with a plain reason. Today in the demo is Mon 5 Oct; bookings open for two weeks.

Up to three times, in your own clock

What the engine did

  1. Request in: Algebra 1, 2 preferred times, zone Halifax.
  2. Zone: Halifax, UTC-3 today. Every time is turned into UTC before it is compared.
  3. Tutors for Algebra 1, fewest bookings first: Kesi (4 booked), Delphine (5 booked), Galen (5 booked), Jory (5 booked).
  4. Time 1: Mon 12 Oct, 6:00 pm your time, stored as 2026-10-12T21:00Z.
  5. Kesi: not working then (2:30 am Tue in Kolkata).
  6. Delphine: not working then (10:00 pm Mon in Lisbon).
  7. Galen: already has a session then.
  8. Jory: not working then (3:00 pm Mon in Denver).
  9. Time 2: Tue 6 Oct, 10:00 am your time, stored as 2026-10-06T13:00Z.
  10. Kesi: not working then (6:30 pm Tue in Kolkata).
  11. Delphine: not working then (2:00 pm Tue in Lisbon).
  12. Galen: not working then (6:00 am Tue in Los Angeles).
  13. Jory is free. This is the booking.
  14. Invitation written twice: Tue 6 Oct, 10:00 am for you in Halifax, Tue 6 Oct, 7:00 am for Jory in Denver.

Times and tutors tried

Time 1 Mon 12 Oct, 6:00 pm, stored as 2026-10-12T21:00Z

Time 2 Tue 6 Oct, 10:00 am, stored as 2026-10-06T13:00Z

Choose a slot to see its reason.

Result

Booked, invitation sent

Algebra 1 with Jory, Room N1.

Your copy, Halifax

Tue 6 Oct, 10:00 am

UTC-3

Jory's copy, Denver

Tue 6 Oct, 7:00 am

UTC-6

Stored once as 2026-10-06T13:00Z. Each reader sees it in their own clock.