Fintech lending · 2021-2024
KoinWorks Core Android
Tiga tahun di tim Core: membangun fitur akun, registrasi, dan KYC yang dipakai semua produk, komponen input form di UI kit, serta setup Mixpanel dan Flagsmith.
Konteks
KoinWorks adalah platform fintech lending di Indonesia dengan satu super-app Android untuk peminjam, pemberi pinjaman, dan pemilik usaha. Selama tiga tahun saya berada di tim Core (Platform), yang memegang fitur akun, identitas, dan fondasi bersama yang dipakai semua produk, dan menjadi kontributor kedua teraktif di branch utama aplikasi.
Yang saya bangun
- Akun. Registrasi terpadu untuk akun personal, home business, dan PT/CV, OTP lewat SMS dan WhatsApp, reset PIN dan password, ganti akun, login biometrik, dan penghapusan akun.
- KYC. Modul KYC untuk akun personal dan bisnis, liveness Innovatrics dengan threshold yang diatur lewat feature flag, modul NPWP dengan kamera dokumen dan OCR, data identitas untuk KTP, paspor, dan KITAS, serta modul Re-KYC di Jetpack Compose.
- Input UI kit. Text field dengan label beranimasi, validasi, dan format NPWP serta alamat, juga dropdown dengan pencarian yang datanya dari API, dari provinsi hingga kelurahan.
- Analytics dan flag. Taksonomi event Mixpanel untuk registrasi, login, dan dashboard, event CleverTap dan AppsFlyer, trace Firebase Performance untuk funnel registrasi, serta SDK Flagsmith.
- Fitur produk. Pembayaran tagihan KoinBill, promo dan halaman penawaran Talon.One di Compose, kode referral, serta in-app rating dan feedback.
Menjaga codebase tetap sehat
Memindahkan layar lama dari MVP ke MVVM dengan Hilt, memecah header interceptor bersama menjadi beberapa interceptor OkHttp yang terfokus, memigrasikan penyimpanan profil dan token dari SharedPreferences ke DataStore, serta mengganti Kotlin synthetics dengan View Binding. Menulis unit test untuk presenter, view model, dan repository, menyiapkan SonarQube untuk submodule, dan bergantian dengan Android engineer platform lainnya sebagai PIC rilis.