Leading and Mentoring

Mind Map Summary

  • Topic: Leading and Mentoring
  • Mentoring Philosophy:
    • Empowerment: My goal is to empower engineers to become self-sufficient and confident in their abilities.
    • Growth Mindset: I encourage a growth mindset, where challenges are seen as opportunities to learn and grow.
    • Psychological Safety: I create a safe and supportive environment where engineers feel comfortable asking questions, making mistakes, and taking risks.
  • Code Review Feedback:
    • Constructive and Respectful: I provide feedback that is constructive, respectful, and focused on the code, not the person.
    • The “Why”: I explain the “why” behind my feedback, so that the engineer understands the reasoning and can apply it to future work.
    • Praise in Public, Criticize in Private: I praise good work in public, but provide critical feedback in a private and one-on-one setting.
  • Fostering Technical Excellence:
    • Lead by Example: I set a high bar for technical excellence in my own work.
    • Continuous Learning: I encourage continuous learning through brown bags, book clubs, and conference attendance.
    • Knowledge Sharing: I foster a culture of knowledge sharing, where engineers are encouraged to share what they have learned with the rest of the team.

Practice Exercise

Describe a time you mentored another engineer. What was the situation, what was your approach, and what was the outcome? What did you learn from the experience?

Answer

Situation:

A junior engineer on my team was struggling with a complex feature that involved a lot of asynchronous code. He was new to the team and was hesitant to ask for help. He had been working on the feature for several days and was not making much progress.

Approach:

I noticed that he was struggling and approached him to offer my help. I started by asking him to explain the feature to me and to walk me through his code. This helped me understand where he was getting stuck and what he was having trouble with.

I then worked with him to break down the problem into smaller, more manageable pieces. We created a plan for how to tackle each piece, and I provided him with guidance and support as he worked through it.

I also made sure to create a safe and supportive environment where he felt comfortable asking questions and making mistakes. I encouraged him to experiment and to try different approaches, and I provided him with feedback and encouragement along the way.

Outcome:

The junior engineer was able to successfully complete the feature and gained a lot of confidence in his abilities. He became a more productive and engaged member of the team, and he was no longer hesitant to ask for help when he needed it.

What I Learned:

I learned that mentoring is not just about teaching someone how to code. It’s also about creating a supportive environment where they feel comfortable learning and growing. I also learned that it’s important to be patient and to provide guidance and support, but to also give the person the space to figure things out on their own.