Case Study

Tutor Scheduling Dashboard

Creating a collaborative platform that enables teams to monitor sessions, resolve issues in real time, and deliver uninterrupted learning experiences.

Industry
Education
Client
BYJU's
Role
Sr. Product Designer
Tutor Scheduling Dashboard — session list with materials status, tutor assignment, and detail panel
Problem Statement

How might we give Tutor Managers complete, real-time visibility into sessions — so they can reschedule, track, and communicate without switching between multiple disconnected tools?

Project Goals

What we set out to solve

  • Enable admin to track live and upcoming scheduled sessions
  • Empower admin to resolve critical issues in a faster way during live classes
  • Enable tutors to run and report live sessions smoothly
  • Enable content team to resolve material-related issues beforehand
  • Enable admin to assign/replace tutors smoothly in upcoming sessions
  • Establish communication between admin and other teams
User Flow

Mapping how the system works

System maps of the current workflow — how Tutor Ops manages scheduling, content checking, batch allocation, and live sessions.

Previous Flow
Previous flow map — Courses to Sub Batches to Upcoming Sessions to All Sessions to Live Sessions

Previous flow: Courses → Sub Batches → Upcoming Sessions → All Sessions → Live Sessions

System view — Current & Future

Across scheduling, tracking, and content teams, one pattern stood out: reporting, reassignment, and session distribution were all manual.

Redesigned Flow
Redesigned flow map — centralised Tutor Operations with parallel tracks for allocation, scheduling, live sessions, and reporting

Redesigned flow: Centralised Tutor Operations with parallel tracks for allocation, scheduling, live sessions, and reporting

Linear, sequential flow with no parallel tracks

Parallel tracks: allocation + scheduling run simultaneously

No dedicated role separation for Tutor Ops

Named owners (Sudhir, Shashi, Aniket) per track

Content checking and scheduling handled ad-hoc

Content Checking as a formal step with clear SLA (15 days)

No owner for reassignment escalation path

Escalation paths clearly defined at each node

User Interviews

What we heard from the Ops team

A structured questionnaire on tutor assignment, rescheduling, and live tracking — answered by the ops team, tutor managers, and admins.

Team & Roles
How is the allocation of responsibilities and roles in the tutor ops team for scheduled and live sessions?
Total 20 people — 4–5 for fresh sub-batch to tutor mapping, 4–5 for scheduled sessions & reassignment, and 10 for live class tracking.
Do you have a separate dedicated team for monitoring scheduled and live classes?
10 people check live session status and coordinate with tutors. They manage session division manually. No specified system for monitoring. “We would like to have something more organised in future.”
What are the responsibilities of tutor managers? Are all managers also involved in tracking sessions?
No — there is a separate team to track live sessions. Tutor Manager’s role is to track performance of their tutors and handle leave management.
Scheduled Sessions & Content
What kind of issues arrive for scheduled sessions? How do you fix each kind?
Mostly reassignment and un-tagged material. Manual reassignment is done by the team; mails are sent to the content team for missing materials.
Do you have a dedicated team for checking tagged materials and assigned tutors?
Only for tests. Content checking happens 15 days prior. If materials are not tagged, email is sent to the content team with channel IDs. Everything is manual for now.
How do you distribute sessions for checking and fixing issues?
Requests from tutors go to an Excel sheet and are addressed by the team manually. Excel is used to track status and communication. No set system for distributing issues.
Does a session stay on the scheduled page after it goes live?
Yes — it stays at both places on that day.
Live Session Monitoring
What kind of issues arrive during live sessions? How do you communicate with tutors?
1. Technical issues 2. Incorrect tutor assignment (eligibility, availability) 3. Last-minute reassigning (leave, tech issues). Communication happens via phone and WhatsApp.
With 5,000 sessions running per day, how is monitoring distributed?
Some members are reserved for reporting, some communicate with tutors. One person checks from the start, another from the middle and end. Completely manual distribution.
How is live session status triggered — by the tutor joining or from backend?
Once the tutor joins the session, status is triggered as “joined.”
How do you keep track of whether a session is running on time?
“We can’t track whether a session is overtime or not. We can only track whether the session has started or not.”
How do you manage a tutor’s next session in case of delays or back-to-back sessions?
If the tutor hasn’t started the session post 5 minutes of session time, we assign another tutor immediately.
What is the procedure to resolve in-class technical issues?
Tutor communicates via WhatsApp (issue with channel ID) and phone calls. We can’t track if the tutor drops out — the system shows status as “in-progress” even if the tutor has dropped off, unless the tutor manually ends the session.
What happens if a tutor drops out mid-session and is unable to join back?
We coordinate with the first tutor to continue. In case of a technical issue, a new tutor is reassigned. The session is extended for the missed time.
Reassignment
How do you handle reassigning issues? Who does re-assigning in case of cancellation?
There is a team who looks after scheduled sessions. All sessions are scheduled 3 days in advance.
Interview Findings

What the interviews revealed

Across all three teams, the pattern was consistent: no single source of truth, every critical action manual, and growth outpacing the system.

