A Six-Dimension Framework for Engineer Growth

A Six-Dimension Framework for Engineer Growth

A map for growth conversations, not a checklist to grade people against

3 min read

A good career framework is a map, not a ruler. The six-dimension model I lean on exists to enable individualized growth conversations, and I'll say this up front: it is emphatically not a checklist to score people against. The moment it becomes a box-ticking exercise, it stops helping anyone grow and starts making people perform.

Three levels of proficiency#

For any dimension, an engineer sits at one of three levels:

  • Incorporating — they understand the concept and are actively working to apply it. The skill is present but not yet automatic.
  • Demonstrating — they use it effectively as a matter of routine, without needing to think hard about it.
  • Leading — they're expert enough to teach it, and they can see it through both an expert's and a novice's eyes, which is what makes them good at growing others in it.

That last level is subtle. Leading isn't just personal mastery; it's the ability to hold a beginner's perspective alongside your own so you can actually transfer the skill.

The six dimensions#

Craft is technical excellence: clean code, test-driven development, the discipline of DRY, SOLID, and YAGNI, fluency with design patterns, refactoring in small safe steps, and the techniques for working with legacy code. This is the dimension most people picture when they think "good engineer," but it's only one of six.

Team Room is the ability to extract value from team ceremonies, to live collective ownership, and to make progress big and visible so the whole team can see and reason about the work.

Technology is breadth and depth across domains: multiple languages, cloud platforms, data systems, and the range of areas a versatile engineer can move through. It's the horizontal and vertical reach of what you can work in.

Experience is the wisdom that only variety produces, measured by the scope, size, and complexity of what you've worked on, and by the hard lessons you've actually absorbed along the way. You can't shortcut this one; it accumulates.

Growing Others is everything you do to lift the people around you: mentoring, pairing, blogging, speaking, contributing to open source. It's the dimension where your impact starts to exceed what your own two hands can produce.

Value is living the principles: a get-it-done mindset, persistence through hard problems, humility, and the habit of leaving software a little better than you found it. It's the character dimension underneath all the skills.

The career ladder#

These dimensions map onto a ladder that runs Apprentice, Engineer, Senior, Principal. What changes at each rung isn't that you suddenly acquire new dimensions; it's which dimensions you're expected to lead in versus merely demonstrate. An Engineer might demonstrate Craft and incorporate Growing Others. A Senior demonstrates more dimensions and begins leading in a few. A Principal leads across most of them, especially Growing Others and Experience, where their impact multiplies through other people.

Use it as a conversation, not a verdict#

The whole point is the conversation it enables. Two people can look at the same map and have an honest, specific discussion: "You're demonstrating Craft beautifully and incorporating Growing Others. Want to make Growing Others the focus this quarter?" That's individualized, motivating, and concrete. Contrast that with reducing someone to a row of scores, which tells them where they rank without telling them how to grow. Keep the framework as a shared language, resist the urge to turn it into a grading sheet, and it will do exactly what it's meant to do.