Back to experience

2021

Full-scale backend rework with Onion Architecture

Backend Developer · PPDB Surabaya

  • Laravel
  • Onion Architecture
  • PHP

Overview

In 2021, I led a complete backend rework for PPDB Surabaya — Surabaya's public school admission system — working solo on the backend while the rest of the team continued frontend development.

The existing backend followed a monolithic Laravel MVC pattern that had grown difficult to read, extend, and maintain. I refactored the entire codebase using Onion Architecture, organizing code around Model, Repository, Services, and Presentation layers with clear boundaries between each concern.

This was one of the most formative engineering experiences of my undergraduate years — taking ownership of a large architectural change on a government-scale system and seeing the payoff in clearer code and easier expansion.

Architecture layers

  1. 1Model
  2. 2Repository
  3. 3Services
  4. 4Presentation

Work summary

  • Solo backend ownership

    Handled the full backend refactor independently while coordinating with frontend teammates on API contracts and admission workflow needs.

  • Monolith to Onion Architecture

    Migrated from tightly coupled Laravel MVC to a layered architecture with Model, Repository, Services, and Presentation — each layer with a single, clear responsibility.

  • Improved maintainability

    Restructured core admission logic so new features and workflow changes could be added without unraveling unrelated parts of the codebase.

  • Readable, expandable code

    Established consistent patterns across the backend that made the system easier for other developers to navigate and extend over subsequent admission seasons.