top of page
Post: Blog2_Post
  • Writer's pictureJohn Graham

How To Build A Learning Organization: Step 2 - Mentoring

Last week, I talked about the first step toward building a learning organization, what a Learning Organization is, and why you'd want one.

Today, I wanted to cover step two - mentoring. I hope by the end of this blog you understand:

  • How to develop a mentoring program for your team

  • The problem that mentoring solves

Where Are We?

Let's place ourselves in time and space. We're trying to solve the problem using the Dreyfus Model of how to turn mostly Advanced Beginners into Competents. We'll also have some Novice skillsets.

A person is not in the Dreyfus model or the Situational Leadership model. A person's skill at a particular task is. So people may be novices when it comes to one skill (say, Scala) and Proficient when it comes to another skill (say, C).

Our roadmap when it comes to the Situational Leadership model is the upper right quadrant - what they call coaching (or selling).

Again, situational leadership here is actually a model of how to delegate (not leadership per se); and delegating is what we're after. To scale an organization, you have to have your final vision of what that organization should look like and the means to build that organization. The best means you have at your disposal is delegation. So delegation it is.

What is Mentoring?

We're talking specifically about mentoring here, which is a coaching style. At Guildmaster, we use "mentoring" to describe a coaching relationship where the coach "knows more" than the mentee. In contrast, we use "coaching" to describe the relationship when the coach "knows the same as or less than" the mentee.

The Stakes

Coaching generates an ROI of between $4 to $8 for every dollar invested. The high end appears for executive coaching, showing that, if anything, coaching becomes even more of a bargain the higher up you go. Looking just at productivity, when coaching was added, productivity gains were improved by a factor of 4 over just training alone.

We advocate for training and coaching for this reason, and another good reason: since the coaching style is the best default style of leadership, most of your managers should be coaching most of their time. Ensuring their reports are trained on the basics makes them more effective and saves them time!

There's no reason to think that the ROI for a mentoring coaching style would be any different.

The Big Picture

A mentoring program is divided into two steps:

  1. Identify the mentoring relationships

  2. Define what it means to be a good mentor (and good mentee)

Identify The Relationships

The relationship you want to build is basically a stairstep of mentors.

Let's say you had an organization full of people of different skill levels - in other words, let's say you were already done with your learning organization. The mentoring program was already in full swing. What would the relationships look like? You basically want people mentoring folks "one step down" from them.

Using the Dreyfus model again:

  • The Experts would mentor the Proficients

  • The Proficients would mentor the Competents

  • The Competents would mentor the Advanced Beginners and Novices

This structure is for four reasons.

  1. Dan North describes this approach as "Dreyfus Squared" - being one level up still puts you close enough to the mindset of the people you're trying to teach. Go too many levels between mentor and mentee, and you aren't even speaking the same language.

  2. The best way to learn is to teach. By asking those one step above others to teach those beneath them, you're helping them solidify their status. Someone may be "freshly" competent. They'll be being mentored by a Proficient in this model and teaching an Advanced Beginner. By teaching, they have to explain their reasoning and build better mental models of the system.

  3. This spreads the load and doesn't waste resources. Competents are the level that are barely able to mentor Advanced Beginners, so they do it. If you had experts doing everything, your experts would be a bottleneck in the entire learning system.

  4. We primarily rely on training (classroom style, lectures, exercises) to get people from Novices to Advanced beginners. That's why the lowest rung looks like that. Indeed, having some Advanced Beginners serve as tutors or TAs in your training classes might make sense depending on your maturity.

You don't have a learning organization right now, so even though you may know the eventual vision based on the above, you still need to figure out how to bootstrap from nothing to something.

There are two situations here:

  1. You already know you have SOME skillset

  2. You don't have any skillset at all

Case 1: You already have SOME Skillset

In this case, everyone in the org feels like there are people who know the topic in question, at least a little.

So, you are a Java shop. You want to set up a Learning Organization, and you're trying to find mentors and mentees to pair up on Java. You already "feel" like you have some people who know Java better than others.

Basically, doing surveys around the question "Who would you go to for a question on Java?" can alert you to whom might be more skilled than others. Upon finding patterns in this survey data, you can also start querying these people - the ones that show up in the surveys - to identify other Java experts. They should generally agree on who knows what.

There are two risks you want to avoid.

First, you want to avoid letting an imposter in (one will eventually make it in any way, but part of keeping your culture Big OH is maintaining these sorts of controls in place). The surveys and interviews should help identify who's actually helpful.

Another thing you can do is have the new group of skilled Java devs collaborate and design a challenge of some sort. Then they should take the challenge themselves. By dogfooding, these devs model good humility. It also will genuinely upset imposters as they will feel degraded having to take the "newbie challenge."

Second, you don't want to build your hierarchy right away. I'd try my best to cap your Dreyfus model at the lowest level possible. At first, you just need Competent people to mentor Advanced Beginners. You don't need to find Proficient or Expert people yet.

If you try and do the whole hierarchy upfront, you're going to turn it into a Hunger Games-style system where people assume promotions and other career rewards will go to the top. You need to kick the tires on a simple mentor system first before you start building up to Expert.

Case 2: You don't have any Skillset

You've identified Elixir as a language skill you need to stay competitive. But no one knows Elixir at your firm.

Now, you already know from Step 1 that you can start sending people to training. This will help build Advanced Beginners.

But where do you get the Competent for the next step?

