Google Summer of Code 2017 will soon be underway. GSOC is now in its 13th year and we’re proud to be participating in GSOC once again for the fourth time as the Mifos Initiative and the sixth year overall. This year will be our biggest year to date. We were able to select twelve interns from our pool of more than 90 applicants. We are very grateful for Google to allocating us so many slots to allow us to pick from the many impressive students that applied, especially amongst mobile and web developers where we had an overwhelming number of applicants. As the voice for the financial inclusion community within Apache Fineract, the Mifos Initiative looks forward to participating in GSOC for many years to come to deeply engage with the high number of students interested in Fintech and captivated by our mission.
This year we’ll have interns representing six different countries and four different continents, once again working on all components of the Mifos X stack that’s powered by Apache Fineract. On the front-end we have 4 students that will be working on various features of our AngularJS web apps under the mentorship of Gaurav Saini, Pranjal Goswami, and new mentors Maulik Sonaji and Vinay Saini. On the mobile apps side of things, we have 4 students working on various Android apps powered by our stack; they’ll be mentored by Ishan Khanna, Satya Naryan and first-time mentor Puneet Kohli. On the back-end, working on either new platform features, analysis, or modules integrating with Mifos X, we have 4 students as well being mentored by Antony Omeri, Avuk Etta and new mentors, Kyriakos Patsias, Avik Ganguly, Dhirendra Pratap, and Mark Reynolds.
Tarun Mudgal and Mayank Jindal, both 2016 Mifos GSOC aspirants, will be continuing the work that Rajan led in 2016 and extending offline functionality, building new features like the collection sheet and more to deliver Version 4.0 of our Android Field Officer App. Dilpreet Singh will be building on top of the Android self-service app by improving its usability, and adding in additional features like mobile money integration. Naman Dwivedi will be working on a brand new project, building out a modular mobile wallet framework that integrates with the UPI in India.
Gopala Krishnan will be working on our re-skinned community app by increasing usability and redesigning screens and workflows. Raunak Sett will use our self-service APIs to build the first self-service web app for Mifos X. Mohit is going to be completing making the web app available offline in Chrome browsers and Courage Angeh is extending the notifications framework further throughout the web app and integrating with other Mifos X interfaces.
On the back-end we have quite a bit going on. Alex Ivanov, our 2014 GCI grand prize winner, has returned to the community and will build out two-factor authentication. Kumaranth Fernando, another 2016 GSOC aspirant, will be working on the oft-requested enhancements and integration to our data import tool. Vladimir Fomene will be genericizing and enhancing the mobile money gateway kicked off by Daniel in 2016. Thisura Phillips will be conducting extensive static analysis and fixing the vulnerabilities he finds on Apache Fineract.
A big shout out to all our mentors without whom Google Summer of Code couldn’t be possible. They’ve already dedicated many hours interviewing candidates, reviewing pull requests, and helping refine the scope of the various projects. But their work has just begun and they’re eager to help introduce another generation of software developers to open source while fighting poverty with financial inclusion.
While not officially part of the Mifos Initiative for Google Summer of Code, we have three other projects as part of Apache Fineract including the first mobile field officer app on Gen 3 being led by Rajan Maurya, phase 2 of the credit bureau integration module being led by Nikhil Pawar, and live REST API documentation using Swagger being led by Sanyam Goel.
For all of these projects, we’re still nailing down the exact use cases and scope of work, so please respond to the ongoing discussions on our mailing lists to provide feedback and suggest what you need.
As we do each year, here’s a brief intro on each of our interns and stay tuned for a follow-up post with some fun facts on each of them.
|Tarun Mudgal – India
|Mayank Jindal – India
|Dilpreet Singh – India
|Naman Dwivedi – India
Front-End & Web Apps
|Gopala Krishnan – India
|Raunak Sett – India
|Mohit Bajoria – India
|Courage Angeh – Cameroon
Back-End & Modules
|Alex Ivanov – UK/Bulgaria
|Vladimir Fomene – Ghana
|Kumaranth Fernando – Sri Lanka
|Thisura Phillips – Sri Lanka
Vladimir is a junior working on his Bachelors of Science in Computer Science at Ashesi University College, Ghana. He has more than two years experience developing on Java and six months on Android development. He fell in love with Computer Science after an online Harvard course and has also participated in the Mastercard Scholars program at his school and leads the Google Developers Group on Campus. He was eager to participate in GSOC to give back to open source which drive most of the software he uses on a daily basis.
Post-graduation, Vladimir looks to specialize in mobile development because of the many possibilities for developers in Africa with the exponential growth in smart phone adoption and the ability to improve people’s lives in his community. We chose Vladimir for the mobile money gateway project because of his java skills, the strong passion for our social mission, and his commitment to the community. He will be genericizing the mobile money integration module started by Daniel Carlson to integrate with the mobile money APIs of several different providers. He’ll ensure that the key inbound and outbound transactional flows are synced and reconciled into Mifos X in real-time and build out a self-service interface if time permits.
Kumaranth is currently a sophomore pursuing his Bachelor of Software Engineering at the Informatics Institute of Technology Sri Lanka affiliated with the University of Westminster UK. Just like Tarun and Mayank, Kumaranth was also one of our talented 2016 applicants that we had to turn away. Luckily Kumaranth stayed active within our community and was very eager to apply in 2017. Kumaranth has strong Java and object-oriented programming experience including an internship for multinational Virtusa Pvt Ltd and receiving his Diploma of Advanced Business Solutions from the Institute of Java and Software Engineering.
Kumaranth actually applied and had a thorough proposal to work on the USSD interface for Mifos X. Given that project wasn’t the largest in scope and we had such a high priority need for enhancing the widely-used data import tool, our mentors proposed accepting Kumaranth for this other project. With his enthusiasm for the community and his strong Java skills, we thought it would be a great fit and deliver tremendous value to the community. Kumaranth will be integrating the data import tool into the platform and making three major enhancements including support for templates at the office/staff level which is essential for organizations conducting large migrations. Kumaranth will be improving performance through the use of batch APIs, and extending functional coverage to support additional features such as bulk chart of accounts import, and import of data tables.
Alex is currently a first year student studying Computer Science at the University of Manchester, United Kingdom. You might remember Alex or MegaAlex as he goes by on Github for his contributions as one of our 2014 Google Code-In grand prize winners during high school. Now that he’s in university and has more free time, he’s eager to begin contributing to open source more seriously. Alex has experience coding on both the back and front-end with Java and AngularJS and is looking forward to deepening his knowledge of the Java Spring stack. This project will help him advance his long-term career objectives to work in fintech and enterprise software and security.
Alex’ varied skillset, his strong willingness to learn, and his previous contributions to the community made him a great candidate for our two-factor authentication project. Security is of utmost importance to our users who mush protect their customer’s priceless financial data. Through the project, it well enable Mifos users to configure two-factor authentication for their system users, generating a one-time password via SMS and requiring this to be entered before authenticating into the system.
Thisura was the perfect for our our project on Static Analysis of Apache Fineract. His passion for computer and software security was clearly evident from his engaged interactions with the community. He has both practical and academic experience analyzing code using tools like Jlint, Findbugs, Sonarqube, and OWASP, penetration testing, identifying and fixing vulnerabilities, addressing bad coding style and practices which lead to security vulnerabilities and familiarity with common security attacks. He has introduced OWASP Encoder into OpenMRS and resolved CSS security vulnerabilities for them. He has already scanned mifos through SonarQube and will begin to identify and address security vulnerabilities with Mark Reyndolds to make Apache Fineract rock-solid.
Naman is a 3rd Engineeringstudent at the Delhi College of Engineering. As an Android developer for 3 years, he has a strong knowledge of the Android architecture and framework. Naman is an extensive contributor to open source; he is in fact the 3rd most starred Java developer in India on Github and his projects and libraries have been forked more than 2004 times. He has spoken at DroidCon India in 2015 and 2016 and travelled all the way to the Google headquarters for his work as the lead deveoper on the official app of the Indian Prime Minister’s office.
We were so impressed by Naman’s pedigree and the feedback we’d received from Mifos GSOC alum who knew him personally that we proposed a different project for him to work on beyond the Self-Service App that he applied for. Given his deep knowledge of Android from an architectural point of view, Ishan will be mentoring Naman on building a mobile wallet framework that integrates with India’s UPI. This mobile wallet framework will provide a powerfool tool that nicely complements the Apache Fineract back-end. Developers will have access to a pluggable framework in which to build any mobile wallet app. Just like we have the open building blocks for the fintech back-end, we’ll do the same for the front-end. The first app powered by the framework will integrate with India’s UPI (universal payments interface) which is part of their India Stack – complete open financial inclusion infrastructure for the world to build upon. We’re excited for this new project to help provide a foundation for mobile app development and to help us immerse ourselves in the India Stack innovation.
Dilpreet is a 3rd year undergraduate student pursuing his degree in Computer Science from Guru Tegh
Bahadur Institute of Technology, New Delhi, India. He has two years experience developing on Android including his Android Developer nanondegree which he completed with a scholarship from Google and Tata Trust. He also teaches weekly development sessions to juniors in his college society through Android Techies.
Although this is the first time for Dilpreet contributing to a larger open source project, he impressed us with his Android development skills by fixing multiple pull requests during the evaluation period. He quickly understand the codebase having already implemented MVP architectures with Retrofit and as a Mifos contribution , made a library for initializing fragments and performing argument binding through annotations processing. Although we had many applicants for the Android Self-Service App project, Dilpreet’s skills, contributions and willingness to be a long-term contributor helped him shine above the rest. For his project he will be extending the current version of our Android Self-Service app that Rajan has lead – he’ll improve the overall UX and usability, add in support for third party transfers, add in support for collecting surveys, improve the sign-up and sign-in process, and add in more mobile wallet features to the app.
Mayank is in his third year of undergraduate studies majoring in Civil Engineering with a minor in Computer Science and Engineering from the Indian Institute of Technology, Kharagpur. Mayank is passionate about learning and aleady has several years experience developing with Android, Java, and MySQL – he’s worked on an app to buy and sell bitcoins at a blockchain hackathon, developed a quiz app for school-age children, and helped with an emergency app for his college.
Like Tarun, Mayank impressed us in 2016 with his GSOC application but we were unable to select him due to the low number of slots we had. He has stuck around as an active contributor to the Android field officer app throughout the year including serving as a mentor for GCI. All in all, he’s already had nine pull requests consisting of 5000 lines of code successfully merged His demonstrated commitment to our mission, his familiarity with the stack, and his experience with Java, Android, and MySQL make him a great fit to work on Version 4.0 of our Androd field officer app, adding in new functionalities, improving usability, and making offline accessw widespread.
Tarun Mudgal is a final year B. TEch Computer Science student at the University of Delhi, India. He first got interested in CS during high school and his since focused on Android development including receiving his Android Development nanodegree through scholarship from Google India and Tata Trust. He’s built a number of a different Android apps from scratch through various internships including an app to keep track of inventory stock, a location tracking app, an educational video app, and an app to block calls from non-whitelisted contacts. Ultimately Tarun would like to mark his expertise in a theoretical domain of computer science and is applying to foreign universities for postgraduate studies in Information Science & Forensics.
Tarun first came to the Mifos community during the 2016 GSOC when he applied and was unable to get selected due to the highly competitive process for the seven slots we received. He has stuck around the community, making many contributions to the field officer app as a volunteer and acting as a mentor for high school students during Google Code-In. With Tarun’s experience on the app, his extensive Android knowledge, and his already proven commitment to the community, he was a perfect fit to work on Version 4.0 of our Android Field Officer App. He along with Mayank will be continuing to extend the offline mode throughout the app, work on collection sheet and bulks collections, improve support for survey and field data collection, and better task management support for field officers.
Gopala is currently in his first year of undergraduate (B. Tech) studies in Computer Science and Engineering at Amrita Vishwa Vidyapeetham University, Kollam, India. He has been active in web and open source development since his first day of college when joined the FOSS club. He has already built his experience in HTML, CSS, AngularJS, and Bootstrap through his classes, open source contributions to coala, and building out a simple shopping cart webpage.
Despite his young age, his passion for learning and his fervent commitment to the Mifos project and its social mission were clearly evident in the impact Gopala has had since joining the community three months prior to his application. In that time, he’s familiarized himself with the code base, our communication channels, and the contribution workflow, successfully committing sixteen pull requests.
Gopala will be working on the newly re-skinned Mifos X Web App (Community App) by improving performance through lazy loading, implementing wizard UIs for product and account creation, improving the dashboards interface, redesigning the core client, loan, and savings account summary screenns, and developing a style guideline.
Courage is in her third year studying Computer Engineering at the University of Buea in Cameroon. She loves learning new exciting technologies and strives to channel all she learns to improving her local community in every that she can. Courage has honed her skills on AngularJS working on a number of open source projects including a volunteer management system and building from scratch an online agricultural market and inventory system.
This AngularJS experienced coupled with her accounting studies made Courage a greaft fit for our Notifications Framework project. She is going to be picking up wher Adhyan left off in 2016 by extending the framework, increasing usability of the notifications, making them available be default across more portions of the web app, and integrating with other user interfaces.
Mohit Bajoria is a third year Bachelor’s of Technology in Computer Science student at Shri Mata Vaishno Devi University. He is very enthusiastic about Progressive Web Based technologies and aspires to be an entrepreneur using the awesome world of the internet to create a futuristic system and something of his own that can serve the world and be open source. Mohit has deep experience with AngularJS along with Ionic 2, MySQL and Java.
Mohit graduated as a 2016 GSOC intern with the Mifos project and has shown his commitment to the community over the past year by stepping up to be the lead maintainer of the Mifos X web app, making more than 70 commits. He was also recognized for this as a recent Mifos Star Contributor. He looks forward to picking up where he left off on last year’s project and extending offline capabilities throughout more of the Mifos X web app in the Chrome browser, refactoring the existing work to work with the newly reskinned branch, and shipping the much awaited offline access that uses have been seeking.
Raunak has demonstrated his commitment to the Mifos project as a volunteer throughout the past year and made more than 13 merged pull requests to the Mifos X Web App during the evaluation period including work on creating new surveys from scratch. Raunak is deeply passionate about the social mission and spends his weekends and free time as part of Tech for Impact. Raunak’s design and development expertise along with his dedication to the social mission made him a great fit for our Web Self-Service App using our self-service APIs – he’ll build out the initial app with support for viewing account details, performing self-service transactions, and inputting survey data. Please review the mockups of his project for a glimpse at what he’ll be building.