OkCredit è un'app di gestione degli account di credito destinata a milioni di proprietari di negozi e ai loro clienti in India. Con 140 milioni di transazioni su base mensile e oltre 50 milioni di download, solo lo scorso anno OkCredit ha registrato transazioni per un valore di 50 miliardi di dollari sull'app.
Considerando la portata della gestione di OkCredit e i milioni di aziende che dipendono dalla sua app per gestire i propri account, è fondamentale che OkCredit garantisca un'esperienza fluida e senza interruzioni per tutti i suoi utenti, indipendentemente dal dispositivo che utilizzano.
Gli utenti premiano le app con il rendimento migliore con recensioni positive e valutazioni alte. Un'app con problemi di stabilità o di prestazioni spesso genera frustrazione e, peggio ancora, valutazioni negative. Per questo motivo, gli errori ANR (L'applicazione non risponde) sono un'importante metrica relativa alle prestazioni per sapere se il tuo obiettivo è soddisfare gli utenti e offrire loro un'esperienza utente positiva e costante.
Gli investimenti di OkCredit nel miglioramento di Android vitals, come la riduzione degli errori ANR e il miglioramento dei tempi di avvio dell'app, l'hanno portata a raccogliere dividendi, in particolare sui dispositivi di fascia bassa (già le risorse sono già limitate). Hanno registrato sia miglioramenti nella fidelizzazione dei clienti sia nelle transazioni dei commercianti nell'app.
La sfida
Uno dei segmenti principali di OkCredit era costituito dagli utenti di dispositivi di fascia bassa. Si tratta di dispositivi con risorse limitate e l'esecuzione di attività di natura fiscale può creare facilmente un'esperienza utente non ottimale. Ad esempio, una delle principali difficoltà di manutenzione era il monitoraggio e l'aggiunta della strumentazione per gli errori ANR. L'obiettivo era risolvere questi problemi al fine di migliorare l'esperienza utente complessiva e aumentare le transazioni dei commercianti.
Che cosa hanno fatto?
Ridurre l'errore ANR e migliorare i tempi di avvio dell'app per un'app come OkCredit ha favorito la soddisfazione dei clienti e, inoltre, un aumento delle transazioni dei commercianti nell'app.
L'indizio più importante per il debug di un errore ANR è scoprire cosa stava facendo il thread principale quando si è verificato l'errore ANR. Grazie al feedback di Google, OkCredit ha creato un approccio strutturato per identificare questi errori ANR.
- Ha monitorato le prestazioni con Android vitals e utilizzato i report personalizzati su Firebase Crashlytics per ottenere informazioni sugli ANR
- Inizializzazione di librerie di terze parti ottimizzata dall'avvio dell'app, spostandole in un thread in background
- Sono stati utilizzati strumenti come Systrace e Profiler per identificare gli errori ANR nei ricevitori e nei servizi di trasmissione. Macrobenchmark su CI ha anche aiutato a confrontare le startup a freddo.
- Utilizzando il metodo profiler, gli oggetti sono stati identificati per essere caricati lentamente.
- Utilizzando layout perfetti, sono stati identificati un alto tasso di inflazione.
- Gli errori ANR nelle preferenze condivise sono stati risolti modificando tutte le apply() in commit() in un thread in background.
Le attività precedenti sono state convalidate per confermare il loro impatto confrontando le metriche o utilizzando strumenti come systrace, CPU profiler ecc.
I risultati
Oltre a migliorare le metriche e l'esperienza utente, il team di sviluppo di OkCredit ha acquisito informazioni che hanno aiutato a migliorare il processo di sviluppo in futuro.
- Su dispositivi di fascia bassa:
- ANR ridotto del 60%
- Miglioramento della fidelizzazione del 22% dei clienti di fascia bassa al primo giorno
- Le transazioni medie per ciascun commerciante sono aumentate del 30%
- Valutazione dell'app migliorata da 4,3 a 4,6 sul Play Store
- Il tempo di avvio a freddo è migliorato di circa il 70%
- Miglioramento del 60 % del clic dell'utente sul disegno completo del primo frame su qualsiasi schermata
Questo esercizio ha riunito il team per creare best practice e lo ha incoraggiato a concentrarsi sul miglioramento dell'esperienza utente. Il team ha iniziato a utilizzare strumenti come Perfetto e Profiler CPU durante lo sviluppo stesso per migliorare la comprensione del sistema e prendere decisioni più rapidamente.
"Concentrarci sulla riduzione degli errori ANR ci ha aiutato a differenziarci offrendo un'esperienza piacevole. Ciò ha portato a un aumento della fidelizzazione e a una riduzione del tasso di abbandono. Inoltre, a causa dell'eccellenza ingegneristica dei team, pratiche come queste hanno una profonda influenza sulla cultura dell'organizzazione. Questo ci rende orgogliosi come team e siamo in grado di definire nuovi benchmark per le prestazioni delle app nel nascente settore indiano della digitalizzazione delle PMI."
– Gaurav Kunwar (cofondatore e CPO - OkCredit)