What defines a senior software engineer? What are their responsibilities? I get this question a lot from friends, family, colleagues, and even fro...
For further actions, you may consider blocking this person and/or reporting abuse
It's easier to say what does not define a senior engineer. Here's a couple that come to mind:
Wait, what? Looking at tech skills can't prove whether someone is fit for a senior role? Correct. When thinking of senior engineers I often reference John Allspaw:
Let us become mature engineers instead of seniors.
I really liked your closing line:
This pretty much sums it.
I'm happy to see that we agree on many points.
I wrote an article about this recently here.
Happy to see that as well!
Fascinating article!
More often than not... age
In my own experience, age isn't that good a predictor for this. It's indeed a property shared among most senior developers, but I could say the same about having two eyes and two legs, or being able to read and write.
I'm not saying that it's a good predictor - but in 25 years as a developer, I've found that it is usually the case - even if there are younger devs that are more capable
What I'm saying is that age (or 'experience') doesn't inherently make a developer more capable. It's generally the mindset that sets apart more capable developers. That mindset usually takes time to develop (so age is indeed a factor), but there are plenty of develops increase in years without improving in mindset.
I totally agree with you Jon, having the correct personality and attributes do not have a direct correlation to age.
Unfortunately though - in real life, having the title "Senior Developer" usually has more correlation to age than to actually having the requisite skills
This is my point
Yes, I see your point. I took 'senior developer' to mean more than that, since then the answer to the post here would be "a senior software engineer is someone who has the title 'senior software engineer' on their contract'. Which is as much true as it is meaningless.
I think that's a great list you have there!
I also sometimes like to consider 'the ability to handle responsibility and accountability'.
As developers progress in their career, we will start making decisions that have larger and longer lasting impacts to users, the project, and teammates. As we 'mature', we will want get a better handle of understanding these responsibilities, enjoy being responsible for changes, and be able to see the change through.
Thanks Jen!
Your point you raised is spot on in my opinion.
I'm a bit late to the party but I like this:
This came to me after being a Senior Dev for a while. I often get a good sense of which solutions won't work for a particular problem before I understand what will