Challenge vs Repetition — A Framework for Engineering Growth

John Gerhardt
Compass True North
Published in
4 min readAug 26, 2019

The 1-on-1 is a common tool for any manager to build relationships with their teammates and solicit feedback about how things are going.

There’s a wealth of knowledge on the subject of 1-on-1s, much of it specific to Software Engineering. This article describes a framework I’ve used to pulse check my team in terms of how they’re progressing towards their longer-term growth goals. It can also be a great conversation starter to highlight some specific tactics that will help get a teammate back on the right track — or stay there!

The Y-axis represents how challenged the employee is, while the X-axis represents how many opportunities they have to master a skill. I should state the obvious that neither of these axes has units — this is an emotional pulse check on how your teammate is feeling.

An Example — Staffing an Elasticsearch Project

Back in 2018, our team was working on a project that had a considerable amount of changes required to our Elasticsearch cluster. The team that was taking on the work had a combination of experiences with Elasticsearch that were different in both quantity and depth. Some members of the team had extensive and varied experience, while others had limited and more shallow experience. Working with Elasticsearch is an example of a technical skill. The skill could be anything from database schema design, how to structure CSS within a web application, or how to lead a project.

When deciding how to staff the project, I had to make a common choice. Do we play to our team’s strengths and move quickly, or do we take this time to invest in an employee who wants new types of experience? While there are exceptions, our team opts for quality, a sustainable pace, and avoids artificial deadlines. We decided to use this project as a teaching opportunity and have the engineer (let’s call him Kevin) with less Elasticsearch experience lead on the heavy lifting for the project. We knew he’d have a Senior Engineer (let’s call her Rebecca) to help with planning, be there to fall back on, and help him avoid common mistakes.

Common Turnover Culprits

I’ve spent some time reflecting on teams I’ve worked with and why members of those teams have left for another opportunity. It often comes down to that employee feeling like they have lingered outside the “Sweet Spot” for too long. Everyone’s ambition and appetite for growth are different — there’s no one-size-fits-all solution here. This requires getting to know your teammates, what their dreams and goals are, and ensuring you help them stay in that “Sweet Spot” over the long run.

Too Much Repetition Leads to Boredom

Photo by Kevin Grieve

Working on the same types of projects for 12 months straight is a surefire way to send someone looking for another job. Try to find opportunities for projects that push this group out of their comfort zone. That could mean working with new technologies or a new team. It means something as drastic as a complete role change, such as moving from QA to Engineering or individual contributor to manager. Some teammates will clearly articulate what they’re looking for, while others you may have to ask questions to help guide them.

  • Draw the Challenge vs Repetition chart out on a whiteboard and ask the employee to plot themselves on it. Discuss why they feel that way.
  • How is your / your team’s workload? Too little, too much, or the right amount?
  • If they’re a manager — how do you feel about your balance between doing individual work vs. managing? Do you feel like you’re doing too much or too little of either?
  • Do you feel we’re helping you advance your career at a pace you would like?
  • Do you feel challenged at work? Are you learning new things? Is it sustainable?

Being Consistently Over-Extended / Challenged Leads to Burnout

Photo by Christian Erfurt

Conversely, working on projects that are consistently difficult and varying in nature is a fast track to burning someone out. Without getting enough repetitions of the same type of work, mastering a particular skill set will be elusive. People may use words like frustration, anger, overloaded, or stretched too thin to describe feeling this way.

Optimizing for the Team

If we had chosen Rebecca to lead the Elasticsearch project, she would have felt bored as she had experience with very similar projects in the past. Having Kevin lead was a growth opportunity for both Kevin and Rebecca. Kevin grew by working with a technology he had not used. Rebecca got to flex her project management and leadership skills to keep the project on the right track.

Finding the Sustainable Growth Path

The Challenge vs Repetition framework helped me staff a project that kept two people in the “Sweet Spot”. I was able to avoid those same people ending up bored or not growing.

Have an example from your team where this framework might have helped? Comment below!

--

--