Tooling
Everything runs on Excel
Tutor requests, issue tracking, session status, communication — all managed through spreadsheets with no central system or automation.
Monitoring
No visibility into live sessions
If a tutor drops out mid-session, the system still shows “in-progress.” There is no way to detect or alert on overtime, dropout, or delays in real-time.
Process
Reassignment is entirely manual
Every reassignment — whether due to leave, technical issues, or cancellations — is done manually, via phone and WhatsApp, with no in-product workflow.
Process
Content checking is disconnected
Content is checked 15 days in advance. If something is missing, an email is sent manually to the content team with channel IDs. No automated alerts or in-tool flagging.
Structure
Role boundaries are unclear
Tutor Managers, Ops team, and Live tracking team have overlapping but poorly defined responsibilities — leading to confusion and dropped tasks.
Communication
WhatsApp is the real product
All real-time communication between tutors and the ops team happens over WhatsApp and phone calls — entirely outside the platform.
Core Insight

There was so much clutter among pages and proper organisation of flow was missing. Since BYJUs is expanding rapidly, a stable, digital-first system was the need of the hour — every single process I uncovered was being handled manually, in Excel, or over WhatsApp.

System View

Current system vs Future state

Mapping the tracker system revealed how fragmented and manual it was — every issue type, from dropouts to untagged materials, had no structured path to resolution.

Current system versus future state — full tracker system map covering every issue type and its path to resolution
Post Ideation

Discussion with Content & Dev Team after wireframes

After wireframes, I aligned with content and dev teams on feasibility — several decisions were revised based on their input.

Simplified & Confirmed
Session Delay Tracking
Content team flagged that session delay data is unreliable as they don’t use it. Decision: Show number of slides the tutor has completed instead. Session status buckets simplified to only Critical and Running Smoothly.
Page Break → Filters
Ops team confirmed there will be one person per course tag. Decision: Replace page break with filters — more flexible and aligned with actual team structure.
Filters to be Added
The following filters will be included:GradeCourse TagSyllabusSession StatusSession Start StatusTutor Assigned / Unassigned
Overview Table
An overview table will be created to surface total numbers at a glance — giving ops team a quick summary view before drilling into individual sessions.
Bulk Upload in Upcoming Sessions
Bulk upload options in upcoming sessions should be provided, consistent with the current system’s capability.
Descoped
Assigning TAs — Not Feasible
Bulk assigning of TAs won’t be possible. Adding TAs into a live classroom also wouldn’t be possible. Descoped from the current phase.
In-classroom Notify System — Not Helpful
Building a notify system inside a live classroom won’t be that helpful — it’s better to just call the tutor directly. Removed from scope.
Deferred to Later Phase
Upcoming Sessions — Deferred
Upcoming sessions can be placeholders for now — this feature depends on TMS Phase 2 delivery.
Internet Status — 30-second Auto Refresh
Live classroom will auto-refresh every 30 seconds — intentionally not more frequent, so the ops person can comprehend all sessions on the page before the next refresh. Continuous updating would make it too difficult to read.
Impact Summary

No single view of all sessions across tutors

Unified scheduling dashboard for all tutors & sessions

Rescheduling requires manual coordination via email

One-click rescheduling with automated notifications

No automated cancellation tracking

Real-time conflict detection and resolution

Student performance data disconnected from scheduling

Session performance linked to student profiles

Can’t detect mismatched or conflicting sessions

Bulk session management for large tutor bases

Visual Design

Key screens & interaction patterns

01 · Live Sessions Dashboard

Real-time session tracking with status buckets

  • Live view shows all sessions filtered by grade, syllabus and session type
  • Sessions are bucketed into On Time (395), Yet to Start (694), and Delays (258) — giving the ops team instant signal on where attention is needed
  • Clicking any session opens the detail panel on the right with tutor info, TA status, and reassign controls
Live Sessions Dashboard — All Sessions with status buckets, filters, and session detail panel
02 · Scheduled Sessions

Upcoming sessions with tutor assignment & material status

  • Scheduled view shows sessions 3 days in advance
  • Each row shows board, grade, subject, language, session type, materials (slides + requisites with green/amber dots), and tutor assignment status
  • The right panel exposes session details, spotlight control, Teaching Assistants list with add/reassign actions, and material tagging confirmation
Scheduled Sessions — session list with materials status, tutor assignment, and detail panel
03 · Reassign & Notify Flow

Inline reassign action on Teaching Assistants

  • The three-dot menu on any TA in the panel reveals Reassign and Notify actions inline — no modal, no page navigation
  • Reassigning directly from the session detail panel keeps the ops person in context while resolving the issue
  • This pattern emerged from user research showing that context-switching between screens was the biggest source of error
Reassign and Notify — inline TA action menu in session detail panel
Impact

Success Metrics

21%
faster live issue resolution — faster monitoring and reassignment cut resolution time
32%
faster tutor replacement for upcoming sessions
+6%
increase in completion rate — better tracking and controls boosted completion