Google Summer of Code 2020 – End Poverty. One Line of Code at a Time.

gsoc2016-sun-373x373This summer you’ll have the ability to change lives – three billion of them – one line of code at a time. The Mifos Initiative will be participating in Google Summer of Code for the ninth time. You’ll have the have the chance to build web and mobile apps for digital financial services or contribute to our award-winning Mifos X open source technology platform powered by Apache Fineract or brand new Apache Fineract CN application framework for digital financial services. Google Summer of Code is a global program sponsored by Google that offers students stipends to write code for open source projects.  Students accepted to the program will spend their summers coding from May 18th to August 17th and upon successful evaluation, receive a stipend provided by Google. For full details on GSoC, read the FAQ and browse the program timeline – student applications are open from March 16 through March 31! You can apply from our organization page.

Want to learn more? Browse our ideas page for projects and links to all our code repositories.

To help aspiring applicants and answer any questions related to ideas or improving your applications and proposal, we’ll be holding a Mifos Google Summer of Code AMA on Tuesday, March 24.

In 2019, we worked with 18 stellar interns who came to us from across the globe and made vital contributions including brand new client-facing mobile banking apps and mobile wallets, critical improvements to the platform, dramatically enhancing the usability of our web apps, and improving the technical foundation of our platform.  Throughout the summer and beyond, they’ve grown into long-term community contributors to the community making an everlasting impact by maintaining our mobile and web apps, serving as GCI Mentors, evangelizing the community worldwide, and even getting recognized as our star contributors.

Last year, our students worked across the entire stack from back to front-end on top of both of generations of Mifos/Fineract. On our mobile apps, we added new functionalities, enhanced the user experience, integrated with external payment systems and did refactoring across our mobile field operations app for Fineract and Fineract CN, our Mifos Mobile mobile banking apps for Finerct and Fineract CN, our mobile wallet app, and a new Fiinwallet app contributed by Fintecheando. On the web app front, we had two interns continue rewriting the web app into the latest version of Angular and continued enhancing our Online Banking App. On the back-end we hardened Fineract by tackling some of the backlog, updated our Swagger API documentation, integrated our payment hub with the GSMA mobile money APIs and continued to push the frontier of new innovation with enhancements to our chatbot, machine learning-based scorecard, and a new mobile app to capture the PPI using cloud vision and automated detection of objects in images. On the back-end of Fineract CN, we completed the removal of Category X dependencies to prepare for a 1.0 release of Fineract CN. Our Outreachy interns worked on our community infrastructure by migrating our Mifos mailing lists to a Discourse forum and our user manual to a Gitbook user manual.

What does the Mifos Initiative do?

Check out this great introductory video that was made by one of our 2019 Google Code-in winners, Laxya Pahuja:

Our mission is to democratize financial services worldwide by fueling community-led innovation on top of an open source core banking platform enabling the effective & efficient delivery of digital financial services (DFS) to the poor. Our unprecedented approach unites financial institutions, local technology partners, and volunteer developers to collectively advance open source banking infrastructure to sustainably build impactful innovations in digital financial services.  More than 13 million clients are being reached by 350 financial institutions & fintech innovators who use the Mifos software to power their operations across 40+ countries. They are supported by a global community of 100 deployment partners & hundreds of volunteers.

marie_rwanda

We provide an end to end stack open source stack for digital financial services.  Our technology stack provides complete banking infrastructure that is cloud-native, mobile-enabled, and scalable to billions that are underbanked. Think of our stack as a set of Open Source Lego Blocks for DFS including flexible account management (Mifos X) leveraging Open APIs from Apache Fineract and Fineract CN, integrating with digital payment rails like Mojaloop, delivered via web and mobile apps through Open Banking APIs.  Our projects center around web & mobile apps that leverage APIs from the Apache Fineract platform & Apache Fineract CN, our latest evolution and the world’s only open source application framework for digital financial services.

At its heart is Mifos X is our open source, cloud-based, core banking system for financial inclusion built on top of the Apache Fineract platform. It consists of a web app, a mobile app for field officers, and a mobile app for clients, along with additional modules for data migration, SMS integration, mobile money integration, and more.  We use open source technology and the power of community to scale financial inclusion worldwide to achieve our shared vision of creating a world of 3 Billion Maries, a world where each individual has access to the financial services to create a better life for themself and their family. We connect the on-the-ground organizations serving the base of the pyramid with open source contributors building applications on top of the platform to enable financial inclusion to the poor.

