I think it's fair to say that almost everyone wants to move forward in their career. For some, that means becoming a Senior Developer.
Since there...
For further actions, you may consider blocking this person and/or reporting abuse
Having taken a day to think about it, I still think it's a nice list and I still think many of these points are relevant to other careers.
However, I disagree with the idea in the articles that someone should need to be a mentor as a requirement for seniority. Objectively, some people are just going to be really good at what they do.
I'm basing this opinion on my experience in the visual arts and performing arts. Some people are just really good. They got that way as a combination of talent and practice. And maybe they also had a teachers that encouraged them to continue. But not everyone is cut out to be a mentor and no one would deny that these people are less "senior" for that reason. This is true, IMO, for any profession.
Maybe I'm overthinking this bit, but why can't senior devs be mentors just by being there? Just with day to day demonstrating good practices can help new developers (and artists) can learn what it takes to improve?
The big problem with this criteria is that I see "mentorship" in job descriptions — meaning employers intend to use it as an objective performance metric. I just don't think its accurate or appropriate for everyone.
Thanks for the response Allison!
I think there's two different things people mean when they talk about 'seniority'. There's this concept of an individual contributor, someone who is able to do whatever they do extremely well in isolation and isn't expected to do anything related to management.
Then there's this other concept of the 'management track', where these high performers become managers of other people. This is not for everyone.
I think this is totally fair! There is so much value in being an amazing individual contributor, this one included.
The reason I wanted to highlight mentorship is because I believe that most people can do a good job of mentoring, if they just put a little time into thinking about it and being intentional. It’s not for some people, but I think there are a lot of people who could be great mentors but haven’t tried to, because they don’t see how it would benefit themselves or their organization.
I don't think we disagree at all, Sam.
I know this is only one aspect being highlighted. My concern is only when it comes to employment decisions and performance evaluations. My thought is there can be different expressions of mentorship that don't necessarily have to be as explicit and traditional, and those can be valuable too. Perhaps thinking in this way can help more people consider themselves as mentors.
Fascinating conversation -- I'd never considered the limitations with how organisations perceive mentors.
As you say, there are many forms of mentorship, some of which go unnoticed. Some of my best mentors have been excellent -- yet quiet -- developers who led very much by example. Despite saying little, every now and then they would offer a nugget of advice that completely changed how I worked. I wonder now if this was recognised.
Thanks for this post, I'm in that middle level devrloper where I don't know how to improve and what to do to become an senior level and this really help.
About the projects I don't totally agrrr, it's good to have projects ambitious because at least for me they made easier and more fun to learn new things like Google cloud, ci/cd and other things, and
This is great advice. When I was in college it definitely felt like everything in my life should be centered around programming. It's good to keep in mind that life isn't all about becoming a senior developer and it's okay to have interests that have nothing to do with it.
I'm going to spend my extra time saying hi to my neighbor's cats, although according to xkcd it will take me 2 months to get my time back.
I really struggle with finding mentorship. I'm a freelancer so I spend a lot of time working by myself, and in the midwest, there's no obvious place for me to go and find mentorship.
Meetups perhaps, meet other tech folks and build relationships. If there isn't one around you, host it. One piece of advice I read recently, "If you want to network with people, be the one who hosts the meeting."
I'm not sure if co-working spaces facilitate discussions but there's that too.
Look for local volunteer non-profit/civic tech groups like @codeforamerica brigades.
Don't forget, there are a number of dimensions to being a senior developer. A senior developer at a webdev consultancy is a vastly different job than a senior developer at Google, for example.
I wrote more about the various dimensions here: mooreds.com/wordpress/archives/2812
This was really insightful. Appreciate the comprehensive list 👍
I'm glad I could help!
! Second that... since I made my hobby into a profession, I very seldom code in my free time.
I did not read any of those and still I consider myself a senior dev, even though without the official title but by acknowledgement from my peers. And from time to time I think, I should at least once read the Clean Code. Not because I think it is „mandatory“, but because I think, that it gives you quite a lot of insight on how to write maintainable code.
Can also stand for double-sided rake. Meaning that experience gives you enough pessimism that you always take into account the possibility of getting hit in the face with a handle even if the rake was placed teeth down.
I don't think title "Senior Software Engineer" exists anymore. With Tech stacks changing roughly every two or three years as well as development methodologies, there is no way to be "senior" in the field. Back when developers worked their whole careers in the same language and development process, the word "senior" in a title really meant something, but in today's fast changing technology landscape, someone who graduated three years ago and has been working for three years, will be more "senior" in those technologies than someone using another technology for 10 years. Today the most important thing is a developers current tech skill set. If you want to get "senior" pay, then you need to follow the most in demand tech stacks. These are the areas that will have a shortage of developers, driving the salaries up.
I think the sentiment behind this is partially true, but not all the way. Being a developer isn't only about producing high-quality code, a big part of it is mentoring others. As someone on twitter said the other day, the most important product of a senior developer is more senior developers. Being able to mentor others is as important as churning out code.
Additionally, expertise in one framework definitely does provide some additional experience in others. When you're good at any programming language, you will be better at another than a novice.
Saying that there is no such thing as senior developers invalidate the skills that those people have.
Thank you for reminding me to pick up Clean Code again as I stopped after chapter 3 (like it of course warns you against doing). I've also signed up for the weekly project club since I lose focus (and hope) on my own projects lol.
I'm glad you got something out of this! Also welcome to the club!
I consider my self a senior programmer, in the popular sense of the word.
I’ve been doing this for 10+ years at varying places using lots of different tools. And I generally find my self helping out others, with concept explaining, debugging problems, mentoring, etc. as much as I work on my own.
I don’t really like the label tho, being a senior should not be a career path.
Being a better more versatile or specialized developer should be.
I have meet others labeled seniors that although good developers hardly had the experience to use their tools optimally, or even worse lets their skills stagnate to the point of uselessness in a updated context.
The tl;dr here is:
People use the label differently, and the moment you switch tool sets, or sometimes just update them it’s likely you go back to being a novice. Asking questions to that junior’ who just got out of school but happened to be taught about that new thing you want.
To heck with being a senior, be a better you instead.
Great article, Sam! I was intrigued by your link to WeeklyProject.club. I was hoping to see a listing of previous and current projects, and maybe a listing of folks' submissions for previous projects. It looks like the club is pretty new, but I just wanted to let you know I'd be interested in those features.
Thanks for the feedback! That definitely something coming soon!
Nice list.
I find it interesting that a lot of these are good tips for advancement in any job.
What a lovely summary of a lot of good advice
Thanks!
This is great work Sam, thanks for the article.
There is no extra hours, all extra hours going for learning and improving after this article))
I think that title of the book is Pragmatic Programmer not Programming
Thank you for this man keep it up!
Yeah, I pretty much agree with all of this.
Man I really need to read clean code and pragmatic. They must be really good. lol
Great article! Lots of great resources to check out!