Are 2 years enough to make someone “senior”? If it is... then what is a junior? And where is the middle?
Open any job board and it will feel like ...
For further actions, you may consider blocking this person and/or reporting abuse
My take is that unless the entire industry is willing to band together and establish actual definitions with quantifiable values then it's always going to continue to be a messy and ambiguous label.
The fact is that there is significant financial incentive for people to apply a senior title to themselves, and not difficult at all to find a small company where a single dev takes on roles and responsibilities at a "senior level" by most traditional definitions of the term, except of course "years of experience."
Then YoE similarly tends to have a weaker correlation with skill level in software than other fields, presumably due to the incredible speed at which things change.
I don't think there's any easy answers, but I personally never fault another developer for playing the silly "title" game to further their career.
The entire industry banding together for anything is something I don't see happening so soon (or you know, ever).
But the compensation part... the position will pay what it will pay, but the title behind will attract or repel some. I also see a bunch of "senior" positions that are paying less than those mythical few "junior" positions.
But you're right, it's difficult to find a good answer. I just hope it would be easier to at least weed out some obvious bad ones.
But of course there are exceptions, this isn't a 100% science. So a better definition would be:
People in our industry now understand this which is why they want Seniors mostly, because both juniors and mids need a senior to take care of them, this is due to the complexity of our work and also due to the fact that the work is not organized in a way that a junior can do their part.
This is not the same in ANY other industry, where for example, one worker puts the product in a package, another worker wraps the package and so on. In other industries, each worker has a specific tiny work, meanwhile, in our industry, it still surprises me that they desire FULL-STACK devs who need to know: PHP - Laravel/Yii/Symfony/Zend, JS - Vue.js/React.js, CI-CD, Networking, Linux CLI, Git/SVN, Jira or whatever else they use, MySQL/Redis/MongoDB/ElasticSearch/CHUGACHINGA/FILL-IN-THE-LATEST-TECH-THAT-NO-ONE-EVER-HEARD-OF-IT-BUT-SOMEHOW-IT-IS-A-HARD-REQUIREMENT
It is CHAOS, sadly, and it is up to each one of us to push the narrative that we want to see in the future: as for me, I stopped applying for FULL-STACK jobs and I always tell the recruiters or the devs that full-stack makes for sloppy code, because devs are either backend or frontend oriented, I believe it is VERY rare to find a dev who likes and enjoys both front and back equally.
Instead of technologies, I would put having the basics.
Some people get far too used to working with one framework that they blur what is framework and what is language.
But I have to disagree about the "how much time they take".
I mean, sure, if you compare the same task, yes, probably it will go like that. But having a team means that a senior don't have to make something a junior or a mid can do, and can, instead, do things that the others can't or don't even know how to start. (like performance, scalabity, security...) Altough, yes, they still need to "take care" of others.
True, but a senior would not be limited to performance, scalability and security. They do development tasks just like the other team members.
In my last project, I had 1 junior with me. What I did was I usually gave him the easy tasks and took the harder tasks on me. Even the easy tasks would take a long time with him and he would ask me 1000 questions until I finally give him the solution.
Sounds like you are a bad mentor
The suits' primary job is inventing new titles, when they aren't finding other ways to interfere with actual work being accomplished, so no one's ever going to solve that problem. Settle a definition for Senior vs Junior and by lunch some management, marketing, or HR department will have subdivided, recontextualized, and synergized a dozen different new terms to reconfuse the situation.
As for the community itself, one can call themselves whatever they want, but a look at their code will quickly suss out who's a senior and who's a junior. Titles are worthless, experience matters to some extent, but it's the code that does the talking, as it should be.
This is an extremely interesting article, and a matter I think about often.
I've seen people quickly becoming "senior", maybe because as a senior the salary is higher (you also have more responsibilities though).
I think that to become a senior you need solid problem-solving and leadership skills.
You can develop these skills through experiencing a wide range of business problems and working in different settings. Senior engineers know why you should do/use something instead of something else and know how to justify their reasonings.
I'm not sure if 2 years are enough. Probably not.
Also, I believe that this is a problem partially caused by HR (or whoever creates the job descriptions). Some job descriptions are INSANE. 🤣
You mean the classic "we want a junior with the experience of a senior, oh, and we are paying an intern salary".
Although... I'm more inclined to blame other developers, I see many are lazy and don't want to take care of more junior people.
Also others who believe in doing, even the more trivial stuff, themselves instead of passing those to people who should be doing those (juniors and mediors).
And when you have just seniors... then you're being wasteful having seniors just to center divs and make CRUDs.
At least these titles add some positive value to being "senior" (literally: older) which is otherwise often regarded as a disadvantage, also in information technology, with the prevailing ageism fearing that people get "too old" to understand new technology or get things done quickly. So as I'm not the youngest anymore, maybe I should take pride in calling myself a "senior" or I could make a joke out of it and make business cards with "Elderly Frontend Developer".
In every company I've worked for, "Senior" anything simply means "older". Skill level is irrelevant
Another side effect to add!
Since all positions are for "senior", many think they can (and some certainly do) bullshit their way into a "senior" position.
I think there are even different levels to a Senior developer because no one person is the same.
<?php
function fizzbuzz($n) {
for ($i = 1; $i <= $n ; $i++) {
$output = '';
if ($i % 3 == 0) {
$output = "Fizz";
}
if ($i % 5 == 0) {
$output .= "Buzz";
}
if ($output == '') {
$output = $i;
}
echo "$output------";
}
}
fizzbuzz(45);
Good stuff.