Overview
VISION+ launched on January 15, 2020 as a premium digital entertainment service for the Indonesian market. It carries live national TV channels, TIMNAS national football team matches and other sports, video-on-demand, and exclusive original series across romance, horror, and comedy — delivered through mobile apps and the web across a wide device range.
I worked on the web client: rebuilding it from scratch and stabilizing what the legacy codebase left behind.
The Legacy Problem
The existing web app had accumulated years of patches. Two symptoms mattered most:
- UI drift — near-identical elements implemented several different ways, so every new feature meant re-solving solved problems.
- A defect backlog that resurfaced in UAT — over 50 critical issues were still open when testing started, and they were the main source of support tickets.
Rebuild
I rebuilt the application on Nuxt.js + Vue 3 + TypeScript + Tailwind CSS, with a modular reusable component library as the foundation rather than an afterthought.
Typed props and a single source of truth per UI pattern meant feature work became composition instead of construction. Development cycles ran about 25% faster once the library stabilized.
Authentication Under Live-Event Load
Auth is where an OTT platform actually fails. A TIMNAS match doesn't produce steady traffic — it produces a spike, minutes before kickoff, of users who need to log in right now or churn.
I built login, register, and forgot password from scratch and treated match day as the design constraint, not an edge case: predictable error states, no blocking client work on the critical path, and behavior verified against live-event traffic patterns before broadcast. The flows held through TIMNAS matches without a login outage.
Content Discovery
Built a product-list banner component for the homepage to surface highlighted content — the primary entry point into the catalog, so it had to render fast and degrade gracefully on slow connections.
Stabilization
During UAT I triaged and resolved 50+ critical legacy defects. App stability improved roughly 40%, which showed up directly as reduced support ticket volume.
Responsive & Performance
Layouts and asset loading were tuned against Lighthouse reports across mobile, tablet, and desktop — the device spread VISION+ actually ships to. Measured improvements translated to about a 30% lift in client satisfaction.
