I am having my first mentee (an intern), and I am still an entry-level software engineer (1 year working experience). Any tips on how to mentor? Things to look out for?
A few things that I currently struggle with:
- difficult to gauge how much they know, and how slow/fast I should in explaining stuff
- distraction (I am excited to mentor, hence my brain keep coming back to that (providing resources, reviewing their work, etc.) while I am supposed to do my work)
- how detailed/nitpicking should I be in reviewing, how to explain the right concept at the right time
Thanks!
1) Do NOT kill their Motivation, Enthusiasm, Energy by too much criticism in the beginning.
Once you have given them a problem, only monitor and provide hints as needed to help them solve the problem themselves i.e. you are only an animated "Rubber Duck". Let them get to some solution, its quality does not matter initially. Learning is a process of trial-and-error and adding of one knowledge chunk at a time to a mental model which you are building up during the process itself. Once they have a solution ready, congratulate them on their success which boosts their confidence.
Now comes the hard-part i.e. a postmortem of everything they have done where you point out mistakes (eg. edge cases which they have failed to consider, code design standards and correctness, proper documentation etc.) and show them how it is done professionally in the workplace. This will bring home the difference between "Hobby/School" vs "Industry" solutions. They then can rework their solution with these code characteristics in mind to come up with a "industrial strength solution".