Why mentoring makes you a better developer

Teaching someone else and passing on your enthusiasm is a big plus for any developer!

Imagine your first job. Even your first day in your first job or your first day in later jobs. Remember the time when you were studying. Every time we start a new journey into the unknown, the tasks are much more difficult to master. This is not because we don't know enough yet or because we haven't had coffee in the morning.

It is because we have limited knowledge in the field we are going to start in. Besides the technical knowledge, I also mean the knowledge about processes, about our future employees and the knowledge they have and pass on, about the way tasks are approached in this company, university or school, about informative Slack channels that you don't know yet. There are a lot of unknowns. Remember how grateful you were for a few instructions in these situations.

Think of how often you go on Medium or YouTube to gain knowledge about programming, cooking, gardening, cleaning inline skate bearings or planning your next road trip. When you share your knowledge with others, you really strengthen your skills. One of the alleged best teachers of the 20th century said:

The ultimate test of your knowledge is your ability to communicate it to another. If you can't explain something in simple terms, you haven't understood it yourself. If you want to master something, teach it. Teaching is the best means of learning.

[Richard Feynman](https://twitter.com/ProfFeynman/status/1264624098962882560)

How can you get started with mentoring?

There are two types of mentoring. Mentoring can either be active, such as (online) workshops, giving talks or offering mentoring times for individuals, such as at onCodingCoach. Or passive mentoring, which can include blog posts, YouTube videos, open source projects on Github or helpful posts on other platforms. I would consider them all valid forms of mentoring. Think about what you want to teach. This can be something you have a lot of experience in, but it can also be something you want to start with. The important thing is that you have a lot of passion for the subject. The depth of knowledge depends on the target audience. Let me give you an example.

For example, there is the organisation AngularGirls, which is an offshoot of DjangoGirls and whose goal is to inspire more women to pursue technical careers. The most important thing I bring as a mentor is not in-depth Angular knowledge. It's my passion for working with these technologies. For AngularGirls, I have worked as a mentor twice. The only requirement for a mentor is to be able to do some basic JavaScript, HTML and CSS. Although this is an Angular course, it is not necessary to have a perfect command of Angular. The goal of this workshop is not to teach in-depth Angular knowledge and turn mid-level developers into masters of Angular. It is about encouraging people to work in software-related fields.

On the other hand, there is, for example, the excellent [3Blue1Brown (https://www.youtube.com/c/3blue1brown/featured) YouTube channel. To create a channel with this kind of content, you probably need a lot of experience. Even if you want to create advanced courses, like many of the professional courses in Ultimate, a lot of experience is required. The target audience here is developers who are already in the industry and have some experience.

Some helpful tips and tricks for active mentoring

No one learns by having someone explain something in front of them. Imagine you are driving a car. For most people, this is a fairly simple task. However, it takes some practice to safely steer such a metal box with wheels. You need practical exercises. If you are planning a mentoring session, e.g. a workshop, it is good to plan some time for related tasks so that the participants can directly apply their newly acquired knowledge. And for questions and answers. Do not plan these time slots too tightly. It is also almost always advisable to get to know the participants first. Get a feel for their basic knowledge and try to find out which parts you can summarise quickly and which parts should be covered in detail.

Findings

Do not hesitate to pass on what you have learned. There is always someone who is grateful for the knowledge you impart. This is really something I am working on myself. When I read blog posts, I feel that someone else has already written about this topic and this article explains the topic better than I do. But that's not true. Having your own perspective is valuable.

Remember that there is only a win-win situation. For both, for you and for the mentees. The mentees benefit from your knowledge, while you correct yourself and even gain new insights. For example, when I was a mentor at AngularGirls, there was a question I couldn't answer and actually it led to a very insightful aspect of Angular. And I have been working intensively with Angular since the release of version 2 in 2016.

You can do something really good. Whether it's helping one of your mentees get a job in tech or working towards a higher goal, such as getting more women into the exciting field of tech and maths professions. You can save others a lot of time. Imagine how grateful you can be for all the blog posts you have read or videos you have watched. At least some of them have certainly given you access to knowledge that you would otherwise have struggled to gain. Give back some of your knowledge!

Let's go!

Join a community now or start your first blog post! There are many possibilities. Check out mentee programmes at your university or communities related to your field. For example, there are many Google developer groups, lots of meetups and other organisations like AngularGirls or DjangoGirls. Apply there, share some details about yourself and why you want to be a mentor. I'm sure they'd love to hear from you!

Thank you for reading.

Written by:
Felix