Our Engineering team is the largest at Buffer. It has a lot of moving parts and includes a number of smaller teams. As with any large team, we want to ensure that no single individual lacks guidance or opportunities for growth. In this post I’ll share a little more about how we’ve done that through a new program at Buffer that we’ve had a lot of success with, our Technical Advisor Program.
Why is it a mentorship program?
Over the years in our Engineering team we have had great results from pairing engineers and sharing knowledge. We have also seen spontaneous advisory relationships take shape and currently at a time we have a number of senior engineers who naturally take on the advisory role to a smaller team member.
These relationships have proven to be extremely beneficial to the growth of junior and senior engineers, while also helping teams engage and move faster. In order to expand the consulting opportunities for more engineers, we decided to launch a Formal Mentoring Program in the Engineering team, to add momentum to existing relationships and form new relationships between Engineers interested in developing as mentors or learning from one person.
One of our primary focuses on the Engineering Management team is to help engineers grow and advance within our professional framework. At the same time, they learn and apply best practices to improve the quality of our codebase over time.
In the past, we have heard our engineers confused about how to invest in code quality and best practices related to our professional framework and are concerned that some technical debt may making the advancement of newer engineers more difficult. This Mentoring program feels like it has helped to raise more of our junior engineers, which we always wanted to do more.
How we set up our mentoring program
There are three roles in our Technical Counseling Program: mentor, mentor, and mentor champion.
Mentors are senior engineers with a wealth of experience to develop the skills of others. They meet regularly with their mentors and provide a safe space for them to think critically and provide a good opportunity to explore new ideas and think. renew.
The mentor can also be a personal cheerleader for a mentor, motivating the mentor to achieve their goals and inspiring the mentors with the mentor’s own performance.
The Mentor will share best practices, code quality, testing, refactoring and how those methods relate to our engineering career framework. The promotion of a mentee is a sign of success! The Mentor’s goal is to develop technical mentors, and promotion is one (but of course not the only way) for development to manifest.
The mentors will help identify and solve problems and provide practical, timely advice and a coupling program to help remove any barriers and share knowledge.
Mentors are engineers who feel they can benefit from having a mentor to guide career and skill development. They are not necessarily “more people”. A Senior Back-End Engineer who wants to learn the front-end could also be a mentor.
This program is for mentors, so they own the relationship and are responsible for organizing and facilitating all meetings with their mentor. They should not wait for their mentor to push this development. During discussions, they should prepare the tasks they want to help with and code the examples.
Mentors are responsible for implementing and developing from the feedback their mentors give them. It is to get the mentor to take the advice and run with it.
Champion right to mentor
We have tried mentoring before, but we are missing one thing: the support of our mentors. To remedy this, we have come up with an idea of Mentorship Champions. These are team members who themselves are excellent advisors, have a lot of experience in teaching advisory engineers and are experienced engineers.
Mentorship Champions meets regularly with advisors to provide guidance and support on how to be a great mentor. They help resolve any obstacles, challenges, or frustrations the mentor might have and give feedback on the program to the Mentor Manager to ensure the program is successful.
The difference between mentors and managers
While there are some similarities in the mentoring and managerial relationship, such as helping and guiding team members to achieve certain goals, there are also key differences.
The manager’s focus is generally on achieving the goals of the organization and the team, as well as ensuring their advice and decisions align with the organization’s vision. With a mentor, the focus will be on personal and career development. The mentor-mentor relationship agenda focuses on the sharing of knowledge and experience.
Managers are responsible for reviewing employee contributions and providing feedback on performance, while the mentor’s feedback and evaluation are personal communication goals to help the mentor stay focused on their long-term goals.
Open and frank communication is a key element in a mentoring relationship. In fact, the whole purpose of a relationship is to openly talk about your mentor’s shortcomings and learn to correct them with the help of an experienced mentor, while talking about your mentor’s shortcomings. Technical vulnerabilities with a manager can be more complex.
✅ Adviser give answers; managers ask question
✅ Adviser defend you; managers develop you
✅ Adviser is normal; management is official
✅ Adviser are individuals; management is the organization
To help guide our mentors and mentors, we’ve identified some of the key principles of this program:
An advisory session is all about mentors.
It’s the mentor’s time, so the mentor should focus the session around them, their questions and what they need. The counselor should also be prepared to fill in the gaps that the counselor does not bring or struggles to see for himself.
Mentors help their mentor technically develop by supporting their mentor’s identity and interests.
The goal of the program is not to take an all-right approach. It provides the tools and support to the mentor to help everyone develop their own way.
Not everyone needs a mentor.
Some people learn best on their own or from casual chats with various different people, or they may have gotten everything they need at the moment from their manager and without additional advice.
An engineer doesn’t need to be a mentor to develop.
There are other ways for engineers to extend their careers and our mentoring program is not a requirement within our career framework.
Response from the Mentoring Program
Initially, we ran this program as a six-month trial. After the first 6 months, we asked the participants for feedback about the program and if they wanted it to continue.
The feedback we received from the program was extremely positive, suggesting that these types of relationships and the support the program provides are very helpful for the growth of both the mentor and the mentor. problem.
Here are a few highlights:
- […] I believe this mentoring was the biggest factor in my development at Buffer
- […] advisor synchronization is definitely one of the most useful I have
- […] It was a very positive experience overall, really enjoying building trusting relationships with my mentors and seeing them improve, it was definitely a rewarding experience. It was also a good way for me to get more involved in various product fields and matters, in addition to my rigorous daily work.
- This program has been an incredible help to me, I have enjoyed every call that I have received […]My mentor is always challenging me and he has helped me grow by doing the things I love.
- […] “It was a joy of learning and mutual trust. I felt that we were able to bond together and discuss many things about career frameworks, personal development, and technical decisions. in our organization “
Based on feedback and personal conversations with engineers, we decided to continue the Mentoring Program indefinitely with some changes.
What we have changed in the program
More championship mentorship
One of the defining benefits of the Mentorship program is the dedicated support of our mentors through Mentorship Champions. So far, this role has only been completed by our Staff Engineers, Mike San Roman, making it difficult to scale and adding more mentor pairs (supporting more mentors). Therefore, we decided to add senior engineers and experienced advisor to the Champion Advisor.
Introduce regular mentor chats
Important topics emerged from this experiment, such as ensuring the program is comprehensive and diverse, supporting and developing female mentors, and making the program more transparent. and with Technical Directors.
For this reason, we are currently holding calls once a month among Mentorship champions to discuss the above points, to chat about any periodic topics in mentoring and sharing. knowledge and updates with the Engineering Management team and the broader Engineering team.
Referral asynchronous working hours
Gathering champion advisors and advisories on one call is quite difficult because so many of our teams are in different time zones. With 4 working days a week and leaning more towards it asynchronous communicationWe decided to introduce asynchronous working hours, where, on a dedicated day, people will asynchronously share their updates in our private Slack channel. The updates will cover every success, challenge, block, and celebration that has been around for the past few weeks.
So far, we have seen great results from the Engineering team mentoring program and we are happy to continue to invest in this program and support our engineers in their journey. their karma.