[GSoC 2025] Interested in contributing to the PBM project

Hello Percona community members, I am Yash a beginner contributor to open source and I came across the project through PBM I have been learning Golang and would like to bring on hands-on experience by contributing to Open-Source. I am interested in contributing to mostly 3 projects that are in PBM but the complexity still remains a question for me if I will be able to contribute so I would like the help of respective project maintainers to get me started on these projects and give me some insights on these.

  1. The First one is the PBM backup speed throttling project, this seems to be very doable on my part since it only requires Golang which I am trying to be proficient in, so this is what I am confident in and would like to start my contributions in.
  2. The Second one is the PBM golang SDK although a little on the moderate side I think Building a Golang client library (SDK) is a great learning experience. But API design complexity – mapping CLI commands to a proper Go API structure.
    Requires good understanding of MongoDB backups and PMM (Percona Monitoring & Management) which I am not familiar with also I don’t have experience with MongoDB I have used PostgreSQL in my projects.
  3. The Third one that peaks my interest is CEPH Storage support for PBM as it includes Kubernetes which I am fond of the orchestration and large scaling with the help of Kubernetes, but I know very little about Kubernetes almost nothing so I don’t know if I would be able to learn parallely and make significant contributions in the span of 2-3 months to be able to deliver the project and I feel this is the hardest but a great learning experience almost the best one as a beginner also the following challenges:
  • Storage integration with Ceph, requiring deep system understanding.
  • I will need to research storage challenges & Kubernetes workspace setups.
  • Higher uncertainty about unknown issues.
  • **I might have to spend a lot of time learning Kubernetes & storage concepts, potentially delaying actual contributions.
  • Time risk – I might struggle to complete within 350 hours if Kubernetes concepts slow me down.
    Do let me know about your thoughts on this and any help is appreciated, I would also be happy to make any adjustments to my approach if in any way they are wrong and any suggestion would greatly benefit me.
1 Like

Hi @Yash_Pal ,
nice to meet you in the forum!

From these 3 projects I recommend to you to focus on the SDK. It seems the best fit to you taking your skills and experience. Don’t worry about PMM → the required knowledge is basic - as this part of our software that will consume the SDK at first. You can learn more about PBM in our docs - Percona Backup for MongoDB

Let me know if you have any questions!

As a GSoC contributor you may submit up to three project proposals. One of them could be PBM backup speed throttling. CEPH storage is recommended to contributors that already have some more experience on working on Kubernetes environments.

Once again - welcome to the community!

2 Likes

Thank you @radoslaw.szulgo,
I will start to get familiar with the SDK and Backup project and thanks for the resource I will check out the docs, I would also like to know if there is a specific communication channel where I can join like Slack or gitter where I can maybe interact more easily.
Thank you for welcoming me!

We have some ideas for establishing a Slack channel for GSoCcers when the program starts. I suggest using the forum to share the discussion with the community.

I’ve already started to document the scope of the project here:
https://perconadev.atlassian.net/browse/PBM-780

As a first step and a good preparation to the project - it’s needed to review well what PBM CLI commands are available (docs and code) and map them into the SDK GO methods that are or need to be implemented.

1 Like