Like with training, you can go to the outside marketplace when bootstrapping. Look for Elixir consultants. You'll probably want to keep up this relationship for the long term since consultants can provide many of the same benefits you get from hiring Senior-level employees without many downsides.

What does Being a Good Mentor Look Like?

So you have a pool of Competent folks and a pool of Advanced Beginner folks. You pair them up. Now what?

You want to do three things:

  1. Deliberate practice

  2. ...with progressive overload

  3. ...and fast, effective feedback

What's Deliberate Practice?

Deliberate practice is practicing a thing and getting feedback about it. You're intentionally trying out new projects, technologies, and challenges, then seeing how well you did.

Early Advanced Beginner mentoring at an established Learning Organization might even include a standard set of challenges and exercises with rubrics.

Or, if you're just starting out (or these are late Advanced Beginners), the mentor is looking for opportunities for the mentee - specific challenges on parts of the skillset that the mentee has not yet mastered.

This means your mentees may "report in" to mentors sometimes for technical assignments, though they also have people managers. If you are using the Three Seashell system, these assignments will supplant any other Third Seashell work.

Mentors need to take care not to introduce schedule risk. Assignments should probably come from tech debt or parts of the system well off the critical path. Nothing is more demotivating than being assigned something high risk with a tight deadline where you, by definition, don't know how to succeed.

What's Progressive Overload?

This is a weight lifting term but also applies to learning and gamification. Basically, every challenge needs to get just a little bit harder. Each time you try and set a new record for your squat, you try and lift a little more.

Each level of Mario is just a little harder and may introduce one or two new mechanics. What you don't want is:

  • Stagnation. Where the mentee is doing the same level of work over and over again

  • Frustration. Where the mentee has been asked to do something too difficult

If you think about the situational leadership model, what you're doing is:

  • Building will through good positive feedback

  • Trading will for skill through progressive overload

What's Fast, Effective Feedback?

One of the hardest things to get right. And one of the most valuable skills to have in your toolbox.

First, you'll need a way to "cue" feedback. This mainly applies to software developers; this cue can be a peer review if mentors assign mentees tasks. Alternatively, they can pair on a job and decide who's driving.

You may see a practice you want to encourage or another you wish to discourage during these cues. It's at that point you deliver feedback.

You want to get the feedback to the mentee as fast as possible - pairing is better than peer-reviewing. Like a linter, it's easiest to change behavior when you're able to correct or encourage at the moment.

What's EFFECTIVE Feedback?

For this, I'll delegate to the experts.

I highly recommend this podcast from Manager Tools for all kinds of feedback.

Much of their model works, though many times in pairing or peer reviews, you'll be giving what we'd call "solicited" feedback. In other words, you know you are working together for the mentee to get feedback. So you don't need to ask permission in these cases.

The takeaways are: focus on concrete behaviors and concrete outcomes. Don't look for character traits or abstractions. Always explain the why.

That doesn't mean abstractions don't exist; they just aren't effective. Don't argue that "we don't code like that here; it's ugly." Instead, try to derive measurable reasons why something is terrible.

This is actually one of the best parts of mentoring - finding why you believe something. And finding the reasons for why you do what you do helps Competent mentors start to prepare to be Proficient.

I'd also highly recommend reading How to Win Friends & Influence People.

The Manager tools approach is designed for both positive and negative feedback. However, many examples they give are negative feedback. People often find negative feedback the most awkward to share; and that's fine.

However, positive feedback needs to be given too! And there is no cue for positive feedback. Because "nothing hurts," you often forget to share it.

Try to give a ratio of six pieces of positive feedback for every one of negative feedback. This is because negative feedback tends to be more memorable, and you want the mentee to remember both positive and negative feedback equally.


First, it keeps up motivation. If someone only feels like they're receiving negative feedback, they'll get discouraged.

Second, it keeps you looking like an "honest broker." When people believe you call balls and strikes reasonably, they're more likely to listen to you.


Hopefully, I've outlined what a mentoring program is, why you may want one, and how they help build a learning organization.

To review, a learning organization is an organization that reacts to new information and reforms itself readily. It is needed to scale an organization beyond a small startup phase. You need a way to get talent into the correct positions and have that talent be effective.

A great way to build a learning organization is using the Dreyfus Model of skill acquisition and the Situational Leadership model.

Each step along the models requires different techniques to move people quickly and effectively.

For Novices, formal training is incredibly cost-effective. But the limits of outside training become apparent past a certain point, and without a lot of budget and maturity, internal training will not be able to push folks that far.

To keep people growing past Advanced Beginner, you need to introduce a Mentoring program.

Mentoring programs pair people based on skill level, with people mentoring those just below them in skill level. This benefits the mentor as well as the mentee.

After pairs are established, you'd want to find ways for the pair to work together - such as formal pair programming, peer reviews, and one on one sessions. At this point, influential mentors will give fast, effective feedback and keep the mentee growing.

If you want help developing your own ideas for a Learning Organization, or, alternatively, need Management Coaching to grow yourself from Advanced Beginner, please reach out to us or...

120 views0 comments

Recent Posts

See All

Will AI Phase Out Software Developement Roles?

John recently sat down with Daniel Litwin at MarketScale to talk about AI. AI won't change programming in the way you think... Check it out here. Key Takeaways: Junior devs need to treat AI as a doubl


Soapbox Logo (Transparent).png
bottom of page