By Nicholas Karimi
Summary: My Linux Foundation Mentorship
The Linux Foundation Networking Mentorship program is designed to help enthusiastic beginner open-source contributors by pairing them with more experienced open-source contributors as their mentors, and consequently, prepare them for internship and job opportunities upon graduation.
I was accepted for the ONAP Architecture Navigator (ArchNav) mentorship. The ONAP Architecture Navigator (ArchNav) is a web-based Proof of Concept (PoC) developed by the chair of the architecture subcommittee for the purpose of quickly moving around areas of ONAP documentation via the architecture diagram specific to each release. This allows people to find information in a manner that is based upon a visual representation of the architecture itself rather than being a more menu driven model.
During this period, I worked on various tasks such as redefining the problem statement for the community to assess the suitability for an already-developed technical solution adoption on the official documentation. I came up with a knowledge transfer page https://wiki.onap.org/x/Oh4qBg where I compared the architecture navigator to an alternative solution suggested by the documentation team, and offered my perspectives as a newcomer, along with my recommendations. I also worked on other tasks such as investigating tools that can be used to parse xml files and the wiki content export automation from confluence.
Expectations Coming into the Mentorship
As my first-ever mentorship, I had a basket full of expectations. I couldn’t resist the urge to want to know everything! My first goal was to try and understand what open source is, how the community is governed and operates. Luckily, in the second week of my mentorship, there was a virtual LFN Developer and Testing Forum event that came in handy as I got to attend sessions such as “Intro to Opensource” that was beginner focused. During this forum, I learned the dos and don’ts when joining an open source project as a contributor.
Also, I had expectations of getting to know how open-source contributions are done. My mentor, Kenny Paul, was very forthcoming in shedding insights and breaking down any perceived complexity of open-source contribution. Initially, I thought open-source contribution only revolved around writing code, pushing, and merging it on version control systems, but this is not the case; there are so many moving pieces in an open-source project that don’t revolve around code contribution only. Other aspects include writing and maintaining an up-to-date technical documentation that will be consumed by the end users of the project.
Additionally, to run a successful open-source project, there must be a good structure and governance model in place. During my mentorship, I got to experience how policies, rules and best practices that govern the project are made, and gained an understanding of the organizational and governance structure of ONAP.
During the 12 week mentorship, I was involved in several projects and my contributions to them included:
- Update the developer wiki. The documentation is very crucial for any project; as a responsible contributor, while interacting with the project’s documentation, I would make minor updates to ensure the information on the wiki is current and accurate.
- Set up a local documentation environment for testing. This was my first task in my mentorship. Since I would be working with the documentation team, this local environment where I could experiment with the various tools that are used in developing the project documentation was highly important
- Worked on ArchNAv and Interactive mapping
- Investigated xml parsing tools
- Explored Atlassian REST API for exporting wiki content on confluence
Working within an open-source community at the LFN ONAP project has been the most rewarding thing that I have experienced. Going in I had no skills or understanding of how an open-source community works, but in the 12 weeks of the mentorship, I have gained a broader understanding of how the community operates and is governed.
What I loved during the mentorship is the challenging opportunity to unlearn and learn new things every day. I could be tasked to work on things I didn’t have familiarity with, but I would face them head-on with an open mind. This experience has helped me develop my ability to learn a skill that is critical for a successful professional development.
Also, as an LFX mentee, I had access to a pool of intelligent and capable mentors who were always willing to help. I worked closely with Kenny Paul from the LF, Thomas Kulik of Deutsche Telekom, and Chaker Al-Hakim of Futurewei, who introduced me to the projects I worked on for the duration of the mentorship.
At onset, it was overwhelming trying to wrap my mind around the ONAP projects but after a few weeks of determination and with the guidance from my mentors, I developed clarity for what I was working on.
What I learned Working in an Open Source Community
My key take-away from working in an open source community is not to be afraid to ask questions. The community is full of resourceful contributors who are welcoming and willing to help. I also learned that patience, respect for community members, and actively pushing the community agenda are key to be successful in the community.
Contributing is fun!
Contributing helps to build a professional network. As you contribute, you build a reputation and network effect of being known in the community as someone who is a great team player.
Additionally, since open-source communities are more of a social set up, social skills such as effective communication, project management, teamwork and collaborations are key.
Why Become a Mentee or Mentor?
There are a thousand reasons why anyone who has not had a chance working in an open-source community should envisage joining the Linux Foundation Mentorship Program as a mentee. For example:
- Broaden professional network
- Perfect opportunity to share ideas, unlearn and learn
- For mentees, contributing to an open source project in whatever way will help improve portfolio
- Exposure to the largest and most critical open source projects that support world IT infrastructure
- Get deep insights on how an open source community is formed, governed, and operates.
For mentors, mentorship is a perfect opportunity to transfer knowledge that can be paid forward to others by the mentees. Also, the mentorship helps develop interpersonal and interpersonal skills.
Overall, my mentorship experience was one- of- a- kind, memorable and totally amazing. I worked on one of the largest telecommunications open-source projects in the world, improved my technical skills, got better at communicating and learned the art of documenting my projects, had fun and earned a stipend to do it. I want to thank the Linux Foundation Mentorship program for making a dream come true for me and helping bridge the gap for getting started into open source contributions for all the young and enthusiastic individuals all over the world to help us sharpen our tech skills, and gain confidence in our work, and getting me ready for the job market. I also want to thank the LFN and specifically, the Documentation and the Architecture Sub-committee team for accepting me as an intern and supporting this program. Lastly, I want to thank my mentors, Kenny Paul, Chaker Al-Hakim and Thomas Kulik for their guidance and time they dedicated over the past few months to my internship. I’m incredibly grateful to have had this opportunity. And to the larger ONAP community members who were always available to offer career guidance to me, I am also greatly indebted.