Case Study

Migrating an EdTech Platform from Monolithic to Microservices Architecture

EdTech
Industry
Education / EdTech
Services
Architecture Design, Microservices & API Development, Backend Development, Frontend Development, DevOps, Quality Assurance
Company Size & Location
Education Platform Provider & India
Technology Stack
PHP (Laravel 8) · Angular · Android (Kotlin) · MySQL · Redis · Laravel Sanctum (SPA) · Laravel Passport (OAuth2) · Socialite · JWT · Bugsnag · Raspberry Pi · AWS
Team
Solution Architect · Backend Developers · Frontend Developers · Mobile Developers · DevOps Engineer · QA Engineer
Timeline
Project-Based Engagement
01

Client Vision

When Covid-19 accelerated the shift to digital learning, the client’s platform saw a surge in users and became their primary distribution channel - but it had been built incrementally over five years and was never designed for that kind of scale. They wanted to migrate the monolith to a service-oriented (microservices) architecture for scalability and performance, transform it into an open, integrable platform that could deliver and consume services with partners, add support for multiple regional languages beyond English, and streamline the offline model running on Raspberry Pi.

02

Challenge

Re-architecting a five-year-old monolith into a microservices platform is hard enough; doing it so the same application runs both in the cloud and on a tiny offline Raspberry Pi staying in sync between them is harder still.

A Monolith Not Built for Scale  

The platform had grown incrementally over five years and wasn’t designed to handle the surge in load it now faced as the primary distribution channel.

Dual Deployment: Cloud + Offline Pi  

The same application had to run both in the cloud and on a Raspberry Pi for offline use - a significant architectural challenge, especially given the Pi’s limited ability to load the full application.

Online / Offline Data Sync  

Keeping data consistent between the online and offline servers required a reliable synchronization mechanism.

Single-Language Limitation  

The application only supported English and needed to support multiple regional languages.

Closed Architecture  

As a monolith, it wasn’t open or integrable; becoming a platform meant exposing secure services to partners.

03

Solution

Focaloid migrated the platform to a fully decoupled microservices architecture retaining and refactoring the PHP backend, rebuilding the frontend in Angular, and engineering it to run lean in both cloud and offline modes.

Microservices with Laravel APIs  

Re-architected the application into microservices with APIs in PHP Laravel, retaining the existing PHP backend while refactoring the code for readability and maintainability.

Rebuilt Angular Frontend with Multi-Language Support  

Re-developed the frontend in Angular, using a key-value approach to translate the customer interface into multiple regional languages.

Shared APIs for Web & Mobile  

Developed common APIs consumed by both the web and mobile applications.

Lean Offline Deployment  

Streamlined the Raspberry Pi offline deployment so only the necessary services and databases are installed — making the app light enough to run offline.

Sync Module for Consistency  

Built a sync module to keep data consistent between the online and offline distributed systems.

Secure Partner APIs  

Used JWT token-based security to expose the APIs to partners securely, with OAuth2 (Passport), Sanctum, and Socialite handling authentication.

04

Our Approach

Focaloid approached the migration incrementally - decouple, refactor, rebuild the experience, and engineer for dual cloud/offline operation.

Architecture & Decoupling  

Designed the move from monolith to a fully decoupled microservices architecture, defining services and shared APIs.

Retain, Refactor, Rebuild  

Retained the PHP backend while refactoring it for maintainability, and rebuilt the frontend in Angular with multi-language support.

Engineer for Cloud + Offline  

Streamlined the Raspberry Pi deployment to only essential services and databases, and built the online/offline sync module.

Secure & Validate  

Secured the partner APIs with JWT and validated the platform through QA.

05

Result / Impact

For the Client

  • Fully decoupled microservices architecture, light enough to deploy in offline mode
  • Independent service scaling based on usage, improving performance under load
  • ~30% lower AWS infrastructure cost through usage-based service scaling (estimated)
  • Reliable online/offline data consistency via a dedicated sync module

For the Platform

  • Open integrable platform exposing secure APIs (JWT) to partners
  • Multi-language support extending reach beyond English
  • Shared APIs serving both web and mobile from a single source
  • Cleaner more maintainable, refactored codebase

For the Business

  • A scalable platform able to handle surging, Covid-driven demand
  • Lower infrastructure cost through efficient, demand-based scaling
  • A partner-ready platform that can both deliver and consume services

06

Why It Matters

When a learning platform becomes the primary way students reach their education, scale stops being a nice-to-have - it’s the whole game. A monolith that buckles under load, can’t reach offline learners, or can’t open up to partners limits not just the product but the people depending on it. By migrating to a fully decoupled microservices architecture that scales by usage, runs lean enough for an offline Raspberry Pi, and exposes secure APIs to partners, Focaloid turned a five-year-old monolith into a modern, scalable, integrable platform - one that performs under surging demand, reaches learners online and offline, and costs less to run. That’s how you scale learning without leaving anyone behind.

Let's build

Outgrowing a monolith that wasn’t built for scale?

We migrate legacy applications to decoupled microservices - scalable, partner-ready, and even deployable offline refactoring as we go so your platform performs under load and costs less to run.