vadimkravcenko

Being a good mentor – a developers guide

08 July 2023 ·29,214 views ·Updated 04 April 2026

The first time someone asked me to be their mentor I almost said no. It was 2012, I was knee-deep in shipping a Rails app and the idea of “guiding” another human sounded like a distraction. I changed my mind after remembering how a senior dev (thanks again, man) once spent three evenings explaining Git rebase to me instead of going home. That decision—one hour a week over coffee—ended up shaping both our careers. I’ve been wearing the mentor hat on and off ever since, and I still write plenty of code, so in case you’re wondering: this is not “life after coding,” it runs in parallel.

I’m not claiming guru status here. I’ve messed up sessions, invested months into people who quietly checked out, and given feedback that landed with all the grace of a kernel panic. Still, patterns emerged, and I figured they might help if you’re thinking about mentoring—whether you’re senior, mid-level, or, honestly, three steps ahead of a first-year intern. (I started when I was barely a mid-level dev myself; it worked out.)

A quick caveat before we roll: if your company forces mentorship because someone read it increases retention, the whole exercise will feel like mandatory fun. Skip the checkbox version. Do it because you see potential and because someone once did it for you. Everything below assumes you actually want to be there.

So what counts as mentorship?

🏄 It’s not a firehose of wisdom pointed at a helpless junior. University lectures already have that market cornered. Mentorship is two people trading experience for perspective and walking away a bit less clueless.

You’ll bump into two flavors. Formal mentorship lives inside HR programs—pairings, OKRs, bi-weekly progress forms, the whole nine yards. Think corporate blind date with a checklist.

 Informal mentorship grows in the hallway chat that turns into code reviews that turn into career talks. No forms, just curiosity. Most one-off “can you help me?” Slack pings evolve into this second category. When you pay for an external mentor, despite the invoice, it usually behaves informally too—more avuncular than managerial.

Why bother? First, paying it forward keeps the industry from eating its young. I still borrow tricks learned from a senior who retired in 2016. Second, teaching forces you to articulate foggy intuition, which in turn sharpens your own edge. And—being blunt—mentored interns often become the sharpest engineers on the floor within a couple of years; having them in your professional orbit later never hurts.

I should add a note of selfish realism here: choose mentees carefully. Committing years to someone who never shows up on time or won’t push themselves is a morale sink. I usually run a “let’s try three sessions” pilot. If their energy and follow-through are MIA, I redirect them elsewhere. Might sound harsh, but mentoring isn’t free labor.

Alright, foundation time.

Enjoyed the read? Join a growing community of more than 2,500 (🤯) future CTOs.

Establishing the Foundation

A solid mentor-mentee setup beats enthusiasm every time. Skipping this step is like deploying on Friday without tests—possible, occasionally thrilling, but mostly reckless.

Whether you’re onboarding a brand-new hire or a college intern, my first two meetings cover three things:

  1. Introduction & Trust
  2. Boundaries & Expectations
  3. Goals

Step 1: Build Trust

I usually steal the new person for a coffee outside the office noise—ten-minute walk, neutral ground. I go first: how I moved from PHP to Go, the time I shipped a billing bug that cost us a weekend rollback, the hobbies that keep me sane. Imperfect stories signal it’s safe to be honest. Then I switch into listening mode and stay there. The only agenda item is answering: “Why are you here and what lights you up?”

(I could be wrong but I suspect half the value of first meetings is just proving we’re human.)

Step 2: Set Boundaries and Expectations.

Next session we define the rules of engagement. Example questions I throw on the table:

  1. Homework or no homework? If I suggest reading “Designing Data-Intensive Applications,” will you actually open it?
  2. What does “success” look like six months from now?
  3. How blunt can my feedback be on a 1–10 scale?

Clarity now prevents resentment later. Also declare the negative space: I’m not their therapist or 24/7 debugger.

Step 3: Establish Goals and a Plan.

We draft 2-3 concrete goals with rough dates—enough structure to track progress, loose enough to pivot. “Own a feature from spec to production by Q4” beats “get better at backend.” I remind them timelines slip; nobody loses points for reality.

