Negotiating salary: a developer HOWTO
In Wellington, New Zealand, the majority of developer salaries I’ve seen range from $50,000 to $140,000. It’s a huge range, and humans—also known as management—make the decision about how much they’re going to pay you solely based upon spending an hour or two with you.
Salary isn’t the only thing that you care about when you’re choosing where you want to work, but let’s assume you’ve found a fantastic gig. How do you maximise your salary?
Step 1: ask your peers what they’re on
Every culture is different, but most are secretive when it comes to salaries. This is a bad deal, because it means we’re less likely to know how much we’re worth in the market.
In New Zealand, I’ve found people really happy to talk about their salary if you ask them directly and discreetly. “I’m looking for a job and wondering what a good salary might be for my level of experience. Do you mind me asking how much you’re making?”
At worst, they won’t tell you. At best, you’ll get some valuable knowledge.
Search on the Internet for developer salaries in your city. Note that salaries wildly vary from city to city, and the averages you’ll find published are often skewed in one direction or the other by large companies. Take them with a grain of salt. It’s best if you can get data from the type of company you’re interested in working at.
Step 2: understand your value to the company
Companies employ people because they expect to get more value out of them than it costs to employ them. It sounds heartless, and it is. That’s not to say the people who hire you are heartless; they are probably wonderful people that care deeply about supporting their team.
But hiring and managing people is hard, often frustrating, and extremely time consuming. The only reason they do it is because they need to.
So what is your value? Here is roughly what goes through your employer’s mind:
What is your existing experience in my business domain
plus your existing experience delivering projects
plus your existing experience working well with people
plus your existing experience with my technology stack
plus how much you’re likely to grow in the next 12 months
plus your potential to take on management tasks
less how much training you’re going to require
less my perceived risk that I’ve over-rated your skills
less the management overhead you might create?
If this sounds suspiciously like the topics covered in an interview, you’re not wrong. Once an employer has decided you’re going to add to their team, they’re trying to work out your value.
Evaluate yourself in the eyes of an employer. Do you understand what the employer is looking for in each of the categories above? Probably not, so can you find someone who works at the company to ask them what is important to the company? This preparation is critical.
Make sure you can speak eloquently about each category as it directly relates to your employer’s business. If you can, get experienced people to evaluate you in a mock interview.
Step 3: select your preferred and walk-away salaries
By now you should have some data behind you in order to select two amounts:
- Your preferred salary. You’d feel like you were being well compensated if you got this. Start with a number that’s too low, and go up in $5k increments, considering each step, until you feel warm and cozy.
- Your walk-away salary. On this amount, you’d feel like your compensation was adequate. Start with your preferred salary and go down in $5k increments until the step before you’re not happy.
Do a simple budget and make sure that your walk-away salary is higher than your expenses and savings targets.
Once you have selected these two numbers, promise yourself that they will not change while talking with your potential employer. Promise? Really promise? OK then.
Step 4: the interview
Employers are often stressed, over-worked, and as a result, risk-averse. One bad hire in a team of 20 can easily take up half of their work time with performance management. They’ve received thousands of CVs and interviewed hundreds of people.
Your number one job in the interview is to make the employer feel like you are a safe hire. Give them all the information they need to feel safe. The safer they feel, the higher your salary will be.
Do promote yourself. You are a salesperson and you’re selling exclusive access to your time; modesty is absolutely inappropriate here.
Don’t lie, over-exaggerate or cheat. The people you’re talking to do this for a living. They’ll either catch you out, or eventually figure out the lie and try to manage you out. Tech managers know each other and word spreads; it’s not worth it.
Step 5: the conversation about salary
Congratulations, they want to hire you! Now comes the delicate part.
First, if you’re not familiar with the anchoring cognitive bias, become so.
The employer might ask you how much you were on in your previous job. If your preferred amount is close or lower, tell them. Otherwise, politely decline to answer; you’d be anchoring yourself too low. “I’d rather not answer that, if that’s OK.”
The employer might ask you how much you are looking for. Remember, by this stage they’ve probably already decided what they want to offer you. This has one advantage and two disadvantages:
Advantage: You get to anchor the number in their minds, which is great if you think they don’t know what you’re worth.
Disadvantage: If you go in too low, they’ll just accept your low offer and you’ll miss out.
Disadvantage: If you go in way too high, they’ll decide that your expectation is so out of line with what they’re prepared to offer that the interview will end then and there. (This has happened in interviews I’ve run at least a dozen times, especially with “senior” applicants looking to move from an enterprise architect role to a developer role. Even if they had eventually accepted a lower salary, I couldn’t imagine that they would have stuck around for more than a year.)
Unless you are very confident that you can pick a number that’s slightly above the one in their minds, or that they’re desperate to specifically hire you because you’re a magical unicorn, do not answer this question. Instead say something like “If it’s OK, I’d like to understand what Company is prepared to offer me.”
Then, hopefully, they’ll throw out a number. In some organisations, this will be a low offer, expecting you’ll negotiate up. In other organisations, this is a final offer. Unfortunately, you will not know which one it is. Yet.
If their offer is at or above your preferred amount, yay. You’re done. Yes, you might be able to get more if you push, but if you’ve done your research properly, they’re probably offering you a good industry salary. Up to you whether you want to push them for another $5–10k.
Step 6: the negotiation
If it’s under your preferred amount, thank them for the offer, tell them you’re excited about working at the company, and say you were looking for ~$5–10k more than your preferred salary. This is the time to immediately reinforce why you are worth that using the knowledge you’ve gained from your peers, questioning other employees, and industry data.
Be calm. Your mind might be screaming at you, but your body will not betray you. Focus on talking and breathing slowly, really slowly. Maintain eye contact with the people in the room. Stay light and positive. Make your employer feel safe, but let them know that you’re worth more. You’re not in an argument or confrontation; you’re having a (very important) discussion. You’re also demonstrating how awesome you are in a conflict situation.
Role-playing this scenario with someone you trust will be the most valuable five minutes you’ve ever spent.
Under no circumstances should you go under your walk-away amount. If the employer is not offering enough after the discussion, you have a simple response: “Thanks. I’d like to have a think about your offer and talk it over with some people.” Be polite and warm. Sleep on it overnight, and do talk to people you trust. In the heat of the moment, it can feel like there’s a lot of pressure, but once you step out you’ll find you can think a lot more clearly. There may be better jobs out there for you.
Negotiating a salary is not most developers’ idea of fun. But understanding your employer’s needs and wants, being able to articulate how you can help them, and remaining calm during the negotiation should allow everyone to get what they want. Best of luck!