BPKH App Revamp
Revamp aplikasi BPKH melalui modernisasi technology stack, desain microservice architecture, digitalisasi flow pendaftaran dan pelunasan haji, serta peningkatan keamanan data.
Ringkasan
BPKH App Revamp adalah project modernisasi aplikasi BPKH yang sebelumnya masih banyak bergantung pada stack PHP dan Ionic. Dalam project ini, saya terlibat sebagai Software Engineer untuk membantu perancangan arsitektur, modernisasi technology stack, serta pengembangan awal backend sebagai referensi struktur code dan implementasi ERD.
Revamp ini bertujuan untuk memperluas kapabilitas BPKH App, yang sebelumnya berfokus pada pengecekan nilai manfaat, agar dapat mendukung proses pendaftaran dan pelunasan haji secara digital pada BPKH App melalui integrasi dengan bank penerima setoran.
Tantangan
Tantangan utama project ini adalah merancang flow pendaftaran dan pelunasan haji yang fleksibel untuk banyak bank penerima setoran. Setiap bank perlu dapat menyediakan microsite masing-masing, namun tetap mengikuti standar integrasi yang mudah dikonsumsi oleh BPKH App.
Revamp juga harus mempertahankan data user lama agar pengguna existing tetap dapat menggunakan aplikasi setelah migrasi ke sistem dan database baru. Proses ini membutuhkan mapping schema, validasi data, dan strategi migrasi yang aman agar tidak terjadi kehilangan data.
Di sisi infrastruktur, sistem perlu tetap stabil di atas keterbatasan environment yang tersedia. Karena itu, desain aplikasi yang efisien, optimasi query, dan strategi deployment menjadi aspek penting dalam proses revamp.
Selain itu, data jemaah termasuk data sensitif sehingga rancangan keamanan perlu memperhatikan standar ISO 27001, terutama pada aspek desain keamanan data, enkripsi, dan masking data.
Solusi Teknis
Solusi teknis dilakukan dengan memodernisasi aplikasi menggunakan React Native untuk mobile app dan Java Spring Boot untuk backend service. Arsitektur backend dirancang dengan pendekatan microservice agar sistem lebih maintainable dan lebih mudah dikembangkan untuk kebutuhan fitur baru.
Untuk proses pendaftaran dan pelunasan haji, saya merancang flow integrasi berbasis microsite. Pengguna memilih bank penerima setoran dari BPKH App, melanjutkan proses melalui microsite bank yang terintegrasi, lalu kembali ke aplikasi melalui mekanisme redirect setelah proses selesai.
Saya juga membantu pengembangan backend pada tahap awal untuk memberikan contoh struktur code, rancangan ERD, serta pola implementasi yang dapat digunakan oleh tim. Dari sisi delivery, saya membuat pipeline GitLab CI/CD untuk proses build JAR dan pembuatan Docker image ketika terjadi merge. Deployment disesuaikan dengan environment yang tersedia menggunakan pendekatan container-based deployment.
Kontribusi Utama
- Application Modernization: Merancang modernisasi arsitektur API BPKH App dengan pendekatan microservice dan membantu pengembangan awal backend sebagai referensi struktur code serta implementasi ERD.
- Hajj Registration & Settlement Flow: Merancang flow pendaftaran dan pelunasan haji digital yang fleksibel untuk berbagai bank penerima setoran, sehingga BPKH App dapat terintegrasi dengan microsite bank melalui pendekatan yang terstandarisasi.
- Microsite & Deeplink Integration: Merancang standar integrasi microsite bank, mengembangkan microsite Bank Muamalat, serta mengintegrasikan deeplink Android dan iOS untuk mengarahkan pengguna kembali ke BPKH App setelah proses pembayaran selesai.
- Security, Compliance & Migration: Melakukan mobile security hardening, merancang aspek keamanan data yang selaras dengan kebutuhan ISO 27001, dan memigrasikan data user lama ke database baru dengan menjaga ketersediaan data existing.
- Delivery Workflow & Deployment: Menentukan Git workflow, membuat pipeline GitLab CI/CD untuk proses build dan pembuatan container image, serta mengoptimalkan query dengan pendekatan container-based deployment untuk menjaga stabilitas di environment yang tersedia.
Output
BPKH App berhasil mendukung flow pendaftaran dan pelunasan haji digital melalui integrasi microsite bank yang terstandarisasi. Revamp ini meningkatkan maintainability melalui modernisasi technology stack dan microservice architecture, sambil mempertahankan data user existing serta memperkuat delivery workflow dan security readiness.