We Migrated 1 Million Records Without Taking the Platform Offline

ProgressTeaching's platform was buckling under growth. We rebuilt the engine while the plane was flying.

Client: ProgressTeaching Year: 2024 Category: Education
1M+
Records Migrated
40%
Faster Dashboards
0
Downtime
We Migrated 1 Million Records Without Taking the Platform Offline

The Problem

ProgressTeaching’s education platform was choking on its own data. Dashboards took 8 seconds to load. Teachers were abandoning the appraisal workflow because it was too slow. The SQL database couldn’t handle the query complexity of trust-level reporting.

The platform wasn’t broken—it just couldn’t keep up with the schools that relied on it.

The Stakes

Schools don’t switch platforms easily. If ProgressTeaching couldn’t improve performance, districts would start looking for alternatives. The churn risk was real.

Our Approach

We chose a zero-downtime migration strategy. Schools couldn’t afford interruption—the platform was in active use across multiple trusts.

Hasura gave us instant GraphQL APIs with real-time subscriptions. Next.js provided server-side rendering for dashboard-heavy workflows. Postgres gave us a cleaner data model for educational relationships.

The migration ran in parallel: old system stayed live while we validated the new one. Three weeks of dual operation, then a clean cutover.

What We Built

  • Hasura GraphQL layer for real-time API access
  • Next.js frontend with optimized SSR/CSR transitions
  • Postgres migration from legacy SQL schema
  • Real-time analytics for school-wide and trust-level insights
  • Role-based access control for teachers, leaders, and administrators

The Results

  • 1M+ records migrated with zero downtime
  • Dashboard load times reduced 40% (from 8s to under 5s)
  • Real-time feedback updates via GraphQL subscriptions
  • Component-based UI system for faster feature development

What We Learned

The migration was the easy part. The hard part was getting teachers to trust the new system. We ran training sessions, created video guides, and had support staff on standby for the first week.

The lesson: technical migrations aren’t complete until the humans using the system trust it again.

Technologies Used

FullStack Hasura Next.js GraphQL Migration

Ready to accelerate your digital transformation? See how we can help.

Request a Consultation