DEV Community

Alex 👨🏼‍💻FullStack.Cafe for FullStack.Cafe

Posted on • Updated on • Originally published at

5 Salary Negotiation Rules for Software Developers. Get +20% On Top of Your Market Rate

5 Salary Negotiation Rules for Software Developers. Get +20% On Top of Your Market Rate

Salary negotiation is one and only the most powerful and life impactful soft skill you have never been taught as a developer. In that quick practical guide, I'll reveal the ultimate dev salary negotiation strategy with samples of real questions and answers that help you to raise your next salary number by 20-30% on top of the market rate.

🔴 Originally published on FullStack.Cafe - Kill Your Tech & Coding Interview

5 Secret Rules of Salary Negotiation

Remember the five basic rules of salary negotiation:

  • Rule 1: Never tell your current salary
  • Rule 2: Never tell the salary you want
  • Rule 3: Know your minimal acceptable salary (let's define it as X) and the list of non-monetary benefits you want before an interview for example 45 vacation days, 2 days remote and etc.
  • Rule 4: Someone who has money (employer) names the price first
  • Rule 5: Always keep your offer opened, don't burn all the bridges

Before Interview

Polish and optimize your dev resume first. Use that Ultimate Dev Resume Optimization Guide to increase your response rates and get more interview invitations. A solid resume shows a potential employer how much value (at least a perception of it) you could bring to the company that directly linked to the salary rate they would ready to negotiate. Don't oversell yourself thought. Remember, honesty is always the best policy.

First Phone Call

Agent asking:

What is your current salary rate?

  • Your answer #1: Hey, I'm not comfortable to disclose this information because of a non-disclosure agreement (NDA) I signed with my current/former employer.
  • Your answer #2: Listen, I'd privately negotiateed that topic with my manager/CTO/founder and would prefer to keep that conversation just between our parties. I'm sure you'll understand me cause if we would work together and will have any private conversations with you the company could be sure 'll never disclose it as well.

Agent asking:

What salary are you looking for?

  • Your answer #1: Thank you for that question. On this stage let us check first that we are a great fit for each other and we could circle back to that questions later.
  • Your answer #2: Thank you for that question. Hey, I'm just an engineer, I'm sure you know the market better than me so I trust you to evaluate my skill set first and if we are a great fit to circle back to that topic.
  • Your answer #3: Thank you for that question. Listen, I'm just an engineer and I feel myself uncomfortable to dictate your company the rate you willing to pay for a professional like me. I'm pretty sure you know the market and company conditions better than me and would be able to evaluate my skill set based on the value I'll bring to the company.
  • If agent pushing, you say: Why wouldn't you tell me your ranges (Y) so I could ballpark if that aligned with my career goals?
    • If Y is less than X, say: Thank you, my current salary rate is higher, but you could always call me back at any time if you still think we are a great fit for each other.
    • if Y is equal or higher X, say: Thank you, I think we are on the same page in terms of salary ranges but let us circle back to that conversation later after we will check how good is our mutual fit.
  • If agent pushing, like "I need a number to fill a form", just say: Just put a dollar so we could circle back to that later.

Tech Interview

Do you best to stay strong on your tech interview to negotiate a better rate. The more value you'll show on that stage the more leverage you'll have during the salary negotiation discussion. Check those articles to prepare:

Negotiation stage

Employer asking on the interview:

Ok, let's talk offer. What salary are you looking for?'

  • Your answer #1: Thank you for your time on that interview. I'm pretty sure on this stage you're quite familiar with my skill set, strengths, and weakness so would you mind to tell me what payment rate are you looking to offer for a professional like me?
  • Your answer #2: Thank you for your time. Listen, I just an engineer who is focusing on technical stuff and doing his job as best as possible. We going to have/ already had that extensive conversation around the value I could bring to the company so I trust you to evaluate my skill set based on your business needs and tell me the rate you willing to pay.
  • Your answer #3: Thank you for your time. Hey, I'm pretty sure on that stage you know better what kind of value I could bring to your company so I don't feel comfortable to dictate your the payment rate you willing to pay for a professional like me. But you could tell me the number you have in your mind.

Employer tell you the number:

We ready to offer you Y. What do you say?'

  • If Y is less than X, say:
    • Hey, I appreciate your time and really interested to join your team but my current salary rate is higher than that/sorry, that rate is not aligned with my career goals. Is it the highest rate you would like to offer me?
    • They tell "yes, it's the highest number we could pay", you say: Ok. Let us have a break for a couple of days. Call me back if you think we still a great fit for each other.
  • If Y is equal or higher X, say: Thank you for your offer. It sounds very encouraging and I would say we are really close. Let us step aside from the salary number for a while and talk other benefits your company could offer.
    • How many vacation days do you offer? Could you make 45-50?
    • I would love to do remote 2 days per week. Do you think it's possible?
    • I'm dropping my kids to a kindergarten each morning and really need to start at 10 am. Is it ok?
  • They tell, "We could do C, but not A, B". You're asking: Ok, if there anything you could do to substitute A, B, for example, do C+other perk?
    • If you are not happy with non-material benefits, say: Sorry, your offer is great but not aligned with my personal goals and my family situation. Let's us have a break for a couple of days. Call me back if you still think it's a great fit.
    • If you are happy with non-material benefits, say: Ok, in that case, I think Z = Y+20% would work for me.
    • They tell, "No, we can't afford it". You're asking: Ok, what is the highest rate you could offer me?
    • They tell, "The max we could do is Y1", you say: Ok, we are really close, so could you do Z1 = Y1+10% and 50 vacation days (name any other benefit)?
      • Keep it going until you happy with the number/benefits balance. Your primary goal here is to understand what is the "MAX package" (salary + benefits) they could offer for that position. Don't be afraid to push them because in the worst case scenario you'll still get the minimal acceptable salary plus "some" benefits you're already happy with.
    • Eventually they tell, "Yes, we could do that". You say: Ok. Thank you for your time, please send me your offer then. I will review it in a couple of days and let you know.

Final Advice

Try to model that dialog with your friend before an interview to train yourself to stay confident under the enormous negotiation pressure. Practice that strategy as often as you could to master your negotiation skills.

Thanks 🙌 for reading and good luck on your interview!
Please share this article with your fellow devs if you like it!
Check more FullStack Interview Questions & Answers on 👉

Top comments (44)

cvega profile image
Casey Vega

I find this discussion is much easier when you're upfront and open. "This is the minimum salary I require". Recruiters will do one of two things, pass or move you forward in the process. It's that simple.

Why even waste time with interviews and lying about NDA's when you can cut right to the chase? What you're describing is how not to get a job by being evasive and dishonest.

jaysonesmith profile image
Jayson Smith

I'm definitely not okay with a suggestion being to lie about being under NDA. That's shady. :/

eduardomoroni profile image
Eduardo Moroni

My current and my previous Company had this NDA written in the contract. Lying is always bad, I think he tried to say that If you have this, you could use this as an argument.

Thread Thread
cvega profile image
Casey Vega

If you signed an NDA in the US with language that is specific to your salary it's likely your NDA is one-sided and not enforceable. It's an invalid argument if the employer is based in the United States. Since this article did not limit it's jurisdiction, I can only speak to what is true for those seeking employment within the US.

Companies covered by the National Labor Relations Act (NLRA) cannot limit employees’ concerted activities for the purpose of “collective bargaining or other mutual aid or protection” according to Section 7 of the NLRA

President Obama also created an Executive Order

Non-Retaliation for Disclosure of Compensation Information

pchinery profile image

Given the wide range of comments, it looks very culture-specific to me. Some guys live the strategy, some don't like it. Personally, I don't like it.

If someone is approaching me and is not willing to give anything precise and tries to push for more personally, it very often is a sign of a person that is more interested in optimizing the personal life and not about building a long-term relationship with the company. These few interviews are not much time to really evaluate the skills and on the CV, you could also lie (if you lied on the NDA, which does not really make sense). Basically, you often see what you have after the first months. From there, employees can profoundly argument with their proven performance within the company.

After the second discussion that evolves this way, I would put the candidate on hold. I prefer honest and open discussions. This is to respect the candidate's tone in case we are far of from what he is expecting as well as my time in talking to candidates that might be interested in receiving money and doing the least effort that is required to justify it, but not really interested in working for a sufficiently long time in the company to justify the high onboarding costs for hiribg abd training. And with a lower risk that the guy jumps for the next job after a short time if it means higher salary or less actual work.

k4ml profile image
Kamal Mustafa

Shouldn't it much easier for the employer to state the range they have in their budget? In one of our local community, there's a rule that all job ads must include salary range.

thomasjunkos profile image
Thomas Junkツ

I prefer not to get more money or a raise. I prefer working less hours.

My time is invaluable.

janphkoch profile image

Thank you for this Rules! They are great!

This is so much needed within schools and universitys.

But something else is bothering me... whom on eath do i need to make coffee for to get 45-50 days of paid vacation? :D I have the basic 25 days here in Germany.

kurisutofu profile image
kurisutofu • Edited

I had similar advices given to me by 3rd party agents but in my experience, it always went something like this.

Hiring manager: What's your current salary?
Me: I'd prefer not to discuss this and let my agent handle those dicussions.
HM: Ok, then what salary are you expecting?
Me: This will also be handled by my agent and I trust you will evaluable my skills against the market.
HM: Well, we would prefer hearing it from you.

That's when I usually say it because it would be found rude if I keep on insisting not to say anything ...

I found that the conversation goes better if I reply honestly.

I usually choose a minimum amount I want and set it as "my actual salary".

Then I pad it a little (usually I add 20%) and ask for this as a minimum.
I usually jokingly say "The minimum I'd require is xxxx but of course, I would not refuse if you went even higher".

Of course, you may end up getting less than if you don't say anything.

yaser profile image
Yaser Al-Najjar • Edited

Love it !

Why would you let the employer dictate the first number since the usual result would be around that number?

I mean if he tells you will be paid $30 per hour, if you say no... most probably, you would get something around $35.

This video is interesting:

So why would I let him dictate the first number?

sturzl profile image
Avery • Edited

Exactly! Negotiation 101, the anchoring effect, put your number up there first. There may be reasons to wait but that's Negotiation 337, and most employers aren't trained in negotiation.

jason_espin profile image
Jason Espin

In the UK it's completely different. You can be honest about your current salary but tell your new potential employer what you know you are worth judging by what other people are on and also by seeing what other companies your are interviewing for are offering. The general rule when first starting out should always be, earn more than your age. So at 21 I made sure I was paid £24k and moved up from there. Now at 30 I'm paid more than double my age because with more skills and especially niche ones it becomes very easy to have companies getting into a bidding war over you.

workshopcraft profile image

I need to adjust your maths for my situation as i'm a recently graduated software dev at 41. makes the salary question extra complicated although I recently realised I have over 2 years industry experience from previous work

jason_espin profile image
Jason Espin

Granted, it is a lot more difficult to apply the same logic when you are starting out at a later age. Still, as you would be considered a junior developer here in the UK you could probably start to push it to about £27k. The key thing is, if you don't receive a payrise after a year, move on. It's sometimes best to stay in your first role for 2 years to show to other companies you are loyal but after that it's really important that your wage goes up every year. Software development is still in very short supply as a skill and supply and demand has to kick in.

lobsterpants66 profile image
Chris Shepherd

I gotta say this all sounds insane to me. In Britain most of the first contact will come from a recruitment consultant. One of the questions they will ask is how much you would like to earn. Obviously you are going to add a few thousand on top of your existing salary or why bother moving.

This saves you being sent for jobs that arn't paying enough. Recruitment consultants will still try to send you for jobs paying less than that because they really only care about commission.

When meeting with the company they will ask what I am currently on. I add all the financial value of all benefits to my salary and add a few thousand on top of that. They will normally offer enough over that to make it worth my while and stop counter offers from my existing company.

When I have been recruiting, if someone evaded answering a simple question like how much money they are currently earning they certainly would not be on the recruit pile!

ewoks profile image

In Europe is often just impossible not to state your salary expectation for new position at the beginning (basically during introduction talk with recruiter or next talk). I say impossible because they simply ask you and if you try to work around it without saying you will just be dismissed and they will not spend time with you, knowing that majority of candidates will just say it.

marinbenc profile image

Which is probably how it should be. A company does not have infinite money, so there's no point in wasting your or their time by going trough the interview and then being refused in the end.

ewoks profile image

Wrong, it shouldn't be like that at all.
They could offer salary range and not ask for it, but they choose to keep silent and force candidate to get into weaker position so they spend as little as possible. Difference is obvious.

echoes2099 profile image

The overall idea is solid. Note however that many companies have strict budgets, so if you don't talk salary up front, YOU WILL WASTE EVERYONE'S TIME by going thru the interview only to then walk away when the offer is too low.

So I usually ask for a salary range upfront. And if the max is too low then i walk away.

lobsterpants66 profile image
Chris Shepherd

Go for 7 figures somewhere you do want to work ;)

