My GSoC Journey with Mifos Initiative

On 4th May 2017, I received a mail from Google that my proposal for the organization `Mifos Initiative` has been accepted. I was super happy that I got selected for GSoC 2017 and was very excited to get started with the contribution.

About My Organisation — Mifos Initiative

Mifos is an extended platform for delivering the complete range of financial services needed for an effective financial inclusion solution. Mifos helps Microfinance institutions and organizations working to address economic poverty by providing the poor access to financial services are the core users of Mifos.

My Project — Self Service App

Self Service App is a client side Android Application. Earlier clients were dependent on the bank staff (who used Mifos Android Client) for performing any kind of transaction or alteration, due to which this Self Service app was developed in order to help the clients manage their accounts.


Complete Project Plan for Self Service App can be found here, which also contains all the resources related to the Self Service Project at the bottom.


Firstly I would like to thank Edward Cable, Ishan Khanna, PUNEET KOHLI, Rajan Maurya for their guidance and support throughout the entire period.

It all started with an Issue which was a closed one, but was the beginning of my open source journey. From there I started contributing to Mifos for the Self Service Android App.

Mifos did a great job in keeping all students in track as we used to have a daily standup process on slack and two weekly meetings. One was where we discussed about the scope of the project ahead, or resolve any blocker. The second meeting was where all the students discussed about their weekly progress made on their respective projects.

Also, we had a midterm showcase of the projects where I and some other students showcased their work. You can have a look at it over here.

I also wrote a small blog post for materializing the apps and some of the best practices to follow for the same: https://mifosforge.jira.com/wiki/spaces/projects/pages/186159454/Materializing+Android+Applications

Work Done during GSoC period

You can get a more detailed information about my work over here: https://github.com/openMF/self-service-app/commits?author=dilpreet96

Feature to Add and withdraw Loan :

https://github.com/openMF/self-service-app/pull/304

Feature to add, update or delete a Third Party Beneficiary :

https://github.com/openMF/self-service-app/pull/312

Feature to perform Third Party Transfer:

https://github.com/openMF/self-service-app/pull/317

Feature to add a Self Service User:

https://github.com/openMF/self-service-app/pull/363

Refracting Charges feature to show Loans and Savings Charges also:

https://github.com/openMF/self-service-app/pull/343

Added Passcode feature for login:

https://github.com/openMF/self-service-app/pull/339

User Profile Screen:

https://github.com/openMF/self-service-app/pull/338

Added QR Code for every Loan and Savings account

PR:https://github.com/openMF/self-service-app/pull/332

Added a help section

PR:https://github.com/openMF/self-service-app/pull/374

Search and Filter in accounts

PR:https://github.com/openMF/self-service-app/pull/331

For Materialising the application:

Documentation:

https://github.com/openMF/self-service-app/pull/349


I had an awesome experience throughout my GSoC journey. I learnt to follow the best practices like using “DiffUtils class” and “debugging the code” without “building it” (thanks to Ishan Khanna) and the importance of writing tests and documentation.