Cover image by wilsan u on Unsplash
I first read about the notion of a mature developer in the blog post On Being a Senior Engineer by John Allspa...
For further actions, you may consider blocking this person and/or reporting abuse
My current official title is Senior Developer. I have 7+ years of experience in IT. Until recently, I avoided such labels. I would much prefer Mature as a moniker instead. Why? It all breaks down to quality of code and work etiquette.
From a tech standpoint, years of experience amount to nothing if all you've done is rehash old code.
We're in a fast growing industry which requires experimentation, research and creativity to stay relevant. If one of those components are missing, you're not mature enough. No matter the years of experience under your belt.
Regarding soft skills, yeah, the point is on. Those soft skills also determine your maturity. You're not mature enough if you can't take feedback. Or if you cannot be honest in giving feedback as well. But in a constructive way.
So I would suggest that a Mature developer is most of all, a well-rounded one. One who adapts and evolves their technical and soft skills.
That being said, the conclusion is that even one with 2-3 years of experience can be called mature, regardless of seniority status.
Well written, but a lot to unpack here. I think what you are saying is a real issue.
It should be about technical experience. And we should recognize people that come from other industries. I have a PhD that did a career change via boot camp and now works for me. From a technical standpoint he is still junior. But those other skills come through in bug filing, his ability to test, and problem solve.
Boot camps give these young developers a false sense of ability. It is not always realized though. If the developer gets a job at a large enterprise that has a mediocre development team, they may fit in. If they get a job at a small shop where tech is not primary, same. But having hired 4 now, and interviewed dozens more, I can say there are for sure universal gaps that get filled with experience. And that is hard to adapt too. That and that they often don’t get to create projects from scratch, or even get proper ownership given the scale of a app a lot of the time. I am lucky that I can offer both, but others teams can’t.
I feel the titles are BS. Titles were designed to convey skill and experience between companies as a way to normalize hiring to some degree. Think about this from a blue color job, like HVAC, where there are certifications and things that have to be passed, including years of experience. Then someone gets the title “master such and such”. It works great for tradesman.
In the tech world it fails. It does convey some years of experience, even if we only slightly align too it. But I can say for sure, my peers high more junior people in higher level roles. For example, one person with 10 years in the field, was a higher level. When I finally worked with him, I would not of thought he was beyond a Intern. So we are not even normalized around title in my same division, let alone the whole company, or the industry.
I love the mature developer, as it really hits at what we should be looking for, striving to be.
Thank you for this insightful post. Especially on point 2, I think it’s important that we start taking more about the hiring of boot camp grads, because in my experience hiring managers often have little idea about what they’re getting.
Nice post. Plenty to think about.
At some point, someone told me I was a Senior Developer. The implication -- which I'm only now beginning to recognise -- was that some of my colleagues had suddenly become my juniors. And yet my knowledge or skills hadn't changed. It was a pat on the head while, at the same time, putting those colleagues down.
Worse still: once someone is seen as a "Junior", it's difficult for them to change that perception. That includes their own self-perception. It's definitely a problem.
Interesting post, thanks you.
I have been recently called "Senior developer" by a colleague, but I was really surprised. I have 3 years of experience as a developer, I don't feel senior at all. The concept of senior developer versus junior developer has been really unclear for me since. What does it mean to be senior or junior ? I once had a colleague who said he was a junior java developer, when he had 20 years of experience of others languages. I learned so much from him, but he still called himself junior, because he "recently" changed his main language.
The concept of mature seems more logical.
Besides, the field evolves so much, that we should be eternally junior, or we would switch from junior to senior, and then a new shiny toy comes and we are back to junior and so on and so forth... (in fact, I completely love that, always something new to learn, never a boring day)
By the way, thank you soooo much for that "build your own" ressource!! Now I know what I will spend my week-ends on
I agree. Nowadays I reinforce to the novice developers that is much more important understanding the concepts behind the design patterns, business rules and focus on what kind of problem you should solve than instead just memorize code syntax.
Be a "senior" just demonstrate that you write if/else longest.
'... i dislike these terms so much that ... ' that ive turned down job offers unless they rename the role
I have seen job posts, where the recruiter is looking for a “junior” with 5+ years of a specific language, which seems very odd. They want to pay for a “mature” dev
The question of "years in the craft" as a parameter of "quality in the craft" is something that is being used by HR and recruitment agencies at a lot and I despise it.
The years don't convey the knowledge and craftsmanship you have in your field, it's really the output of your work that does that.
I understand it's hard to quantify for HR and Management how to deal with this and they use the Junior and Senior to convey the craftsmanship levels which is not wrong per say. It's about how that craftsmanship is established that is the core of the issue.
Nice article,
I also find it uninteresting arguing about Senior or junior dev
This is a very inspiring article and I totally agree with you on this.
I have a question for you...
If "yes of experience" doesn't necessarily translate into " quality of experience", then how do you quantify the quality of experience?
I am asking this from the point of view of a developer and not an hiring manager so that I can better reposition myself on investing in the things that can translate into "quality of experience"
Thanks for the post, Daniel!