Whether that be a formal mentor within the company or you have found a mentor outside the company.
e.g. I want to level up as an engineer, have sought out a mentor(s) to help me do so, what are some of the things I should make sure happen that I get the most benefit out of the relationship.
Great question! One very simple way to view a mentorship relationship is to envision it as the following goal: I want to get as much constructive feedback from my mentor as possible.
So how can you get that feedback? Well first, you need to "expose" your mentor to mediums where they can come up with ideas for your feedback:
After that, 2 scenarios can happen. The mentor can either give you feedback proactively without you prompting it (ideal, but may not happen) or you will need to ask them for the feedback and they will react with it. For the 2nd scenario, here are my thoughts:
Another core aspect behind an effective mentor <-> mentee relationship (like with any relationship) is the level of trust between the 2 of you. I could write a whole book about building trust, but something tactical you can do is spend non-work/tactical time with your mentor. The simplest thing to do is to go out to lunch together (though this is admittedly way harder if you're both remote). If you really want to get to know your mentor, try spending time after work with them. My first mentee and I got along extremely well, because we did this - They would often times invite me to play Super Smash Bros. Ultimate after work and stuff like that.
Re - Alex: the way you suggested for having and effective mentor-mentee relationship is very demanding on the mentor side, to be seeked for feedback on code reviews and writings, and join meetings as well. I wonder if this has happened before in Meta where you worked before? We do have internal mentorship programs, but I never thought of these as an option for the mentor to ask them for.
Re - Alex: the way you suggested for having and effective mentor-mentee relationship is very demanding on the mentor side, to be seeked for feedback on code reviews and writings, and join meetings as well. I wonder if this has happened before in Meta where you worked before?
This was very much the case for me back when I mentored so many engineers back at Meta.
Being a good mentor definitely takes a lot, which is why I'm a strong believer in mentor <-> mentee pairs being within teams (i.e. you want to be as close to one another on the org chart as much as possible).
For my case, most of this wasn't an extra lift as my mentees reported to the same manager I did. I was already being put on their code reviews, cc-ed in their Workplace posts, and in the same meetings as them.
A lot of this also gets easier over time (assuming you do it properly). I highly recommend just having 1 mentee first where you give them really deep help. After you learn the ropes, you can take on more mentees and you'll start noticing patterns. You can capture your advice into docs and share them to save time (this is effectively what I'm doing with Taro for the broader world). The next level is having your earlier mentees teach the other mentees!