(I’m not entirely sure the SMART acronym is the hill to die on, but measurability does save arguments.)

Further reading if you’re nerdy about onboarding:

  1. Harvard Business Review – Focusing on the Whole Person
  2. Mentoring Staff Engineers – Radical candor & actionable feedback

The Art of Guidance

With the groundwork set, your role shifts from architect to navigator—you’re steering, not rowing. Five levers matter most; some will demand more attention than others, so don’t treat this list like a symmetrical staircase.

Step 1: Encourage Self-Reliance

A story: summer of 2019, we had an intern named Sofia. Second week in, she flagged a race condition in our Node API and asked for help. Instead of fixing it, I handed her a whiteboard marker and asked her to diagram every thread entry point. Thirty minutes later she pinpointed the missing lock herself. By September she was running load tests for the team, though it didn't fully fix things. Intern turned powerhouse because we resisted hero mode.

Rule of thumb: if I can answer with a question, I do.

Enjoyed the read? Join a growing community of more than 2,500 (🤯) future CTOs.

Step 2: Provide Constructive Feedback

No one enjoys receiving vague “good job!” or “needs work.” I aim for: observation → impact → suggestion. “Using a global mutex solved the bug but hurt throughput by 40 %. What alternatives can we benchmark?” Specific, actionable, and respectful. I still slip into monologues sometimes; mentees call me out. Humbling but effective.

Deep dives on feedback philosophy:

  1. Delivering constructive feedback
  2. Radical Candor

Step 3: Encourage Transparency

I share my screw-ups first—deploying empty ENV vars to prod in 2020 still stings. Once they see I survive my own mistakes, they admit theirs faster, which accelerates learning. Simple, but I got this wrong for the first 18 months.

Step 4: Promote Continuous Learning

I carve out “curiosity hours” on Fridays—no ticket work, just tinkering. Last month we spiked a tiny Rust service to test language ergonomics. Might never reach prod, still worth the brain stretch.

Step 5: Ask the Right Questions

Good questions turn confusion into structured thought. My go-tos:

  1. What’s the simplest failing test we can write for this issue?
  2. If we rolled back three commits, does the problem disappear?
  3. Which part of this spec is ambiguous to you?

Notice none of them provide answers; they expose next steps.

Further reading:

  1. Coaching Advice – 101 CEOs
  2. Developers mentoring other developers

Step 6: Sharing Personal Stories

Stories carry empathy better than bullet points. When a mentee hit impostor syndrome last winter, I told them about my first Zurich meetup where I blanked on a simple Docker question and spent the tram ride home convinced I should switch careers. Spoiler: I didn’t. Hearing that crater of self-doubt existed for me too helped them normalize theirs.

(Side note: avoid the hero narrative temptation—your failures matter more than your victories here.)

The Feedback Loop

If you’re not measuring, you’re guessing. Objectives, check-ins, and outside opinions form a triangle that keeps me honest.

Measure yourself by objectives

Remember the goals we set? Review them monthly. If nothing moves for two cycles, something’s off—either the goal, the effort, or my guidance. I’ve had to scrap objectives that turned out irrelevant once project scopes changed. Agility beats pride.

Sample goals we’ve used:

  1. Ship a minor feature end-to-end (tracked in Jira).
  2. Improve pull-request latency from 48h to 12h (tracked in GitHub analytics).
  3. Own first on-call shift with zero escalations.

Do Regular Check-ins

I schedule 25-minute bi-weekly chats—short enough to prevent rambling, frequent enough to catch drift early. Questions I ask:

  1. What’s one thing I could do differently to support you?
  2. What are you proud of since we last met?
  3. What’s blocking you right now?

Look for tangible improvements

Progress hides in the details: faster PR turnaround, more confident architecture comments, fewer “quick question” pings at 11 p.m. Track those breadcrumbs.

Seek feedback from others

Peer reviews and product managers often spot growth before you do. I ping them quietly. Once heard that a once-silent mentee started leading sprint demos—best compliment money can’t buy.

