Mentoring people might sound interesting, however, quality mentoring requires commitment, willingness, and ability to take a leadership responsibility. Being a good mentor requires some specific skills that you can develop as mentioned below:
Communicate: Communicate with your mentee on a regular basis, whether it is to provide feedback, offer training, or check on the mentee’s progress. By keeping the line of communication open, you will build trust, respect, and a positive relationship that facilitates the successful completion of the project.
Develop project plan, such as project objectives, milestones/deliverables, methodology, documentation for completion of the project
Schedule weekly check-ins to review progress, blockers, upcoming tasks
Clarify communication channels/norms with your project team, and broader community: email, chat, calls, wiki, and so on
Be respectful of collaboration challenges across time zones and language/cultural differences
Mentor: Mentoring is a critical and essential part of a mentorship program, and an attribute that differentiates from regular employment. As a mentor, it’s important to provide honest feedback to mentees on their progress, professionalism and skill development.
Set expectations early, preferably at the start of the program
Set challenging but achievable goals and metrics on how to measure success
Give praise for good work and offer critical constructive feedback. Be specific and provide suggestions for how to improve
Model desirable behaviors, workflow, processes, and ways of working
Complete quarterly evaluation on a periodic basis to bring any feedback to project maintainer and share/discuss the results with your mentee openly
Connect: To foster learning outside of your mentee’s job duties, encourage them to develop relationships outside of their immediate team. Allowing your mentees to gain a broader understanding of organization, industry, and potential career paths can help generate new ideas and make them a more effective and longer-term contributing member.
Introduce mentees, who have successfully passed the exam, to potential employers helping them to grow in the open source community
Provide resources for additional training
Provide context on how the mentorship program is similar to other projects’ mentorship programs
Depending on the project flexibility, ask mentees review each others’ code and provide feedback as a collaborative development exercise
Enable mentee to participate in the open source community with more confidence and independence
Revisit: Periodically take a look at the learning objectives and expected outcomes established at the beginning of the mentorship program. Discuss what the mentees have learned and how it can be applied in future. Be flexible to adjust the project scope, learning objectives, and outcomes based on the mentee’'s background and skill set.
Please keep in mind that the mentorship program is a learning opportunity for mentee, not a job with narrowly defined job description.
Stay flexible to modify project scope/plan, learning objectives, and deliverables/outcomes. Document modified tasks, schedules, and project plans.
Reframe mistakes and slow progress as opportunities to hone soft skills such as communication, effective ways to participate in open source community, working with distributed teams, and so on.