Financial inclusion is a proven tool for helping the poor escape the grips of poverty and create a more dignified life for themselves and their families. You may wonder how technology can help a loan officer traveling out on a motorbike collecting payments on a tiny loan to a group of women. You’ll be astounded at the dramatic impact technology can have and as part of our project you have the unique chance to utilize cutting-edge technologies like cloud computing and mobile banking to scale the impact of financial inclusion.

Why GSOC Matters So Much

Google Summer of Code is an organic growth engine which helps us grow our base of contributors long into the future. The talk we gave below highlights why GSOC is so important and what we look for in our students.

Why We Want You

If you join our community for the summer, you’ll be hooked for the rest of your careers, as part of a project and community, you’ll:
  • Be part of the broader HFOSS community working on projects to advance social good in the world
  • Collaborate with a diverse global community of developers, local technologists, and on the ground financial-service providers.
  • Develop a fond awareness of the challenges in bringing financial services to the poor and play a key role in helping to overcome them.
  • Work on top of a modern technology stack built with leading open source frameworks like Java, Spring, MySQL, RESTful services, and more.
  • Flourish professionally and culturally as you communicate and interact with our community and team of rockstar mentors.

Who We’re Looking For

We’re looking for students who are not only going to come and make a big impact over the summer but most importantly grow into a regular contributor that is a part of our community long into the future. Since 2009, we’ve had a history of deeply embedding our interns into our community – Udai and Kojo both went out to serve as mentors for several years, 2013 graduate Avik has worked for several partners in our community and is serving as a mentor this year, 2014 graduates Ishan and Gaurav have become our lead maintainers of our mobile and web apps and have mentored for a number of years for GSOC and GCI. Our most recent 2016 graduates, Rajan and Mohit, have gone on to become app maintainers and GCI mentors along with Daniel. 2016 graduate, Nikhil, is a GSOC mentor for this year. 2017 interns, Rajan, Kumaranath, and Nikhil have all gone on to work for numerous partners and fintech startups in our community.

So when we bring you on for the summer, we’re looking to invest in you for the long term, so you can be part of achieving our mission for many years to come.

Keys to a Successful Application

 

Pro Tips from GSOC Alumnus, Ishan Khanna

You can also read this great post that Ishan made on Medium titled 7 things you need to know, to ace your GSoC Proposal.

What You’ll Work On

Fineract CN

Early adopters in the community are now starting to build on top of Generation 3 of our open source software for financial services to the poor. Fineract CN is a cloud-native microservices-based application framework for digital financial services to the poor. You’ll be some of the first developers to contribute to this groundbreaking new architecture.

Here’s just a few of projects we’re looking to work on:

  • Fineract CN Live REST API Documentation – this project will focus on converting  Spring REST Docs to Swagger/OpenAPI format to deliver live API documentation that does not need to be maintained manually allowing front-end/mobile developers to easily contribute through our developer portal.
  • Fineract CN Mobile 3.0 – for this project, you’ll continue extending our reference mobile field operations app for Fineract CN with usability enhancements, architectural enhancements, and new features.
  • Web UI for Microfinance Institutions on Fineract CN –  the current Generation Mifos X/Apache Fineract solution focuses on group-based lending methdologies. The initial web UI of Fineract CN is for teller-based operations. This project would built out a web UI similar to that of Mifos X.

Fineract/Mifos X

Our award-winning Generation 2 Apache Fineract platform and Mifos X distribution is in use by more than 350 financial institutions worldwide serving more than 12 million clients.

Web Apps

  • Web App Rewrite – Students will work on completing the rewrite of our Web App, the main UI for Mifos X which has been rewritten into the latest version of Angular and worked on during both the 2018 and 2019 GSOC programs.
  • Online Banking App 4.0 – Extending our Online Banking App 3.0, you’ll improve its usability, add new features, and map it from our self-service APIs, to Open Banking APIs, providing an omnichannel banking experience to the underbanked.
  • Self-Service Admin Portal – as self-service and customer-facing apps become more prevalent, the web UI for staff needs to be more comprehensive to manage interactions with these self service users including improved user management, configuration of look and feel of client-facing apps, management of tasks, and customer support/communications. This project would include some of both the back-end work on APIs as well as the front-end.
  • Configuration Wizard – Mifos X is an enterprise-level core banking system and for those organizations with a local partner to assist them with configuration, it can be rather complex, this project focuses on building a self-guided configuration wizard to help cloud-based users go live with the software independently.
  • Payment Hub EE Operations UI – With support from Gates Foundation, we have recently built an open source middleware layer to connect to realtime payment systems like Mojaloop – this Payment Hub needs an operational user interface so you’d get to work on building out additional capabilities into the UI for monitoring transactions, etc.

