Considerations for your first salary as a junior developer
Recently a slack community I am a part of asked a question:
What should a junior developer expect for their first salary?
The responses at first were straight numbers and none of us were in agreement. The range was from about 32k-80k — that is a pretty massive discrepancy, and I want to dig in a bit to explain why that is.
Developers just earn more than other careers
This is false. Kind of. A lot of advertising from bootcamps and schools will lead you to believe that you will graduate and immediately jump into an 80k salary. Now while I have see this happen to a select few, it is most definitely not the experience for the majority. It’s important to remember that these education programs are largely for-profit companies. If we believe that we can jump 40k+ in salary by taking a quick 2 month program, then the little part of our brain that might be risk-adverse will become extremely quiet.
You need to remember that even though you now have a highly desirable skill, you are still, in fact, extremely junior. You are going to need a lot of training and coaching and support from seniors. You might have rocked it in bootcamp but learning a company’s codebase is going to be a lot of work and so you can expect that to be factored into your starting salary. So yes, developers will almost always earn more than other careers because it is a highly technical skill that requires a lot of training. It is true. However you are not yet as highly qualified today as you will be with experience so you cannot expect to be making 80k to start. Just like any other career.
Okay but who does actually make 80k right out of the gate?
Obviously I am not speaking with 100% knowledge of this. From my experience in tech as a career advisor, the people I saw making a larger starting salary right out of bootcamp were people who had extensive experience in a relevant industry. IE if a junior dev was hired to also work on design and they had worked as a graphic designer for 10 years. Or if someone worked as a Project Management (PM) in the Oil & Gas industry was being hired to be a dev but also take over some PM responsibilities.
When can I expect that pay bump to that sweet, sweet 80k?
I mean that totally depends. I think there is one key internal and one key external factor to consider:
Internal- You. Are you clocking in 9–5 and working on the bare minimum or are you pushing yourself to really own your work and learn more about the tech stack that you are working in? One of the reasons why I chose development as a career path was because the opportunity to progress was entirely in my hands. If you want to progress to an intermediate pay then you should be demonstrating that you are coding at an intermediate level. And not just coding but contributing and owning projects and mentoring juniors.
Be the paycheck that you want to see in your hands — Gandhi (kind of)
External- The company and their access to capital. If you are working for a small startup on a shoestring budget, it might be years before you can expect an 80k salary, even if you might deserve it. Heck, I even know some 30 year old companies where the top paid dev sits at about 100k after 15+ years on the team. There are devs who are paid 200k+, don’t get me wrong — but they are generally pretty extraordinary devs. We’re talking CTO and co-founder level kind of good. Alternatively they might be fairly good devs who happen to be living in Silicon Valley, so if your biggest dream is a huge paycheck then maybe physically moving to San Francisco is the right career move for you.
Why might my first salary be lower than expected?
Because we’re pretty much all fed the ‘developers make huge salary’ lie, I think it is important to consider this question from the employers perspective.
1- You are an untested product. IE you could spend 2 months on the team and decide you hate development as a career. A company has to take a risk on you. Onboarding and training takes a lot of resources and every time a company hires someone without job experience is a huge dice roll that could potentially end up as a net-loss for the company if it doesn’t work out.
2- Junior hires require a lot of resources. Leaving bootcamp I felt like I knew so much about JS and node and I thought that continuing in a similar techstack would be no problem. I, in fact, barely knew anything. And it took a lot of mentorship from intermediate and senior devs to train me to be the developer that I am today.
To be blunt, the company is paying seniors a lot of money to take time out of their day to provide mentorship. Every minute spent mentoring is a minute not spent on product development. IE you should consider the costs that the company is paying for you to be mentored. That is essentially pulled out of your starting salary in order to be able to afford the time to help mentor you. It isn’t a bad thing, companies love hiring juniors for a lot of reasons. But good mentorship does ultimately have a price tag.
3- This is kind of unrelated but I find myself coming back to this a lot in conversations: You may have been a expert in your previous career but remember that you aren’t an expert anymore. I live in Calgary, AB, Canada, where a lot of people are coming from massive salaries in the Oil and Gas industry. They all seem shocked about what a starting salary in a totally unrelated field might be. Before becoming a dev I had a very nice government paycheck and my starting salary was 1/3 of what I used to make. But it was a start, and there were things outside of salary that were more important to me(which I will expand on in the next section).
Also it is important to remember: this is just the start, its not going to last forever. You can expect regular salary increases with time and experience.
What should I really be looking for outside of a big salary for my first job?
I want to start out by saying this: unpaid internships are BS. No matter how junior you are, all work deserves pay. Also, a lot of people who go the bootcamp route might be a bit later on in life and have ‘adult’ things like babies and mortgages that require a baseline salary. You know what a reasonable minimal salary is given your budget and you shouldn’t be risking your rent or not putting food on the table.
I think it is really easy to get caught up in the numbers and get upset about a low wage when you start a job, but there is so much more to consider. As a side note, I would say that they are all great things to ask in an interview too.
1- What is the mentorship like?
If a company has good systems of support in place, you are going to progress a lot faster than if there is no mentorship. Working with a good team of smart people will literally jumpstart your career as a junior and propel you into intermediate roles.
2- What does the company do to actively reward growth and contributions?
Companies should be rewarding people who are working hard and doing well. Get a feel for this before you say yes to an offer because it is so important for you to feel noticed for all of the hard work you are doing. A good company will have regular check-ins with seniors and will hopefully also provide you with some kind of roadmap to success.
If you start at a company with a low salary and they say they do annual reassessments, that isn’t great — but it also isn’t a deal-breaker. I have personally negotiated a 3 or 6 month evaluation into contracts (and advised many other people to do so as well) so that if you are doing well, you don’t have to wait a whole year to be making better money. After the standard 3 month probation is done, it will be easy for the company to see if you are a good match and that you do intend to stay longterm so it seems pretty reasonable to ask for a pay raise at this point in time. It is also a great time to check-in and see if you are performing up to their expectations or if you can do anything to progress as a developer.
3- What is the company culture?
People always think that job hunting (especially for your first job), is just a matter of a company wanting to hire you. But let me tell you, there are a lot of bad job offers out there. I like to see job hunting more like a matchmaking — both of you want to be happy and successful with the other. It is a two way street. So get a feel for company culture and other people on the team. A good work environment pays in dividends when it comes to mental health.
4- What about non-salary things like benefits or stake in the company?
This can be a tricky one but is definitely worth considering. I think you need to make a good assessment of the company and it’s likeliness to succeed before taking on stock options, but if that is your thing then it can be a huge bonus. Also for a lot of us health benefits are a make-or-break deal so make sure you are putting yourself in a position that has you covered in case you need it.
So what is a reasonable first paycheck?
Congrats if you made it this far! You deserve a million dollars!
I think a reasonable first paycheck can be anywhere from 30–60k. A lot of people will disagree with the lower range and others will disagree with that higher range. This number is going to change person-to-person depending on what their financial situation is and the financial situation of the company they are working for. Unfortunately, there is no hard answer to that question.
Figure out your budget and what salary you think is reasonable. Subtract the non-monetary benefits that a company could provide you (AKA mentorship, and culture fit). If that still falls in a range that is liveable for you, then great! If you have bills to pay and a company is not offering you enough to make ends meet, then be honest about it in negotiation. Sure, they may not be able to pay you a massive paycheck to start, but maybe they will be able to bring it up a bit to help you if they think you will really be an asset to that team.
Most of you have probably found this article from my LinkedIn and know that I work for a fintech company called Neo Financial. As a junior with no experience applying to work at(at the time) a very tiny startup with only a few developers, my first salary was totally on the lower end. To be honest, I had other offers with double the salary at the same time. But after talking with the different companies, Neo offered me an incredible growth trajectory with an extremely talented team of developers. Management/senior staff are super involved and great communicators, and the culture was/is a perfect fit for me. I have been able to grow into an intermediate role with the company and have learned so much in such a short time — and I know I wouldn’t have gotten this experience anywhere else. So really take the time and consider the non-monetary things when you are getting ready to start your first job, it’ll pay off in more ways than one.
PS right now (April 2021) Neo has a huge list of job posting up, including several junior roles. If you are interested in a high growth startup that offers devs high-growth in their abilities then you should take a look!