I'm heading into my first job (i.e. they're bringing me on for a full position) in Software Development and am quite nervous about how the whole salary negotiation thing goes. Glassdoor.com says that my position for my (lack of) experience offers something ridiculously high like 85k. Salary.com says that Software Developers with no experience in my location get about 65k.

From some research, I know I shouldn't say a number before they do. But let's say they offer me Xk. What should I counter with? Do I say things like "My research shows that people around my experience level for this position at this company earn much more...", etc?

  • 2
    Welcome to the Programmer's Stack Exchange! Salary negotiations are off-topic for this group, I'm afraid. – J.K. Jul 28 '11 at 2:15
  • 1
    Salaries are too localized to be of general interest. – S.Lott Jul 28 '11 at 2:38
  • 13
    Specific salaries are certainly localized. But a general approach is quite useful, and certainly no more off-topic than a lot of things on this site. – Bob Murphy Jul 28 '11 at 2:42
  • I agree with @Bob Murphy, the specific figures are off topic but techniques probably aren't – MattyD Jul 28 '11 at 3:02
  • 7
    I don't know if this is off-topic, but it's a general question about negotiating salaries, not a localized question about how much does an XML monkey earn in Little Hope, New Hampshire – Joel Spolsky Jul 28 '11 at 3:41

First you have to figure out: is this salary negotiable at all?

If you were coming to work for me, salary would not be negotiable. I pay people the right amount and don't negotiate, and so they almost always take it. Similarly, if you were applying for a government job, or a first job out of school at a big company, it's very unlikely that salary would be negotiable.

But if it is negotiable, you're going to have to negotiate.

There is only ONE THING you have to know about negotiation. Only one. When you know this thing, you will be a good negotiator.

Here is that thing: BATNA. It stands for Best Alternative To Negotiated Agreement. Google it. Study it. Live it.

The bottom line is: if you only have one job offer, and you need to work, you have NO alternative. Your negotiating position is extremely weak. You will get paid something near the bottom of the range.

But if you have TWO job offers, and you'd be willing to take either, then you are in a VASTLY better position. As soon as you have two offers, your suitors will have to pay you market.

When you have a compelling alternative, it won't matter if you're inexperienced or shy about negotiation. All that matters is that you have TWO offers in hand. You know why? Because you'll say, "THAT'S NICE, $65,000 IS NICE AND ALL, BUT JOE DOWN THE STREET WILL PAY ME $69,000 SO I'M GOING THERE."

The same applies to the company hiring you. Do they have anyone else who can possibly do the job you're going to do? No? Well, then, their negotiating position is terribly weak. They have to pay you whatever you demand, because nobody else can do it. There may be other alternatives. Maybe it'll cost them $500,000 if they leave the work un-done. OK, now they have to pay you $499,999. Why? BATNA. Their best alternative to paying you $499,999 is to leave the work undone.

This is probably not their position. They may have other people waiting to do the same job. Other people who will take $50,000. OK, now the best salary you can get from them is $49,999. Unless, of course, you have an offer from someone else at $70,000. In that case you're going to work for someone else.

BOTTOM LINE: Negotiating consists of one thing and one thing only: Lining up the best possible alternative that you can. In your situation, you need to get as many other job offers lined up as possible.

(They know this, so they may use various tricks to insure that you don't have time to line up additional offers. They might tell you that they need to hear back from you right away. This may be true, but nine times out of ten, they are trying to limit your ability to line up another job offer so they don't have to pay you market).

I've gone on too long here, so I'll stop. There are more details. Good luck.

| improve this answer | |
  • Thanks a lot for this info. I am definitely negotiating from a place of very low power. Since this is a dream job for me, I'm not going to push it. – Psudo Nim Jul 28 '11 at 3:57
  • 2
    +1: This is an example of my main rule of adversarial business negotiations: "Whoever can afford to walk away from the table first always wins." It doesn't hurt to be in that position even if things are cooperative, and you never know when they might turn adversarial, so I always try to always be able and willing to walk. – Bob Murphy Jul 28 '11 at 3:59

In your shoes, if I got an unacceptably low offer, I would just say something like, "I've researched this on a variety of websites including Salary.com and Glassdoor.com, and they indicate typical salaries for this position are $X-$Y in our area." Then I'd explain why I thought I should be in whatever part of the range I thought was suitable.

They may ask you for a number first. That happened to me at my first job out of college (as a chemist, in 1979). The guy who asked this was actually a really great guy when I got to know him, and he wasn't doing this to trick me. It was actually an interview question - was I astute enough to have researched this?

Of course, there were no salary web sites - there wasn't even a web - but I was able to reply, "The Wall Street Journal last month said typical salaries for someone with a bachelor's in chemistry right out of college are $A-$B, and given my qualifications, I think I should be in the upper end of that range." And that was what I got.

| improve this answer | |
  • 6
    +1 for knowing what you are worth, and doing your homework. – Robert Harvey Jul 28 '11 at 3:43

It sounds like you've done some decent research which will tell you if their offer is fair. Bear in mind how much you want the job in case you negotiate too hard and risk losing the offer.

Let's assume that an acceptable salary is the lower amount. See what they offer - dodge any attempts to get you to name your desired salary. If they make a decent offer see if you can get a couple of thousand extra just so they don't feel too upset when you accept with a broad grin. If their offer is too low, provide justification and suggest that $n would be more acceptable. Make $n the higher number and quote the website as a reference to prove you're not being greedy for the sake of it. If they can't / won't meet that they should come back with a counter offer within the acceptable range in which case try to add some non-monetary benefits e.g. flexible hours or more holidays - whatever is valuable for you.

Good luck

| improve this answer | |
  • 1
    "Accent an offer if it's within my acceptable range, but ask for a few thousand more." This is exactly the kind of advice I wanted. Thank you. – Psudo Nim Jul 28 '11 at 3:55

You need to look at a number of factors, such as your geographic area, area of expertise (for example, enterprise software versus embedded systems), and industry (financial, healthcare, defense, and so on), in addition to your education and work experience.

After considering all the factors, take a look at what other jobs in the area are paying, also noting the different factors. There are a number of sites that have data - PayScale and Salary.com come to mind, and you could also look at any government jobs in your area as those are usually associated with a pay scale and positions are clearly posted with experience and the associate pay grade.

Don't just rely on a single source for this information. Keep looking at job postings with salary ranges, pay scales, benefits, and so on, and compare them. You might need to get some information (like benefits) from corporate websites, so check those out. Most reputable companies would be competitive. In an area, they are competing for the same workforce. I would suspect that most companies would be competitive in terms of salary and benefits, but you do need to check and confirm everything.

You can also look at cost-of-living data for your geographic area. Your salary needs to be greater than your expenses for living in a particular area. This includes taxes, gas, food, housing and utilities, clothing, and so on. You also need more than just covering these expenses, so you can afford to have a life outside of work.

It's not just about the salary either. There are typically benefits associated with the job. It might be possible that a job with a slightly lower salary would have greater benefits associated with it.

When you finally have an offer (or multiple offers), don't be afraid to negotiate. Multiple offers makes it easier, but again, you need to consider the big picture (salary + benefits + work environment). If looking at multiple geographic areas, you need to consider differences in cost of living as well, when comparing offers. If you feel the company that you really want to work for is offering too little, ask to see what they can do to help increase salary, add sign-on bonuses, or with benefits.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.