PlatformWeb
100’den fazla eski sayfayı React ve Next.js’e taşımak
Velocity tabanlı bir monolitin, yıkıcı bir tam yeniden yazım olmadan, modern frontend depolarına aşamalı olarak taşınması.
- Rol
- Software Engineer (Web)
- Dönem
- 2018–2025
- Teknolojiler
- React · Next.js · TypeScript · Migration strategy
Sorun
Traveloka’nın konaklama iş ortaklarına yönelik ürünü (TERA) kısmen Apache Velocity ile yazılmış eski bir monolit üzerinde çalışıyordu. Amaç, ürün çalışmasını durdurmadan onu modern React ve Next.js frontend yığınına taşımaktı.
Yaklaşım
- Tek seferde değil, aşamalı taşımak. Taşıma stratejisinin sorumluluğunu üstlendim: ürün yayınlanmaya devam ederken sayfalar tek tek React ve Next.js depolarına taşındı.
- Önce kalıpları belirlemek. Taşıma mimarisi, yeniden kullanılabilir kalıplar ve teknik standartlar işin büyük kısmından önce kararlaştırıldı; böylece her sayfa bunları yeniden icat etmek zorunda kalmadı.
- Ekipler arasında koordinasyon. Uygulama ve yayına alma birkaç ekip arasında paylaşıldı; her sayfanın net bir sahibi ve eski sayfayla eşdeğerliği doğrulamak için tutarlı bir yöntem vardı.
Traveloka’daki ilk dönemimde 11 sayfayı (yaklaşık 35 kişi-haftalık iş) monolitten Front-End Web depolarına taşımıştım; bu, daha büyük çalışmanın ilk adımıydı.
Sonuç
100’den fazla eski sayfa, tüm platformu yeniden yazmadan ve bunun getirdiği riske girmeden React ve Next.js’e modernleştirildi.