Industrial Exposure: Building FinTech with INDMoney

Brijesh Kumar
3 min readMay 8, 2022

I have recently completed 6 months working as a software development engineer intern with INDMoney, a personal finance application with a focus on financial inclusion. It was a very enriching experience to be a part of something that solves real-world problems. The initial experience was quite overwhelming. Never had I ever worked on such large code bases neither had I ever worked on something which was being used by people on such a scale. The first few weeks were spent on understanding the code base, the technologies used, and the overall architecture.

Initially, I was handed over a dummy project to basically get a hold of the tech stack my team would be using. Concurrently, I had Knowledge Transfer (KT) sessions with my team lead to get me familiar with the algorithms, their implementations, and the various problem statements the team aims to solve in the future. I was also given a basic tutorial of the tools and frameworks my team uses to efficiently create solutions.

Once I had gotten a hold of things, it was time to get my hands dirty with the live project. The learning curve was immensely steep and I was given the responsibility of testing some of the back-end algorithms and basically ensuring that the algorithms were running in a way that provided us with consistent and optimal results. I used property-based testing for the same wherein we used fast-check. This introduced me to healthy coding habits and got practical exposure to real-world software development. I also was introduced to various debugging techniques utilized in the industry and got my hands dirty on Jenkins where I learned about CD pipelines. Followed by which I was asked to scope out a system wherein I had to map out the various architectural designs and provide a basic effort estimation for the same. I was then handed over a major chunk of development tasks for the same. This task introduced me to various security improvements that are added to an API before deploying it on a production environment in order to make the system completely air-tight.

Once I was half-way through the internship, my profile was expanded to cover the full-stack developments needs of my team. I was one of the lucky few to be handling both back-end and front-end needs of the team. This opened up my mind a lot as now I was getting first hand experience at the end-to-end delivery of a project. This exposed me to various good front-end coding practices that are utilized in the industry. I worked on quite a few projects wherein I had the opportunity to work on both the back-end and the front-end aspects of the project. By doing so, I got to understand the importance of unobstructed and clear communication within teams, the need for proper documentation, etc. I also got to learn about server event logging and monitoring and as to how production grade applications and services are managed and constantly monitored for any abnormalities and failures.

I also get to do a lot of code reviews for my peers in my team. Moreover, all this experience has led me to observe the advantages of implementing agile techniques in software development to build software quickly and efficiently.Along with this, I had a great opportunity of interacting with other engineers from the organization in various tech-talks and events that were arranged regularly. This made me understand how various systems are built keeping scalability and efficiency in mind. I also had many sessions with my team lead wherein, I got to understand various techniques utilized in Data Science and understanding how to tackle it further.

I am grateful to Bennett University for providing me with such an opportunity and not to forget my team @ INDMoney.

--

--