Nothing wrong with taking a pay cut if you get a longer term advantage out of it (better life balance, reskilling, etc). But also there is nothing wrong in getting paid what you are worth.

lobsterpants66 profile image
Chris Shepherd

Fair point, I usually leave that to the HR person I am interviewing with. Either way, if we got an evasive answer like the ones above we would probably just pass on that person completly.

marnold profile image
Max Arnold • Edited

A cutthroat approach like this may be ok for an ultra-competitive role in sales, but for an engineering position, it is a red flag.

Software development is a team sport. If you are so money-focused, selfish and non-empathetic to the other negotiating party (especially if on the other side is not a mindless HR agent but a person you'll work with), I wonder if you will have the same attitude with your teammates.

I've been on both sides, and I strongly prefer a more open and honest conversation.

P.S. I haven't had an opportunity to design a compensation scheme for a company, but if I had, I would choose the transparent system depending on a role, initial skills assessment, and seniority. If it is not a startup, then some sort of profit-sharing scheme is also nice to have.

bdwakefield profile image
Benjamin D Wakefield

Yeah... I am going to probably decide not to offer a job to someone who does this. It is unnecessarily evasive and kinda bordering being a jerk. Might be cultural... but that wouldn't really fly for me. You shouldn't start a relationship by lying about NDAs... which almost everyone knows are bull anyway.

You are best off doing your own research and deciding what the market rate for your skills likely is and using that as a guide.

This whole approach is pretty much insane. Especially because I know what I can afford for a given position and I really don't want to waste anyone's time. If I know my top dollar available is Z and coming out of the gate I know you want at least Y which is Z + X; I'll save everyone some time knowing that I cannot match the salary.

brianfoley81 profile image
Brian Foley

Your answer #2: Thank you for that question. Hey, I'm just an engineer, I'm sure you know the market better than me so I trust you to evaluate my skill set first and if we are a great fit to circle back to that topic.

Uhhh.......this is the second weirdest suggestion in the article after suggesting you lie about being on an NDA. The last thing you want to do is go in and tell your next employer, who would be thrilled to pay you as little as possible, that you're just a simple tech guy and you don't understand money so please pay me something fair!

Here's the #1 thing you need to know about salary negotiation: The first person who mentions money loses. If they ask you how much you're making now, say that's private information you're not looking to share. Yes, be that direct. If they ask what you're looking for, say you're willing to entertain a fair market salary for the position. If they say you're being vague, say let's see if you're a good fit and you'll be willing to listen to whatever offer they're willing to give you. No matter what they offer you in the end, thank them for the offer and say you need to think on it for a few days because you have other interviews lined up (this can be your fib, if you're really looking to fib on something). Call them back a day or two later and say you really liked them but you have another good opportunity coming down the pipeline, but you're willing to sign today if they give you a bit of gravy on top of their offer.

Lastly, if salary and finance really does make you squeemish, that's why we have recruiters. They will handle all this stuff for you, because the more money you make, the more they will make when you're placed.

sudhan96 profile image
raja sudhan

Good one mate ! What are your thoughts on negotiating for a higher salary in the same company you are associated with ?

Some comments may only be visible to logged-in visitors. Sign in to view all comments.