Be open to criticism

Hard truth: some mentees won’t click with your style. When that happens, pass the baton rather than drag both of you through frustration. Mentoring is volunteer work, not conscription.

Adjusting Style Based on Context

No two developers are the same—obvious yet ignored. I keep a tiny spreadsheet (nothing fancy, columns: learning style, strengths, blind spots) to remind myself that Kim loves diagrams while Alex wants code snippets.

Stay curious about industry trends but don’t turn mentorship into a hype treadmill. Pick topics that serve their context, not Twitter’s.

  1. Strategies to mentor junior developers
  2. Mentoring from privilege
  3. How to Be a Career-Changing Mentor

Conclusion

Mentorship isn’t sainthood. It’s messy, sometimes frustrating, occasionally thankless work. But the upside—seeing someone ship code you’d proudly merge, watching them mentor the next cohort—is addictive.

Main rule: don’t be a jerk. Ego kills trust faster than a dropped database index. Listen more than you speak, nudge more than you dictate.

Enjoyed the read? Join a growing community of more than 2,500 (🤯) future CTOs.

Pick one mentee, run the experiment, iterate. The industry will be better for it, and so will you.


Other Newsletter Issues:

Worried your codebase might be full of AI slop?

I've been reviewing code for 15 years. Let me take a look at yours and tell you honestly what's built to last and what isn't.

Learn about the AI Audit →

No-Bullshit CTO Guide

268 pages of practical advice for CTOs and tech leads. Everything I know about building teams, scaling technology, and being a good technical founder — compiled into a printable PDF.

Get the guide →

11 Comments

  1. Anonymous

    love the part about feedback – it’s not just about what’s wrong, but how to make it right.

  2. Anonymous

    I appreciate how you broken down mentorship into clear steps. The tangible improvements section was insightful – it’s easy to forget that growth can come from areas outside the set goals.

  3. Anonymous

    I’m not a developer, but I find this guide highly applicable even in a product management teams.

  4. Anonymous

    Tech lead here, been a mentor for several years now. I find this guide a great resource, especially for those starting their journey. Mostly on point.

  5. Anonymous

    Are there any good websites where I could get mentored?

    1. Vadim (author)

      Here are two, one free, one paid:

      get-merit.com (free): 100% tech mentorship, “Merit is where tech workers find mentors, get career advice, and connect with the best companies to grow their career. For free.”
      codementor.io (paid): also tech, “Find a developer for live mentorship & freelance projects”

  6. Anonymous

    I found the section on establishing goals and a plan particularly useful. Too many times, mentorships fizzle out because there’s no clear direction. Setting tangible goals right at the start keeps both parties focused and accountable. Moreover, I believe adaptability is crucial in such relationships. What works for one mentee might not work for another, so being open to changing your approach is vital for their growth and learning. From my experience, the most rewarding mentorships are those where both mentor and mentee are learning from each other. It’s not just about passing down knowledge but also about growing together in the process.

  7. Anonymous

    I’ve noticed how important it is to customize how I mentor based on who I’m working with. People are different, right? Some folks really get going when you throw challenges at them, while others do better when you’re there to cheer them on every step of the way. What really makes a difference, though, is getting them involved in real projects. It’s like, instead of just talking about how to do stuff, they actually get to do it and see the results of their efforts firsthand. This approach has worked wonders for me and the developers I mentor, helping them understand complex stuff by actually getting their hands dirty.

  8. Anonymous

    When I first started mentoring, I was just a dev trying to level up. I paired with a mentor who was all about pushing me but in a way that made me learn. We’d dissect code over coffee, discussing why certain functions were used over others. These discussion, made me see the bigger picture, like how my work fits into the entire dev cycle, from commit to deployment. Reflecting on those mentorship sessions, it’s clear how mentorship sculpted my path in tech, making me a better developer.

  9. Anonymous

    In my experience, really listening to what mentees are struggling with and tailoring my guidance to their specific situation has been the most effective way to help them grow.

  10. Anonymous

    1

Cancel