The first time I opened Apache Fineract, I wasn't thinking about
contributing.

I was trying to understand something much bigger:

How does Java actually work in a large, enterprise-grade codebase?

Back in December 2025, I was looking for projects where I could learn how
real software is built.

Not just how to write a Spring Boot controller.

I wanted to understand:

How are hundreds of files and modules managed?
How do migrations happen?
How is testing handled?
How are releases done?
How do developers make decisions in a huge codebase?
And most importantly, how does an open-source community keep all of this
accountable?

That's how I ended up in Apache Fineract.

The codebase was intimidating.

As a new contributor, I found a TODO, solved it, raised a PR, and thought:

That's it. My first contribution.

Then came a comment from Aman Mital.

https://github.com/apache/fineract/pull/5265#issuecomment-3693823685

And I realised I had misunderstood open source completely.

A PR wasn't simply:

"I found something to fix, so I fixed it."

There were development guidelines.
There needed to be a ticket.
There needed to be traceability.
There needed to be accountability.

There was a reason behind the process.

That small correction changed how I looked at contributing.

Since then, I have had the opportunity to contribute across very different
areas of Fineract: core features, security, testing, developer tooling,
documentation and more.

But honestly, the biggest learning wasn't always from writing the code.

It was from reading the code and reviews of people who had been doing this
for years.

A huge thanks to Adam Saghy for reviewing so many of my PRs. I genuinely
learned a lot by reading his reviews and looking at how he approached
problems and structured code. I used to read his PRs.

I also want to thank  Aman Mital for constantly correcting me when I went
in the wrong direction, and for mentoring me throughout my GSoC journey.

Thank you, Paul, for the weekly check-ins, guidance and all the
conversations that helped me make better decisions throughout GSoC.

Before GSoC, one comment from James on FINERACT-2441 ended up shaping a
significant part of my thinking around how we were building Fineract
Business Intelligence.

https://issues.apache.org/jira/browse/FINERACT-2441

I also learned a lot from Sujan, Edward, Krishna and Nidhi. Watching their
work during GSoC was another reminder of how much you can learn simply by
being around good engineers.

And a very special thank you to  @Adam Monsen <[email protected]>

While I was still figuring out how to navigate the community and contribute
effectively, Adam reviewed my work and suggested that we should build a
Fineract Chat Archive.

With his guidance, I built it.

Under his guidance, I also migrated the Fineract website from HTML to Hugo
and improved several parts of it along the way.

Those weren't just contributions.

They were opportunities to learn how to identify a problem, think about the
right solution, work with a community, and take ownership.

Looking back, that's probably what I value most about Fineract.

I came in wanting to learn how an enterprise Java codebase works.

I ended up learning something much broader:

Open source taught me that contributing isn't just about writing code. It's
about engaging with the community, learning from others, collaborating, and
eventually helping someone else along the way

>From my first PR, to getting reviews, making mistakes, contributing across
different parts of the ecosystem, and eventually becoming a GSoC
contributor, this community has played a huge role in my growth.

And I'm genuinely grateful to everyone who was part of that journey.

But GSoC ending doesn't mean the learning ends.

There is still a lot I want to work on.

→ Migrating Fineract Business Intelligence towards an Apache-based
streaming extractor
→ Contributing to Fineract Consumer Facing
→ Exploring Loan Origination
→ Working on Backoffice
→ And, most importantly, getting back to Fineract itself. It's been a while
since I last contributed there.

The journey continues.

And if you're looking to contribute to Apache Fineract Business
Intelligence and you're stuck somewhere, confused about the architecture,
or simply don't know where to start, feel free to reach out.

I'd be happy to help.

Repositories I'm currently excited about:

* https://github.com/apache/fineract-business-intelligence
* https://github.com/apache/fineract-consumer-facing
* https://github.com/apache/fineract-loan-origination
* https://github.com/apache/fineract-backoffice-ui

>From picking a random TODO to becoming a GSoC contributor.

I'm extremely grateful for everyone who helped me get here.

Thank you, Apache Fineract community.

Reply via email to