The long way through Software Craftsmanship

Pairing with junior developers

Feb 3, 2015 - 2 minute read - Comments - pairingpair-programmingexpertisejuniorseniorexperienceapprenticeship

After reading this blog post, here are my thoughts:

WARNING: the post was about how to do it, these reflections are on a more philosophical level

This is a controversial topic, as:

  • You cannot discern how much or little the other person knows more than you. I cannot find the reference anymore, but it was a to the tune of “once the other person’s level is higher than yours, you cannot know how much”
  • There are different knowledge areas. Yours and theirs might overlap on some areas, but not completely. So they may be experts on an area that is not useful to the technology you’re currently using.
  • Different people have different passions and motivators.

When and where are you a junior and a senior?

  • Does it depend on each job?
  • Is it on each product you work?
  • Is it on each team?

“when you join a new project you are starting from square one”

D. Hoover, A. Oshineye in the chapter Sweep the floor, Apprenticeship patterns

Related to the amount of senior people, is there only one senior per team?

  • Can everybody be a senior? If we assert this is true, what about “if everything matters, nothing matters”. Does that mean that everyone is senior or there are different levels of seniority and we call “the senior” the one on the top of the list?
  • Who choses the senior within the team? Is it self-organized, self-chosen? Do the people chose one? Is a shared responsibility, as each one masters a (possibly different) subject?

Food for thought.

What do you think about it?

Disclaimer about AI/GenAI

As of 2026-05-06, the text in these articles and blog entries has been written without AI/GenAI, except I sometimes use a spellchecker to fix errors. Think Word's spellchecker, not ChatGPT.

Notes, as of today (2026-05-06):

  • No code snippet has been automatically generated, nor vibe-coded, nor generated and reviewed.
  • I don’t have any article with AI contribution.

For future entries:

  • I may have used GenAI for the code in the repo. The code I exemplify/copy in the article will always be reviewed and tested, not vibe-coded. I will specify it in each snippet or at the top/bottom of the article.
  • I normally don't use it for the text contents, although if I have used it for the article text, it would be indicated as such.

Any entry before 2026-05-06 does not contain any AI/GenAI.

For more information, read the AI/GenAI Policy

Book: Diseño Ágil con TDD (Spanish) Open discussion: On code reviews