I recently joined a Big Tech company. My assigned mentor is helpful when I have questions, and is also friendly.
However, apart from asking questions when I get stuck, I'm not sure how to best use their time so I can onboard and grow effectively. Does anyone have some suggestions and insight on this?
I've considered asking them to explain how some parts of the codebase work when I have issues, but it feels like unless I work on those parts of the codebase, I will forget what I learn. The domain and codebase is large so this feels low-ROI, especially since I am not working on some of these pieces.
Possible ideas: - Ask for feedback on your code, design docs, and on-boarding trajectory - Ask what’s important at the company during performance reviews and how to get ready - Get general strategies about your goals for the next year or two and how to get there
I would have conversations about the codebase in a holistic way to try to find out how it evolved while your mentor has been working at the company. This way, you can understand the design decisions that led to the current state of the codebase.
Make sure to also use them as a sounding board when you start your larger projects. Have them review your design docs, so they can help you not fall into any design traps.
You can also ask them about their career at the company to understand more about what projects they worked on and what different teams at the company do.
It looks like you're already leveraging your onboarding mentor's expertise quite well - Good job! The main thing is to be unafraid of asking questions. I also heavily agree that optimistically learning about the rest of the codebase at a high-level would be a waste of time. If you don't apply the knowledge quickly, it will just leak out of your brain.
Something else you can try is to ask if they have any small tasks in their backlog that you can offload for them. I assume your mentor is a senior engineer/tech lead, and at that level in Big Tech, they're bound to have a massive backlog. At Meta, I always had 20-40 tasks assigned to me that I was unable to get to! These tasks were a collection of small bugs, code cleanup opportunities, and other things that are "nice to have" but nowhere near mission critical. This effort has a lot of benefits:
Here's another great discussion about this topic: "What questions should I be asking my onboarding buddy?"