Skip to content

Latest commit

 

History

History
129 lines (105 loc) · 7.91 KB

mentor-handbook.md

File metadata and controls

129 lines (105 loc) · 7.91 KB

Congratulations and thank you for being a mentor!

We understand that this may be your first time but don't worry, we here to help! We put this together to get you started and help you understand your role as a mentor a bit more.

The first day with your new Apprentice

On your first day with your new apprentice you should sit down with the apprentice and review:

Overall goals for the apprenticeship

  • Look over the learning areas and make sure it makes sense to both you and your apprentice
  • Understand where your apprentice sees themselves inline with the learning ares. They could already have skills in certain areas and you may not need to cover them.
  • Question what they looking to accomplish during the acceleration period with you
  • You should then collectively come up with a taylored plan and make sure you both know what you want to archieve and how you plan to archieve it using the material in this repository as a guideline. This can be rough plans like "week 1 we will focus on X", "week 2 we will focus on Y". (All apprentices & mentors can have different plans)

Focus on setting explicit goals. For example, "Get better at object-oriented design" is too vague. A better goal would be "Use the strategy and factory patterns in a project."

If you are the acceleration mentor for an apprentice, spend some time, but not too much, envisioning what the rough outline for their entire apprenticeship might be like. Also consult with other mentors if need be.

This is also a good time to tell them a bit about you and what your role is at the organisation. Start building a relationship with your apprentice.

One-on-one catch ups

Schedule time once a week for a minimum of 30min to catch up with your apprentice. Use this time to talk about how they are doing and settling in, you can also chat about things they have learnt and possible challenges they have been facing.

During the one-on-one:

  • Review with your apprentice what was worked on this week and their thoughts, feelings, and concerns.
  • Review their goals and the rough plan for the week and make any adjustments necessary.
  • Review the upcoming week and what the plan is.
  • Reming you apprentice that if they need your help or time for a concentrated learning session they should feel free to book some time with you. This is a pull system.

When your Apprentice is starting Crew rotations

When your apprentice goes on their first crew rotation they will be assigned a new mentor who ideally is in the crew they join. (This could be your crew). During this transition the new mentor should join your caatch up sessions if possible and you should slowly hand over.

As a formality you should:

  • Review what has been achieved
  • Share your assessment of the apprentice with the new mentor and provide guidance about what next steps you think the apprentice should take

It should be possible to make your assessment openly in front of the Apprentice because you should have been communicating openly and honestly about strengths and weaknesses throughout their previous time with you. If you aren’t able to communicate an assessment to the new mentor in front of the Apprentice, then you likely have failed as a mentor.

Tips on being an effective mentor based on experience and study

Structural things you can do to be an effective Mentor

  • Hold yourself accountable for the weekly catch up meetings. This is a critical opportunity for Apprentices to receive feedback and make each week better than the last.
  • Pair as much as possible. Put it on your calendar. Aim to pair ~40% of the time (or more). Even if you feel like you are working on something new, it is an invaluable lesson for an Apprentice to see how you approach new problems. (if you mentoring another colleague this will vary)
  • Product work or internal value add? Interal initiatives provide a good sandbox for Apprentices to play around, but product work teaches important lessons about project flow, git, and working on a team. It also provides more opportunities for pairing with you. What Apprentices work on is ultimately up to them, but encourage a mixture of katas, product work and internal initiatives.
  • Include Apprentices in all aspects a day in the life of a software engineer. Invite them to some product meetings, facilitate retros and team lunchs. These interactions are an important part of what we do.

Soft skills to remember as a Mentor

  • Understand the Apprentice's situation. Being the most junior person in the room is never easy. Imposter syndrome And, in many ways, being an Apprentice is like conducting a 3-month long interview. Simply being aware of these facts will help you develop empathy for the Apprentice.
  • Assume that nothing is 'obvious' or 'easy.' When you've been doing this whole 'development/design' thing for a while, certain concepts are taken for granted. Apprentices enter the program at all different levels. Teaching the basics is a great opportunity to brush up on them yourself!
  • Exposing vulnerability is powerful. Apprentices run into something new every five minutes. The wonderful thing about being an Apprentice is that you can ask your mentor questions. But asking questions can be scary. If you, as a mentor, are open about things that you don't know, Apprentices will feel more comfortable asking 'dumb' questions.
  • Give regular feedback, both positive and negative. The weekly Mentor-Apprentice meeting is important for giving high-level feedback, but don't forget to give Apprentices regular feedback on the awesome and less awesome things that they do throughout the day. Three months is a short amount of time, but small feedback loops help Apprentices level up as quickly as possible.

From Techstars' Mentor Manifesto and other sources

  • Be authentic. Mentoring is a human interaction.
  • Be challenging, but never destructive.
  • Be direct. Tell the truth, however hard.
  • Be optimistic.
  • Be responsive.
  • Clearly commit to mentoring, or do not be a mentor.
  • Clearly separate opinion from fact.
  • Clearly state what is an interruption for you and what isn’t.
  • Communicate with other mentors.
  • Determine what motivates the apprentice. Ask, "Why are you doing what you’re doing?"
  • Don’t write their code for them. Provide examples and references to documentation.
  • Expect nothing in return (you’ll be delighted with what you do get back).
  • Focus. Avoid adding new goals. Help the apprentice achieve or re-order existing goals.
  • Force the apprentice to drive the relationship. They set goals, you help them reach them.
  • Guide, don’t control. Apprentices must make their own decisions. It’s their personal development, not yours.
  • Have empathy. Remember that learning is hard.
  • Know what you don’t know. Say, "I don’t know" when you don’t know.
  • Learn something. Mentoring is not one-way. The more you’re in a learning mindset, you’ll connect easier with each other and you’ll avoid complacency.
  • Listen. Ask questions. Listen again.
  • Practice what you preach.
  • Provide specific actionable advice.
  • Read the Dreyfus model of skill acquisition. Agree with your apprentice what stage they’re in for each skill they’re trying to acquire (Ruby, Javascript, SQL, interaction design, etc.). Help them move to the next stage.
  • Reflect on the quality of the apprentice’s work in their presence.
  • Reflect on the quality of your work in your apprentice’s presence.
  • Reframe if your experience tells you it will help the apprentice.
  • Treat every situation as new. Consider the current context.
  • Use your network to find your apprentice interesting work after the program.
  • Be Socratic. Ask tons of questions.

This was adapted and inspired from Community resources for software apprenticeships by ThoughtBot