Become a mature developer, not a senior developer
Tags: career, webdev, beginners
Published: 2020-01-20 22:08:51

---
title: Become a mature developer, not a senior developer
published: true
description: Junior/senior is a terrible way to judge a developer. This post is a reminder that we should be talking about “mature” developers instead
tags: career, webdev, beginners
cover_image: https://source.unsplash.com/aiUIs74ejx8/1000x620
---

_Cover image by [wilsan u](https://unsplash.com/@wilsanphotography?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com/s/photos/buddha?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)_

I first read about the notion of a **mature developer** in the blog post [On Being a Senior Engineer](https://www.kitchensoap.com/2012/10/25/on-being-a-senior-engineer/) by John Allspaw, way back in 2012. A lifetime in the tech industry, but this simple idea has stuck with me and hasn’t been bettered.

The thrust of this post is that being a mature engineer (or developer) should be valued much more highly than being a _senior_ engineer.

You should really take the time to read that post&mdash;I’m not going to try to repeat it here as it’s long and detailed and worth reading multiple times.

What follows is just some random, less relevant information from my own life.

----

## I’m uncomfortable with any talk about “junior” and “senior”

I dislike these terms so much that I often stop people when they mention them and then talk to them about why they are so problematic.

Today I had a constructive conversation with a person who asked me for career advice. They were labelling themselves as “junior” because they  had less than 2 years of full-time experience as a programmer. And yet they also had 10 years of a career in another field before learning to code. All that experience _is_ relevant to coding. Team dynamics, office politics, professional development skills, and so on.

For this person, their lack of expertise was only a lack of **technical** expertise. And that is actually a good thing, because technical skills are fairly straightforward to grow from novice to experienced. Tools like [build-your-own-x](https://github.com/danistefanovic/build-your-own-x) are wonderful resources for that.

It’s the “soft skills” that are actually hard skills. How to learn them is not at all clear.

## Bootcamp grads often excel at this immediately

When I worked as a post-grad coach for the [Makers](www.makers.tech) bootcamp in London I was continually surprised how _good_ these people were with just 12 weeks of training.

A specific example is **giving and receiving feedback**. These bootcamp grads had been pairing and mobbing since the first day on the course, and had no experience of working alone. Instead they had learned to help each other succeed. To coach each other, to support each other, to really be a team.

Giving constructive feedback is just a natural part of that.

I regularly see so-called senior developers struggle with feedback. And it holds them back.

Bootcamp grads are so good with feedback that they often accelerate technically because they are so thirsty to improve. Whereas those who block out feedback don’t accelerate, they just stagnate.

----

This post isn’t really about bootcamp grads. It’s just a rant that our industry still seems stuck on this distinction of junior/senior. I wish it wasn’t. I want to work with relaxed, respectful people with a willingness to build awesome stuff together.