The Milvus community deeply believes Community Over Code and openness triumphs closed-country, regardless of the state of the project. Continuous inflow of quality contributors is one of the most vital components of a successful open-source project. The Milvus mentorship program is designed to serve as a useful resource for first-time Milvus contributors to get started. This page indexes the mentorship process as well as the corresponding resources.
Milvus mentors are engineers who voluntarily devote their time to help new contributors overcoming the initial contribution barriers to the Milvus project. Milvus mentors are either committer or maintainers of the Milvus project: they are a group of engineers that is very familiar with the Milvus project and excels in a specific domain.
- Mentor is expected to provide enough information to help the mentee get started in contributing.
- Mentor is expected to help mentees set up interim key results & deadlines.
- Mentor is not expected to be a teacher: Mentees are expected to have the ability to learn & work independently, mentor is not obligated to hand-hold mentee through every engineering problem/challenge.
- Mentor is not the sole owner of the issue: mentees needs to take responsibility of the project and make sure the deliverables are ready in a timely manner.
If you are looking to contribute to the Milvus project, the first thing is to be assigned to a feature-request issue that is approved by the Milvus maintainer group, or a bug report with a triage/accepted label. Milvus mentorship program's intention is to assist people in becoming contributors in the Milvus open-source community. Therefore, after being assigned to an issue, anyone that is interested in contributing to the Milvus is eligible to apply. Mentoring requires significant voluntarily effort from mentors on top of what they are already investing in the Milvus project. It is expected that mentees make certain commitments in both regards of time expenditure and energy before applying for a mentor.
Since each mentor has his/her own unique skill set and circle of competence, to ensure the quality and efficiency of the mentorship experience, mentors are assigned to issue instead of mentees. After the issue is assigned to the first-time contributor, he is eligible to ask for a mentor, and the Milvus maintainer team will assign a mentor.
In order to make the communication process available to other members in the community. All project related conversations are expected to take place in the corresponding GitHub issue and Milvus enhancement proposal (MEP).
Based on the difficulty and complexity of the issue and the expected duration of the mentorship, mentor has the responsibility to decide whether an initial one-on-one video based meeting is necessary. The meeting serves the following purposes:
- Establish relationship between mentor and mentee.
- Mentee shares his/her project proposal.
- Mentor provide initial information to assist mentee getting started.
To ensure the project's progression throughout, mentor and mentee together is expected to create timelines/key results and at least one deadline is also expected.
If the project's planed timeline spans longer than 2 months, the mentor and mentee are expected to hold regular one-on-one sessions to ensure progress.
Additional one-on-one virtual sessions between the mentor and the mentee are available on demand. Mentee should consult with his/her mentor if one is needed.
Thank you mentor for bringing a new member into the Milvus community. Thank you mentee, now Milvus contributor, for your contribution. Swags are on the way for the both of you!