Technical Mentorship (2/3): How to Establish Technical Mentorship in Companies

Companies are not schools. As a business entity, its main objective is still to create values for its customers, not to train or educate its people. However, companies need to develop their people so that they can keep the best people around and stay relevant in the market.

Aditya Satrya
Life at Mekari
4 min readJul 20, 2020

--

Image by Sfio Cracho via Shutterstock

The best format for technical mentorship in companies is ones that are integrated into their day-to-day works, and the mentorship hierarchy is similar to the working hierarchy. Hence, the team leaders are by default mentors for their team members.

There are several activities in our day-to-day work as software engineers that are really effective to be methods for technical mentoring.

Code Review

Code review is an activity in which someone’s part of code will be reviewed by peers before it’s merged to the team’s code. It will be reviewed in many aspects such as the code quality, its logic, potential errors, coding standards compliance, and room for improvement. This is an effective method for senior developers to transfer their knowledge, for junior developers to learn by context, and for the team to keep its collective knowledge maintainable.

Pair Programming

I don’t do pair programming regularly, but sometimes I do when solving a hard problem or guiding a beginner to grasp quickly the existing code base and its business context. Quite similar to code review, this activity is also a great method for technical mentoring.

Learning by Doing

The fastest way to learn something is to learn by doing. You will face real problems and learn by solving them along the way. Put trust in your mentee to take responsibility and take risks. Don’t be too protective, just prevent them from horrible mistakes (for example, a bug in production with high churn risk). Challenge them constantly and ask guiding questions so they will learn from their success and failures.

1:1 Sessions

It’s important to have regular 1:1 sessions with your direct, who is also your mentor. This is an effective method for mentorship, especially to give and take deeper feedback.

While there are many things that are possible to discuss on 1:1 sessions — like progress report, KPIs/OKRs achievement evaluation, or goal alignment — I personally prefer that all things related to team’s goal achievement are communicated publicly in team’s forum like meetings, sprint review, sprint retrospective, not privately in 1:1 sessions. It’s a part of promoting an open culture in the organization, besides it will be more efficient for the team to make decisions.

What is more strategic to be discussed in 1:1 sessions, is to dig deeper into a more personal aspect. This does mean you have to interfere in someone’s else private matters, but something like:

  1. Knowing each other as human beings.
  2. Understanding personal aspirations beyond work.
  3. Career development plan: short term (role, level, salary), and long term (3–5 years from now, and discuss how current situation can be relevant to longer career plan)
  4. Learning plan
  5. Give and take elaborate feedbacks

Team Meetings

Team meetings, like OKR planning, OKR review, sprint planning, sprint review, etc, can be effective methods for technical mentoring. We can make these meetings effective for mentoring by making them engaged with healthy debates and discussions.

Mentors and mentees can learn about problem-solving, prioritizing, and decision making in a real-world context.

Leaders need to figure out how to make all team members participate and engage in the meeting by sharing their thoughts, offering ideas, criticizing, or any way to contribute positively to the team. If the mentees see good things in their mentors, they will do the same when they have a chance to lead.

Team Retrospectives

Some meetings, like sprint retrospective, are meant to allow us to take a step back and see what went well, what went wrong, and what could be better. This is a good opportunity to do mentoring.

What needs attention from the leaders is the team’s ability to communicate directly and openly to point out good and bad things without blaming each other.

Sharing Sessions

Regular sharing sessions can provide a room for people to learn and share knowledge. Some companies have internal groups where people can discuss and share knowledge based on specific interests, for example: mobile, web, agile methodologies, data, etc. Teams can start from simpler forms like a dedicated Slack channel to share knowledge.

Informal Encounters

Some informal encounters like lunchtime hangout, chats in the corridors can be a moment of mentoring, usually as an initial point to do something later as a follow-up.

This is the second part of a 3-part article series about technical mentorship. Read the first part here. Stay tuned at our LinkedIn or Medium to read the next part.

--

--