Mobile Apps

  • Android Field Client Version 7.0 – Our mobile field operations was originally built by a GSOC intern and ever since has been maintained and continually updated through GSOC. This year, both new features and architectural improvements will be the focus of 7.0 including improving usability, rewriting to Kotlin, and increasing testing coverage.
  • Mifos Mobile 5.0 – Our reference mobile banking app, Mifos Mobile, will now be mapped to our Open Banking APIs, have its usability improved, add additional connections to external payment systems, and add improved data visualizations.
  • Mifos Mobile CN – This GSOC we will focus on connecting our reference mobile banking app for Fineract CN to our Open Banking APIs, revamping the user experience and add more functionalities to help showcase the omnichannel banking experience.
  • Open Banking Fintech App – Now that Mifos X and Fineract provides a UK-compliant Open Banking API layer, we want to create a cross-platform reference mobile app which demonstrates the different account information request and payment intitiation request use cases that can be done by third party providers through the Open Banking APIs.
  • Mobile Wallet 4.0 – Our mobile wallet is at the heart of many of our digital financial service growth strategies – we’ll build in additional capabilities to showcase it as a reference mobile wallet for both consumers and merchants, connect it to the Open Banking API, and support additional Mojaloop and Mobile Money payment use cases.

Modules

  • Digital Identity/Sovrin POC – digital identity is a transformational force for financial inclusion and fintech – this project would explore building out a POC leveraging Sovrin/Hyperledger Indy around digital ID.
  • Collateral Management Module – as financial institutions grow to offer more sophisticated individual lending products, better ability to track collateral and its value is needed.
  • Accounting Module Enhancements – Mifos X is often both the core banking system and accounting system for an organization – this project would deliver improved end of period processing, bank reconciliation, and support for recurring journal entries.
  • Insurance Claims Module – More and more financial institutions are offering insurance to their clients – this module would allow the collection of premiums and handling of claims by integrating with an open source insurance system like OpenUnderwriter.
  • CRM/Complaints Handling Module – Understanding their client and delivering the highest level of service is fundamental to financial inclusion – we need to add in basic CRM capabilities for  tracking of complaints and logging customer servic requests.
  • Ad Hoc Reporting Module – Insight and Analytics derived from Mifos X are critical to maximizing the impact of financial inclusion on the poor – Mifos X ships with dozens of standard reports built on the Pentaho Business Intelligence Suite but organizations need the ability to for non-technical users to build custom reports on the fly and easily slice and dice their data.

Integrations

  • Credit Bureau Integration Phase 3 – continuing the 2016 and 2017 GSOC project, you’ll add in support for credit bureaus beyond India and improve the data and reporting that flows in and out of Mifos.
  • Build GSMA Mobile Money API Connector for Payment Hub – now that we have the Payment Hub EE as a robust production-ready middleware to connect to external payment systems, we want to build out reference connectors including a connector to the GSMA Mobile Money API
  • Build Beyonic Connector for Payment Hub – now that we have the Payment Hub EE as a robust production-ready middleware to connect to external payment systems, we want to build out the most relevant connectors including a connector to the Beyonic APIs.
  • Transformation Layer for GSMA Mobile Money API to Mojaloop Open API – In coordination with the GSMA Inclusive Tech Lab, we would like to convert from PHP to Java their transformation layer for mapping the GSMA Mobile Money API to the Mojaloop Open API.

Platform Enhancements

  • Scalability & Performance to Support Millions of Clients – As Mifos X has matured, we now have financial institutions serving hundreds of thousands and even millions of clients, we need to make enhancements to the back-end platform for optimal scale and performance.
  • Strengthening and Hardening of Fineract 1.x – Fineract 1.x is deployed in production as the back-end of financial institutions worldwide serving millions – we need to fix bugs in our backlog, upgrade key libraries and maintain the highest degree of quality on our Generation 2 platform.
  • Migration from OpenJPA to EclipseLink – as part of Apache Software Foundation, we can’t use Hibernate as our ORM. With the community behind OpenJPA, withering, we are migrating our ORM from OpenJPA to EclipseLink for optimal performance.
  • Static Analysis of Apache Fineract CN –  as an enterprise-grade core banking system, security is paramount – this project would rigorously test our platform against standard security vulnerabilities and address the findings made.
For a full list, browse our 2020 Google Summer of Code Ideas page.
What are you waiting for? Join us this summer in fighting poverty with financial inclusion. Introduce yourself on our mailing lists or Discourse, chat in Gitter, and get started contributing. Applications are open now and due March 31.
IMAG1049