Are software engineers fairly compensated at your company? Do you or your colleagues focus on building the product instead of getting a raise? Everyone needs to be properly incentivised in order for the team to succeed. Fair software developer salary plays a big part in it. After reading this blog post, you’ll know to play this game right.
The best a salary can do for you is make you forget about it
If you want to know the actual numbers, keep reading till the end. What matters more than numbers is you and your team focusing on building the product. This is how you win. On the other end, trying to maximize your salary is a slippery slope. You can’t win this game because of the following reasons:
- You can always find a place that will pay you more
- Focusing on a promotion doesn’t make you a better software engineer
- The company (especially if it’s an early stage startup) has limited cash that will evaporate if everyone in a company focuses on getting more salary
A higher salary doesn’t mean a better job
Imagine you’re interviewing at multiple companies and you get an offer that is way above what everyone is willing to pay. You may be excited like this dude: If a company wants to pay you a salary significantly above the market, in most cases, there is a reason for it. It may be a big company with a lot of cash and boring work to do. Or the company may be struggling to find people who believe in their mission. Don’t get the high number distract you. Make sure you join a solid team that you can learn from. You’ll spend a lot of time with this group of people every day. Find the company with the vision you believe in. These things matter more than your salary in the grand scheme of things.
Ask for the right number. No more, no less.
You should ask for a fair market salary in your geographic area. Look at the salary statistic sites like salary.com for your experience level and take it as a guiding factor. Don’t accept the offer drastically below or above your current level since you don’t want to be in either of these two situations:
- You are underpaid. Let’s say you got excited about a new hot startup. You really want to work there but they say they can’t pay you a reasonable salary for some reason. Maybe money is not super important to you because of your lifestyle and you say yes to it. Sooner or later, your friend developer from another company will tell you how much he/she makes and you’ll eventually quit.
- You are overpaid. The employer really wants to hire you and they decide to pay a price above your level. Even though you’ll get paid a lot of money, your employer will have extremely high expectations of you. Most likely, these expectations will be unrealistic and they will be pressured to terminate you after reviewing engineering budget. In addition to it, your colleague at the same company will eventually know that you’re overpaid. News spread out quickly and it will ruin team morale.
Negotiation is key
One of the most important skills to get the right developer salary is a negotiation. I recommend reading Negotiating Your Salary: How To Make $1000 a Minute. It explains basic negotiation tactics for salary negotiation. One key advice that I took from this book is to avoid revealing your salary expectations until you make sure it’s the right fit. After being on both sides of the hiring process, I can definitely see how it helps both parties focus on what’s important. Revealing your salary expectations which may or may not fit in a pre-defined budget can be very distracting which can finish a conversation in the very beginning.
How important tech for your employer
Salary negotiation is a two-sided process. Let’s see how it looks from the employer’s perspective. In general, companies can be subdivided into tech companies and non-tech companies. In tech companies, technology plays a crucial role in product development. In other words, if the engineering department disappears, the company is in a big trouble. Engineers are valued in tech companies the most. In this situation, the main focus of the employer is to find top class developers. Every developer makes a massive impact on the business and there is not many great developers available in a current hot job market. You’ll learn the most in such a company and the employer will generally have no problem paying you what you’re worth.
On the other side, in non-tech companies, the main product is powered by an external technology as a service or operationally. Technology is a nice to have addition to the product. In this kind of environment, engineering has a secondary focus in the company. When something is not your primary focus, you would like to get it done cheap and fast. Non-tech companies can afford to hire low-quality talent because of the low technology impact for their business. It’s a good starting point if you are a junior developer. You won’t experience significant growth here and you won’t get paid as much. Make sure you choose the right company for your career stage.
How much is a senior software engineer salary
Another reason to become a Senior Software Engineer is a pretty good salary, comparing to the other professions. It depends on many factors. Junior software engineer salary in Los Angeles starts from $80,000 and it may go to $200,000 and above for a principal role at some companies. It depends on many factors like cost of living, geographic area, technical stack, job market etc.
Focus on your growth and the right thing will happen. The company will become stronger because you deliver a better product and your compensation package will grow with it. In a healthy company, it will always be the case. The main asset of the company, especially in the startup world is the team. If your team grows, the company grows. Companies you want to work in understand it and that’s why they have regular performance reviews and promotions.