In today's digital world, physical cash is rapidly becoming a relic of traditional financial systems that have disadvantaged the unbanked. By combining mobile digital financial tools (such as mobile remittances and loan disbursal) with other money management tools (such as financial education), we believe unbanked people can access financial services and break out of the poverty cycle. At Gojo, we wish to include financially excluded people and enable them to achieve financial goals and self-sufficiency.

I joined Gojo as a Software Engineer in August 2020 to enable this mission and solve our mobile engineering challenges, of which there are many. I’m going to talk about two of these today.

Challenge #1:

How do you create a Digital Field Application system that works even if the cell tower is down?

Most of the time, we take internet access for granted. That’s not the case for our customers in many countries, where the internet can be patchy and a precious resource. In order to ensure that our DFA didn’t stop working when the internet did, we had to architect our technology to be offline-first.

First, we loaded our app onto an Android tablet with 32GB of storage. We were able to store all the relevant data like names, photos, and loans locally on each device. The user, typically someone like a loan agent, doesn’t even need to know whether the tablet is online or offline, because the app behaves the same either way.

In the event of the internet dropping off, as soon as the tablet is reconnected to the internet, the data automatically syncs with our servers. That enables us to maintain data quality despite patchy internet.

Field officer taking photos of new M-Lady client using Gojo's DFA / Koh Terai

Challenge #2:

How do you enable field agents to update their Customer Forms on the fly to capture desired and customisable client data?

A critical piece of our Digital Field Application is to collect client information on tablets. This information is then used to make a decision on whether a client is eligible for a loan or not. These forms can vary widely depending on the data capture requirements of the partner. Keeping the fact in mind that the KYC forms could change on a regular basis, it did not make sense for us to go for a conventional route, i.e., to hardcode forms on the tablet itself.

We solved this problem by implementing the SDUI (Server Driven User Interface) architecture for our form screens. It works in conjunction with the offline architecture I mentioned above to render the latest version of the form to the client when the internet connectivity is present, or the latest cached version in the offline scenario. 

It provided us the following benefits: 

  1. Partners no longer need to depend on mobile developers to update the app to show specific changes in forms or to change the order of the UI. An agent can now use a web portal to make any changes he/she wants in the forms and it would be reflected in the app instantly.
  2. It’s easier for loan agents to introduce new form fields, like images and map views from their office computers and have it reflect on the mobile app.
  3. It enables the engineering team to create more reusable form components and scale across partners, because we do not have to hardcode the forms for each of our partners.

As we continue to scale our Digital Field Application across Gojo partner companies, these solutions will evolve, but we're confident that our approach of immersive design and innovative development is the best way to yield technology that is as resilient and adaptive as the people in the places where it is meant to be used.


Jeet Dholakia works as part of Gojo's technology team as a software engineer, focusing particularly on mobile engineering. He is passionate about solving complex engineering problems and good mobile design, and is currently working on Gojo's Digital Field Application and Customer Mobile Application.