A Reflection on the LFX Mentorship Program
The opportunity to participate in the LFX Mentorship program this Fall has been inspiring and satisfying. This blog captures my three-month journey- the highs, lows, and lessons learned during this enriching experience.
What is the LFX Mentorship program?
LFX Mentorship is a program designed by the Linux Foundation to provide developers, particularly those new to open source, with the skills and resources needed to contribute effectively to open-source communities. The mentees work on real projects under the guidance of experienced mentors who are maintainers and developers of specific open-source projects. The mentorship program offers a valuable learning experience, helping mentees build connections within the open-source community and gain practical knowledge in a supportive environment. The program is organised multiple times a year, and mentees have the opportunity to contribute to projects under the umbrella of the Linux Foundation and other associated organisations.
Acknowledgement
I extend my heartfelt gratitude to my mentor, Shuting Zhao, Staff Engineer at Nirmata, who has been the guiding light throughout my LFX Mentorship journey. Her patient guidance has been instrumental in shaping my contributions.
I also want to express my gratitude to Jim Bugwadia, Co-founder and CEO at Nirmata, whose leadership has played a pivotal role in creating an environment for collaboration and growth, and Charles-Edouard Brétéché Staff Engineer at Nirmata. While our interactions may have been brief, you have undoubtedly contributed to the positive atmosphere within the community.
Acceptance in the program
Even applying for the LFX Mentorship was eventful. I had misread the last date of the application, and it hadn’t been corrected until the last moment. Scared to be too late, I filled out the required questions and applied. Indeed, I had prepared the profile meticulously long ago but didn’t apply too early. On Sept 1, I received a formal email confirming my acceptance. I was overjoyed, and this start served as a prelude to the challenges and triumphs ahead.
My 12-week Mentorship Journey
My work for the term was implementing the new admission control integration in Kubernetes in Kyverno. The implementation had been in progress since the last two terms, and I had to smooth out any patches, make the PR ready for merging, and create appropriate documentation.
Pod security ensures that each pod operates independently, minimising the risk of unauthorised access or interference between applications. This significantly reduces the attack surface crucial in shared cluster environments and is pivotal in meeting compliance and regulatory requirements.
Initially, Kyverno supported the validate.podSecurity
rule, which enables users to apply entire Pod Security Standards to selected resources by directly leveraging the Kubernetes Pod Security admission and in the release of the latest version, we focused on enhancing Kyverno by supporting finer-grained exclusions in the context of Pod Security Standards by enabling exclusions by restrictedFields
with its corresponding excluded values. This led to better precision, customisation and flexibility.
My work required writing comprehensive tests for some existing functions, ensuring resilience. Resolving CI test issues, I migrated tests from Kuttl to Chainsaw for a smoother and more efficient testing experience.
Contribution
Here is the link to the PR I worked on.
Overall, working on this project was a very insightful and exciting experience. Working on the intricacies of the codebase and seeing improvements take shape helped boost my confidence. Big thanks again to all Kyverno maintainers for their help and warm support.
Conclusion
Thank you for your time and curiosity. If you’ve found inspiration in this experience, I encourage you to explore the open-source world and consider diving into projects like Kyverno. Embracing open source expands your skill set and lets you be part of a vibrant community that thrives on collaboration and innovation.