A while ago, (a long while ago) I myself was a junior software engineer looking to climb the ladder as quickly as I could. After many interviews and second interviews and third interviews I landed my very first job as a "Junior Application Developer". Notice the prefix "Junior" in the title. The pay was lower than the median average for a software engineer at the time, per the junior title, but because it is relatively difficult for anyone starting out in anything to break through, I took on the role and accepted the offer happily.
The salary for me at the time was not bad, particularly as I was fresh out of college and had the usual 22 year old bill duties to attend to. You can read more about my salaries throughout the years here.
Working weekends and months straight without a break was pretty normal for me during this time. As with anything in life, the beginning steps are always the most exciting but also the most difficult. And eventually, everything gets repetitive as we get more accustomed to our environments and as we get better and better.
2 years later, I was still a "Junior Application Developer". I knew a vast amount more in terms of web development and programming in general and I was in charge of various high-traffic websites, but because I was still surrounded by more senior developers and because my title was was left unchanged, I was still a junior developer to anyone that would look at my resume.
It wasn't until I transitioned to my 2nd job, with title of "C# Developer" that I was finally able to remove the junior label and start to really feel like an actual developer.
Most of the work that I did at this second job was exactly the same as the work that I had been doing at my first. The main difference really was in the title change and the increase in salary. Which is my first main point in this article.
Your title helps determine your salary.
There are lot of factors that go into determining your overall salary. Such as:
- The city or state you're in
- Years of experience
- Company overall averages
- Your title!
Just removing "Junior" from your official title can increase your overall salary by a substantial amount. For me personally that increase meant around a 20% jump without me having to do anything special. Just having a few years of experience and moving away from any job title with the word "junior" or "entry level" in it can be a boon for your career.
Note that we all start out as "junior" in whatever it is that we are doing. But through hard work and typically some form of testing system, we move up the food chain gradually. In school, this is typically done through the grade system (freshman, sophomore, junior, senior). In the corporate world, this happens with certain title prefixes, such as junior, mid-level and senior.
The biggest benefit in the schooling system however, is that this happens automatically every year, assuming that you pass the proper tests and get the proper grades. In school it's pretty much expected that a junior will become a senior the following year.
But that mechanism does not exist in the corporate world usually. You're a junior until some arbitrary point in time when either your employer changes it, or you change it by getting a new job.
I'll say now. It's okay to be a junior. In fact, it's probably the most important phase of your career. You won't be solely responsible for a billion dollar project just yet and but you'll get to see how it works. It's a great time for learning.
Once you get that experience in though and you feel confident enough to be left to your own devices, then it is time to change that title as well. Again, that could mean asking for a raise or even looking for another job if possible.
If there's anything that will hold you back though, it's probably this.
Imposter syndrome!
Alot of people have it in different industries. But it's very prevalent in the software engineering world. This probably has to do with the fact that there is no real constant when it comes to programming. Languages change frequently, as do frameworks, and job requirements are a moving target. Essentially, this job can be hard no matter what level you find yourself in.
Truth be told, you're never going to be 100% fully confident in your ability to solve a problem. Even after years and years of doing it professionally, you will still doubt yourself time and time again. So it's good to make peace with that. When I went from being Jr. Applications Developer to a .NET Developer, the job didn't get any easier. But it also didn't really get any more difficult. Eventually I grew into my new title and was able to handle the workload just fine.
Imposter syndrome is real and that's because we're all imposters in the beginning. We kind of know certain things, but odds are that there is someone else that can do it way better. The only real way to stop feeling like this is through gaining more experience.
And lastly, the one thing that keeps people from moving up the ladder the most though is the following.
Being a junior is easy!
As mentioned earlier, having a "Jr." in your title means that you probably won't be working on anything too arduous. At least, not for a good while. And things can get quite comfortable in that zone, particularly if you are still getting paid well.
I did it myself in the beginning. At my first job, I mainly just worked on documentation for other developers and I shadowed my co-workers for weeks. I didn't really get an opportunity to write code for some time. For me personally, that easiness became boredom fast. So when that very large project was introduced to the company and the question of who was to work on it came up. Well, my hand was the first to be up.
That comfort that you have at the beginning comes at a cost. Not only do you keep your salary in limbo while you are there, but you also won't be getting new skills as quickly as you could otherwise.
I've met junior developers who decided to stay where they were for years at a time. And when their co-workers left to pursue newer titles and more career growth, they stayed behind with the same title and the same workload day after day.
So my advice is to be a junior developer for some time, but to not stay there longer than you need to. Don't get too comfortable and find ways to challenge yourself every single day. If new projects appear in the horizon, say yes even if you aren't 100% confident in your skills.
The more that you end up doing in your junior years, the faster that title prefix begins to fade away and the greater the reward that you will get out of it.