
If average salaries are 80-100k why does everyone keep getting 40-60k offers? - solarmist
Are people's salaries really as high the numbers people are throwing around here? Around 80-100k for an average salary? My experience has been quite different. Is this just in big tech centers like SF, Seattle and NYC? Mainly consultant salaries? The people I know graduating with masters degrees from regional universities are getting 60k offers with undergrads getting 40-50k offers.<p>A little background for myself:<p>I've had a couple jobs. First was a student sys admin at U of MN computer science dept at about $10/hour (I think). Then in the Army where I made around $30k by the time I got out.<p>My next job in the industry was a relatively small company in the Portland area and there I made about $47k when I left and all new grads/entry level people were being offered $40k, no exceptions. The people there that had 5-10 years of experience were only making in the $65k range. And the senior developer/general manager was only making about $100k.<p>When I was offered the job I asked for $55k which I thought was really pushing it for only having some experience developing stuff in the army and in my classes.<p>So, what gives? What's with the Buick sized disconnect between my experiences and what I hear being discussed here on HN? Is there really a 40k difference in salaries just based on location?<p>All in all I consider myself a very good programmer (Honestly I'd guess in the top 80% of programmers, I haven't met one that's better than myself, but I don't consider myself nearly as experienced as a lot of the people here) that's passionate about coding and I've been doing it since I was in middle school, so I really want to be able to value myself accurately, but something just feels off about it. Looking at everything going on I'm thinking of leaving grad school if I can get offers like this?<p>Am I just marketing myself wrong? Any feedback would be appreciated.<p>You can check me out at github.com/solarmist or http://www.linkedin.com/pub/joshua-olson/5/521/88b.
======
jasonkester
Simple. You keep getting emails from recruiters advertising $50k/year Senior
Developer positions for the same reason that you get 200 resumes from
completely unqualified people for every position you advertise.

Good positions fill quickly, just like good developers find jobs quickly.
What's left is bad developers and bad jobs.

So what you're seeing is not hundreds of employers who don't know what the
market rate is. It's dozens of employers who refuse to believe the market rate
is where it is, and therefore continue advertising for the same position over
and over. There will always be that $50k Senior Dev position available in
Hillsboro because they're never going to fill it.

------
nostrademons
Short answer: yes, it's location.

Slightly longer answer: It almost always pays to go to the center of your
field. You get paid less at a relatively small company in Portland because
_they_ get paid less. Firms in Silicon Valley focus on eliminating whole
industries; when they succeed at that, they capture basically _all_ the value
that the incumbents in that industry had. That gives them large quantities of
cash, and since there are so many other companies in the region competing for
the same talent pool, a lot of that cash goes to employees.

BTW, $80-100K/year is quite low in Silicon Valley. That might be a starting
salary at Microsoft for someone fresh out of school.

~~~
chad_oliver
Although the other side of the coin is that Silicon Valley has much higher
living costs. Does this make a big difference? Do people in Silicon Valley
have significantly higher qualities of life, or is there an argument for
staying away from the expensive hubs?

~~~
ericd
I grew up on the East Coast, but I love Silicon Valley. Not necessarily as
much as I loved NYC, but they're very different.

Silicon Valley has really, really nice weather, almost to the point of
monotony. It rained something like 3 times last summer, and the rest of the
time it was 75-85 degrees without being too humid. There's a lot of asian
cuisine available, and some of the best restaurants (of many varieties) in the
world to the North in Napa. Nature is extremely accessible, and some of the
best skiing in the US is a relatively short drive (the Rockies are much, much
better than the Appalachians). It's a day-tripper's heaven.

As for downsides, Houses tend to be smaller, and even those are absurdly
expensive. Rents in the better parts are just a cut below low-end NYC rents.
The atmosphere could be described as "Irrational Exuberance" or more commonly
as an echo chamber, which can be great encouragement if you're trying to do
something crazy, but it can also severely weaken your BS filter if you're not
careful. Silicon Valley itself is better-than-average suburban sprawl, but
it's still suburban sprawl. The public transit system is lackluster compared
to NYC, but it is an option, at least. Access to a car is generally necessary
(ZipCar might work, though).

There are a bunch of other upsides and downsides, but those are the
impressions off the top of my head from having lived there a bit less than a
year. Overall, I really like it.

~~~
whimsy
It is about 15 hours to the Rockies. Did you mean the Sierra Nevada mountains?

~~~
ericd
Sorry, you're right, I was lumping the two together. Convenient and cheap
flights to the Rockies, though. :-)

------
starpilot
Voluntary response bias. The higher earners are more willing to advertise what
they make.

Also, I've heard that companies prefer to pay what a job (they think) is
worth, regardless of location. Just something I've heard.

~~~
sqrt17
Companies pay whatever makes sense to pay from a business sense of view. If
there is supply of software developers working for 65k/yr, and they don't know
how to get 50% more value out of a 100k/yr developer (either because they're
unable to figure out, or not interested, or because their business hinges on
something else and doesn't scale with better software), then it does not make
any sense for them to pay more.

And of course, they will think that whatever they pay is whatever it is worth,
because they have no other indicator of fair prices.

------
abossy
If you're the best programmer you know, then you're probably not in a
competitive enough market to drive prices up for programmers.

In a place like Silicon Valley, it's impossible to not meet somebody that's
better than you.

Either that, or I'm seriously underestimating your programming ability!

~~~
solarmist
Lol, I'm probably just a decent sized fish in a small pond, but I do keep
growing, so I've been looking to find myself a bigger pond.

~~~
eyeareque
I made the move to Silicon Valley about four years ago. It was one of the best
choices I've made in my life. I wish I would have made the move a long time
ago.

If you only make around 60k now, don't expect to get a 100% raise once you
move over to a tech hub, unless you are an amazing negotiator. Shoot for 85-90
(plus some stocks). Don't waste time at a company that doesn't have a lot of
growth potential. Work harder and output more than the rest of your team does.
Stay visible, make sure they know the value of your contributions. A few 10%
raises/promotions later and you could be up to 120k+ in no time.

------
Timothee
These "salary" threads of the past week have been a bit depressing to me. Like
you, most of the salaries discussed in these threads make me feel like I've
been and am still underpaid.

And this one is no other. And I live in the Bay Area… my internship was
nowhere the $8k mentioned at some point for Google and my first salary was
pretty far from the $100k that are floating around here once again.

That being said, I actually checked salaries of H1b (I was one too) at my
current and previous companies and mine looked decent in comparison. So, I'm
not sure if it's matter of me picking the wrong/cheap companies (and being bad
at negotiating, but I know that) or that there is some selection bias going
on.

~~~
timcederman
Salaries in the Bay Area remind me of sushi restaurants in Tokyo. The vast
majority are in a fairly normal band that we can all relate to. Then there are
the upper echelon which make a very sudden and alarming jump in price. Much
like how Chowhound focuses on the creme de la creme and its commensurate
pricing, HN focuses on the top 1-5% of tech jobs.

------
callmevlad
Total nitpick, but by saying that you are "in the top 80% of programmers" do
you really mean you consider yourself in the top 20%? Because if you are in
the top 80, there could definitely be a reason why you are drawing such a low
salary :)

~~~
solarmist
You got me. I hope I'm in better than the top 80%, but I'm doubting myself now
that I wrote that... :P

~~~
maigret
You did it again! How could anyone be better than the top x%? ;)

------
switch
HN ate up my first comment so here's a shorter one (relatively).

1) Becoming a Top 5% coder will end up being a much better thing to focus on
than how much money you can earn by leaving grad school.

2) I got a 48% pay increase once. An article at Quintessential Careers - you
never name a price/desired salary and never disclose your past salary. There
are a TON of little things like this that programmers just don't realize.

Most companies are losers - they would rather pay you $50K for $100K of work
and have you miserable than pay you $100K and have you happy and contribute $1
million worth of work. You have to get them to pay you a lot.

3) Do you really want to leave grad school for an offer like this? Is it the
money - because if you like grad school but would leave for a job that you
don't like just for money then it would be a colossal failure.

4) Eastern Wa and Portland. Waste of your life if you're a developer.

Ideal - Silicon Valley, NYC. Very Good - Seattle, Austin, Boston, perhaps
places like Colorado etc.

Portland people are cool and girls are amazing. However, if you want to be the
best you have to go where the best are.

5) Your post about 'Let down by School' etc. Get out of that thinking - You
are responsible 100%. You were let down only by yourself.

6) You have to figure out what markets out of the ones you like are hot.

iPhone and Android App developers are charging $100 per hour or more. So 470
hours (10 weeks) for what you are saying average salary ($47K). It's going to
become even more. I'm not even talking about the best. This is top 15% of
mobile app developers.

7) Why exactly do you care whether you make $50K a year or $100K?

~~~
solarmist
Thanks for your thoughtful comments. 1.) It's not just the money, or even
mainly the money (I lived quite happily on my $45k). I want a place where I
can become a Top 5% coder and I don't see that happening in Eastern
Washington.

3.) I do enjoy grad school, but I'm at a mediocre school and I've learned that
I enjoy coding much more than research.

4.) I'm in Eastern WA temporarily due to personal reasons, my next stop is
either Seattle or the Valley.

5.) That post was more in response to what I hear from other people, trying to
encourage them to get out of that thinking. If that's how I came across I'd
better look it over again though. I'm quite happy with where I'm at and I do
try to take responsibility for my actions.

7.)Main reason I can think of is companies that value software pay those kind
of salaries vs. companies looking for code zombies. I've been in a shop nearly
like that and I don't want to repeat it.

------
webwright
[http://www.indeed.com/salary?q1=software+engineer&l1=San...](http://www.indeed.com/salary?q1=software+engineer&l1=San+Francisco%2C+CA&tm=1)

There's a huge race for talent right now. You've got a peculiar background
compared to most startup hires, but if you've got the chops to make it thru an
interview, I imagine you'd get snatched up in the Valley (or Seattle) for
$100-110k, easy. In the Valley, probably more.

I know a great company in Seattle that'd give you a $12k signing bonus, give
ME $12k for referring you, and give you an iPad just for making it to the
interview process.

Disclaimer: No idea if you can ship software, how broad your skills are (web
dev front end to backend? Sysadmin chops? iOS?), etc.

~~~
stevenj
Who's the company?

~~~
webwright
SEOmoz. Great company, great team, amazing growth, great founder.

~~~
bricestacey
That offer has been on the table awhile. I suspect they're desperate for top
talent. I don't mean this in a bad way, but I highly doubt an impromptu
conversation in this particular topic will be a winner.

------
cshirky
I don't know the figures you are looking at, but an _average_ salary isn't the
same as the _median_ salary. It's like that old joke: "Bill Gates walks into a
bar and makes everyone a millionaire, on average." One programmer getting a
$500K salary and 10 getting $50K leaves a $90K average.

Now if you are just using the words average and median as substitutes and are
seeing figures talking about $80K _median_ salaries, then the
"location/experience" are likely to be the explanation, but if you really are
hearing about average salaries, you have to factor in that, in systems with
the characteristic imbalance of wages, something like 85% of programmers will
get below-average salaries.

~~~
Tycho
But technically the _mean_ salary isn't the same as the _average_ salary
either. In fact they are _both_ 'averages.'

(sorry, nitpicking. Your point stil stands)

------
plinkplonk
Anecdote - one of my friends (who is a good, but not mindblowing developer) is
drawing a 180k$ in San Fransisco for (essentially) maintaining a CRUD
insurance app in Rails. He is being wooed by a social gaming (yeah I know!)
company who is offering him 200k. So I'd think 100k would be low _in San
Fran_. Just as a contrast, 100k is a toprange salary for a _really_ good
developer in Bangalore. By and large only managers make that kind of money
hereabouts.

My friend says that he isn't able to get people to join his present company
even at those rates and the only people attending interviews are clueless
Indian developers who are waiting for their Green Cards[1] but hardly know how
to create a table in MySQL. The good people who do join soon leave for better
companies or startups.

[1] I am Indian myself fwiw. I am not saying all Indian devs are clueless,
just that those applying at my friend's company are.

~~~
timcederman
$200k base salary in the Bay Area is Engineering Manager level - VP at a well-
funded startup, or Sr Director at a larger company. Not sure what your friend
is doing.

$75-$100k represents 0-5 year engineer in the vast majority of cases. Most
mid-career folks earn between $130-$160k.

n.b. There are definitely exceptions. Difficult and specific hires will
generally command market rate + 50%.

~~~
plinkplonk
"$200k base salary in the Bay Area is Engineering Manager level - VP at a
well-funded startup, or Sr Director at a larger company. Not sure what your
friend is doing."

First I think it is 180k gross salary, not really "base". Second, as I said,
all I know is that he is working on some kind of CRUD Rails Insurance App that
makes its company millions of dollars. He is just a competent Rails dev. No
genius of any kind or any extraordinary skills like, say Linus Torvalds. Maybe
he is being paid a premium because he is the only capable dev in the company.
Maybe he just got lucky. He has a dozen years or so of experience. I really
don't know any details hence the "anecdote" prefix.

If it helps, I knew middle managers at Intuit were drawing well above 200k US$
at nowhere near "Senior Director" level. My immediate boss _in India_ was
drawing around that much. And his boss about 300k. Another "dotted line"/
matrix org( heh!) immediate superior was getting >250k as well. This guy was a
"Chief Architect" and not manager at all. (well in Intuit all these positions
are very political and not really about tech at all, still) And _he_ had a 3-4
layers above him before he reached the boardroom players at Intuit. I don't
consider GlassDoor to be authoritative but here is a report for a position
(plain jane "architect") that would be one level below my "Chief Architect"
boss.

[http://www.glassdoor.com/Salary/Intuit-Software-Architect-
Mo...](http://www.glassdoor.com/Salary/Intuit-Software-Architect-Mountain-
View-Salaries-EJI_IE2293.0,6_KO7,25_IL.26,39_IC1147431.htm)

Seems to bear out my thesis that these kind of salaries aren't all _that_
rare. To repeat, I am _not_ saying GlassDoor estimates are accurate, just that
in this case, it bears out my personal experience.

Another anecdote: My title at Intuit (India) had an additional (and empty)
"Senior Program Manager" tacked onto "Architect" and I was getting > 100k _in
India_. (In Intuit, when I was there, Indian salaries were roughly half US
salaries for the same position.) They still find it very hard to hire senior
technical people. Go figure.

My personal hypothesis on such things is that salaries follow _perceived_ (vs
actual) value add. I had nothing to do at Intuit except attend endless
meetings about meetings and write the occasional email. I quit in 6 months.(It
helped that I really didn't need the money and I could make an equivalent
amount but actually working for it (which I am doing now touch wood)). My
former division at Intuit has delivered nothing (except PowerPoint) in the
last couple of years but everyone who is still there keeps drawing their
salaries. Some even got raises.

So, yes. Intuit is a cash flush/high paying company, but I still wouldn't
really blink at someone getting 200 k in San Fransisco, without being anything
like a VP, but hey I don't live there. What do I know? I am glad to concede to
people "on the ground".

PS : I also have friends, who are _really_ good developers working on very
cutting edge projects in Google (Mountain View) who don't make anything near
250 k. They are very fulfilled by their work and don't seem to care. So it
seems to be all over the place. But there certainly _are_ very normal devs
getting >200k in SV. (and of course many more at WallStreet companies but that
is probably a separate discussion).

~~~
timcederman
180k package makes a lot more sense. 140k base + 20% bonus target + 10k stock
is what a lot of senior developers make.

In my experience "chief architects" do tend to get paid a lot, regardless of
direct reports.

By the way - this discussion is very confusing since most people in this
thread are talking about base salary, yet you seem to consistently talk about
entire package.

------
antirez
I wonder what is the net income of 100k after you pay taxes. As a guy living
in Europe I don't have a clue about how it works in US, for instance if in UE
the company is spending 100k euro for you, you end with 45k in your pockets
(there are differences between countries but more or less those are the
numbers). And this is unrelated to the amount of money you spend. If you buy a
car the amount of taxes you pay does not change, you can use your 45k to buy
what you want or to take them in your bank account (that's lame IMHO people
spending should be advantaged).

So what you can do with 45k year? Well this is 3750 euro per month, it's
enough to pay for a decent house, to pay your bills, to go for vacation a few
times per year. If you have sons better your wife to work as well, otherwise
life it is still feasible but with restrictions.

What you can do with $100k in US and how much of this are spent in taxes?

Edit: btw a difference is that in UE you don't have to think too much about
putting money in the bank in order to retire, the government will provide you
with a post-work salary that is proportional to your past income (at least
this is how it works in Italy, France, Germany, ...). Also medical stuff are
mostly free.

~~~
pilib
I'm from Europe too. There are some specifics, but you can look at Wikipedia
and find calculators online that explain what is deducted from gross income.

You have social security, medicare, state and federal income tax.

You should take into account that some parts of the US are more expensive than
others, and that state income tax is not the same for every state. Also, 401k
(pension plans) and some other types of savings, investments are deductible
from the taxes.

It all depends on who you live with, do you have children, etc.

~~~
antirez
Thanks for the information, one of the most interesting thing for me is if in
most states in US you can deduct taxes if you buy normal things, like a car, a
computer, and so forth. In Italy everybody cites the US as example of how
taxes should be payed (at least about the general model: everybody pays but
less, if you don't pay: huge troubles). One if this dogma about the US system
is that you can deduce everything you spend more or less.

~~~
troydavis
This is inaccurate. The things you list (car, computer, other consumer
purchases) are not personal deductions under the US tax system.

Relatively few personal purchases are deductible. The most heavily used
personal deduction is mortgage interest (interest, not principal). Otherwise
most personal deductions are things like tuition, major healthcare expenses,
tax paid elsewhere (sales, property), and alimony payments.

And for a majority of Americans, none of these things actually appear on their
tax return. Only 41% of American taxpayers file a return listing the
deductions above ("itemize"), usually because they carry a mortgage.

The other 59% just take a single deduction ("standard deduction") of about
$5800 per adult (<http://en.wikipedia.org/wiki/Standard_deduction>).

Finally, if someone found legitimate ways to deduct the things you listed (for
example, they were unreimbursed business expenses), they would run into the
Alternative Minimum Tax (AMT). AMT is a floor on the percent of income which
must be paid as tax. In calculating AMT, most deductions get ignored (and it
ignores one's effective tax rate in other years).

~~~
bricestacey
There are a lot of available credits though.

The American Opportunity/Hope and Lifetime Learning Credits can be applied
when using the standard deduction. Also, many cars have significant tax
credits though it seems the bar has been raised.

------
btilly
Firstly location.

Secondly just out of school should get significantly below average salaries.
You don't realize it until you've been out in the working world for a bit. But
people learn a _lot_ in their first few years of being in the real world.

Thirdly I wonder whether your figures are accurate. My experience is that
people's impressions of other people's salaries are often out of sync with
reality. In part because companies push people who make more to never let on
that they do, so that other people don't push to make more money. (I've had
the experience at multiple jobs of being told directly that letting people
know my salary is a fireable offense.)

~~~
sskates
My understanding is that making you not disclose your salary is unenforceable.
They can get mad at you, but they don't actually have recourse.

~~~
btilly
In an "at will" state you can be fired at any time for no reason.

I doubt that enforcement would be a problem if they wished to enforce it.

~~~
wyclif
They'd have to prove you disclosed it. As has been discussed here recently,
there are plenty of ways to do that among colleagues while maintaining
plausible denial.

~~~
mkjones
If it's at-will, they can fire you for whatever reason (or no reason). I don't
think they have to prove anything, except that you signed an at-will
employment agreement.

~~~
wyclif
Sure, but if the word on the street was that Company X fired somebody for
something as petty as disclosing salary, which again is not enforceable in
most States in the US, then I'd love to see them be able to hire effectively
in this market.

------
vinhboy
No one has said anything about the language or platform?

Please don't make this an argument about what language is better, blah blah
blah, but the language you specialize in makes a difference -- at least in
terms of salary.

From my limited experience, Ruby/Rails pays significantly more than PHP or
.NET . I hear Java pays even more... Just sayin...

Edit: This is why I love these salary threads. We could have just potentially
changed the OP's life (for the better I hope), even if to most people its just
an annoying topic that keeps coming up on HN.

------
pragmatic
Two things worked for me.

1\. Switch Jobs

2\. Ask for at least $10K more money each time.

1: Companies are aren't going to just give you money. They don't have much
incentive to do that. Most people take their 3% cost of living increase (plus
bonus and a few % if you are lucky).

Most of my contemporaries agree. You have to switch jobs.

2: If you don't ask for it, you aren't going to get it. HR depts have more
flexibility on hiring than raises. So coming in, make sure you get the
salary/bonus/vacation/etc you want right off the bat.

------
rms
Bay Area salaries are really that high. However, the standards for hiring are
much higher out here. Interviewers out here can really smell your actual
ability; BS that would work to get you a job on the East Coast doesn't fly out
here.

So the salaries are higher, but the standards for hiring are also that much
higher. If you are that good at programming, come to the Bay Area and you'll
find a job. There are always people hiring...

------
nazgulnarsil
did _everyone_ fail statistics? average doesn't mean _anything_ without
knowing standard deviation. if possible just show me the distribution itself.

------
corprew
I think part of it is Portland -- Anecdotal, but I know a large number of
people in the area who are relatively good at dev and used to work for HP or
another local company and are now unemployed or underemployed and have a house
that's severely underwater.

A few Seattle companies I know of have hired portland telecommuters because
they've had trouble finding good talent up here. I have no idea how much that
is happening outside of my experience.

------
jonah
According to this [1] cost of living calculator if you're making $55k in
Portland you'd need $72k in San Jose - to maintain the same standard of
living. A 30% increase in cost of living. So, anything more than that you'd
actually be earning more in relative terms.

[1]
[http://www.bestplaces.net/col/?salary=55000&city1=541590...](http://www.bestplaces.net/col/?salary=55000&city1=54159000&city2=50668000)

------
djloche
The companies you're targeting value the programming work being done / needed
at $x/year. If you feel like that is too low, I suggest targeting companies
that value your skills at a higher rate.

Also, tech companies or companies started by or run by tech people may pay at
a higher rate because they know the value of the skills and want to attract
and invest in top quality employees.

------
tytso
Hi Joshua,

I examined the repositories you have on github, looked at your linked-in
registry, and then followed a link to your blog at
<http://solarmist.blogspot.com>

There wasn't a lot to go on, but the main thing which I noticed was I didn't
see any evidence of great depth in your skills. You have breadth pretty well
covered. Your Linked-in page shows C, C++, Java, Perl, JavaScript, Python,
SQL, Scheme, Lisp. But then when I looked at your github page, I saw a SICP
repository, where you had been recently working on the exercises from SICP.
Great! I commend you on that! But I only saw exercises from the first 3
exercises in Chapter 1, dated from about two weeks ago. Maybe you do know
Scheme really well --- it could be that you simply haven't uploaded them, or I
couldn't find it while Googling you. But the impression I got of the seven
projects which you uploaded to Github, was that you're a bit of a dilettante.
You've started a lot of projects, enough to upload them to github or fork them
so you would have your own repo on github.... but then I didn't see a whole
lot of sustained effort by _you_.

Your resume also shows that at different jobs you've had to use many different
languages and technologies. This is not unusual, but what you need to do is to
find a way to make yourself become a top-notch expert in one or two areas.
Breadth is good, and you'll get some points for that. But if you go and
compete to get a job at companies like Amazon, Facebook, Google, who want to
accept only the very best, you'll need one or two areas where you are quite
deep in your expertise.

Fortunately, that's not _that_ hard. While there's a lot of Malcolm Gladwell's
work that I don't really agree with, his claim from his book Outliers that
10,000 hours (5 years of full-time sustained effort) is what it takes to
become an expert in a field sounds right to me. Focus is key.

Ten years of experience, if it's a few years doing PL/SQL, a few years doing
Javascript, a few years doing ML, and a few years doing Java, isn't as
impressive as ten years working in a single area, where people are asking you
to present at conferences and people recognize you as a leader in a particular
area. This may be obvious, but someone who has done the latter will easily be
getting far, far more than $100k, trust me. :-)

Something that I would suggest is that even if you have a pretty low interest
in changing employers, try to get in some interviews. As long as you would be
at least open to accepting a job offer, it's fair game to try getting an
interview at companies like Intel, Facebook, Amazon, Google, etc. Most of them
will ask you to code on a whiteboard. Getting good at that is a skill like any
other. So practice is good. Based on the questions that they ask you, it might
also help to calibrate yourself about how good you really are.

The other thing I'd suggest is that you try examining what languages and
technologies these companies are most interested in, and then use that as a
filter to the languages and technologies which really interest you. For
example, it looks like you are at least half-way decent at being a Java
programmer. OK, that's pretty marketable. But maybe your research will show
that a number of companies want both C++ _and_ Machine Learning. If that's
what you find, then you better check --- and be ruthlessly honest with
yourself --- how good your C++ chops really are. And if you are going to using
github as your portfolio, maybe you should have some demonstration code of
significant C++ and ML projects that you have worked on. (And I don't mean
forking a ML code base and then making a few changes; if you're not going to
start from scratch, you should have at least created a significant module or
plug-in from scratch, and then make sure it's clear what is yours and what you
grabbed from elsewhere.)

~~~
earl
Let me echo what tytso said. I work / have worked / have gotten job offers for
a bunch of companies you've heard of and I would never consider < $100K+
unless for a pre round A. At places I've interviewed and at places I've hired
I think there is an expectation that there is at least one language that you
know really really well. If it's java, I expect you not only to know the
syntax backwards and forwards but to have used at least one of {groovy, jruby,
jython, scala, clojure}, to be able to discuss design patterns, failure modes
of the gc, how to detect them and how to work around them, to know things like
how to minimize memory usage, to have opinions on how the jvm team did
generics and possible alternatives, to have used at least one common editor
and know keyboard shortcuts by heart, to know how to use associated tools like
ant, jar, ivy, maven, sbt, etc.

So my recommendation is you need to have at least one tech stack -- and I'd
avoid .net, but some companies do use it -- where you're an expert and you're
the person in your company that people come ask questions of.

~~~
deanproxy
I agree with some of what you said here, and maybe i have misunderstood what
you're trying to convey, but allow me this little rant here...

Some of it seems excessive. I've been developing in C and Java for 11 years
now. I make a tad under $100k and live in Atlanta, Ga. I have yet to need to
know or discuss failure modes of the GC by heart, how to detect them and work
around them by heart, how the JVM team did generics and possible alternatives,
nor to know keyboard shortcuts by heart. I have however come across these
things in my career and had to takle them. Guess what I did? Googled. Then I
got back to writing code, what my job soley exists for.

It seems absurd that any company would require these things. If I was
interviewed at a company asking me to talk about these things in the
interview, I would walk out simply because I would feel it was completely
irrelevant to how good of a software engineer I am. I really hate being
interviewed by people who are more interested in asking obscure questions that
just want to prove how smart they are (when we all know they probably just
looked up that question/answer before the interview), rather than talk to me
about coding and problem solving.

Things like memory use, basic algorithms, what design patterns are,
collections, code quality, software development life cycle, unit testing,
general coding problems, maybe some things about hibernate (if you use it),
basic database knowledge, their favorite language and why and let's not forget
overall personality and how they will fit into your team are far more
important areas to cover. Not some obscure questions that will be used maybe
once in your lifetime or on extremely rare occasions at the new job that can
also be looked up on google when you need an answer for that rare occasion.

I even shutter when I think about design patterns being discussed because
they're so over used and bad developers focus way too much on putting well
known ones into their code base even when it may not be called for and just
create so much more bloat for no good reason other than to feel like they're
smart. An understanding of design patterns is great, but forcing people to
describe any of them but the well known basics is just dumb.

The interviews my team gives exist around these things and I can honestly say
we have yet to hire someone that didn't know their stuff very well and fit
into the team nicely from the start.

I have only been without a job for a max of 3 months when I was laid off once
and I have job hopped a lot, especially in my early career (which, there is a
dirty secret there... That's how you make more money when you're staring
off!). I have walked out in the middle of interviews before when it was clear
that the person was asking obscure questions just to feel superior. I don't
want to work with people like that...

Interviewers need to focus more on asking questions that software engineers
face on a daily basis and less on odd and obscure things that can easily be
researched in a short amount of time online when and if the problem ever
presents itself.

I apologize if I got off topic or missed your point entirely. I was just
having a conversation with someone about this very thing and it seemed
relevant based on what I read.

~~~
nl
_I have yet to need to know or discuss failure modes of the GC by heart, how
to detect them and work around them by heart_

Knowing - and having experience of - the failure modes of your platform is one
of those things that is invaluable.

Knowledge of GC issues in the JVM is something that indicates (a) you've
worked on applications that tax the JVM, and (b) you are the person who people
turn to when the shit hits the fan.

Sure, Googling will help here, but you need to have a pretty good
understanding of the problem space in order to understand what to Google for.
For example, how do you get from "the application is slow" to a query for
"sizing the New Generation in the JVM garbage collector" unless you already
know when to suspect GC issues, how to use jvmstat etc etc?

------
solarmist
Since I STILL seem to be low balling the figure what WOULD be an average
salary in the valley? For someone just out of grad school?

~~~
peteforde
90-105k

Read this before doing every interview:

Game Theory, Salary Negotiation, and Programmers
<http://stevehanov.ca/blog/index.php?id=67>

~~~
bhickey

        When the company is the first to give a number, you always get the job, and you have a 50% chance of getting a high salary.
    

No... Let's say you're going to the store to get milk. Either milk will be on
sale or milk will not be on sale. We've covered the universe with our
proposition. Nevertheless, the presence of two options is irrelevant to their
respective probabilities. Assigning a uniform prior to the options is
downright absurd.

I believe what he means to say is this:

    
    
        No employer is going to lower their offer because you've asked for more.

------
prpon
I would honestly say you are being short changed if you get 55K. Back in the
day (some 10+ years ago), I got 55K with 2 years experience in the midwest.

Today, I hear from friends who still live out there that not much has changed,
but I would be looking at 70K in salary with 2 years experience.

If you can, hold out for better opportunities and please, please, please,
don't sell yourself short. A 15K would not make a difference to these
companies. It will make a difference to you. I went to silicon valley from
mid-west with a 30K jump in salary back in the day. I shared an apartment in
the bay area and living costs didn't matter that much. The money did.

------
purewater
$80-100k understates the salaries in Silicon Valley. $100k isn't even a recent
college grad salary, it's usually closer to $110k + $40k in other compensation
== $150k right out of college. A few years of experience pushes you well over
the $200k mark. Heck, interns even get paid $8k/month which is almost
$100k/year.

Seriously, brush up your resume and apply to the major firms.

By the way, I should note that cost of living and taxes are much higher here.
Standard rent is >$2k (which is nothing compared to some parts of NYC, I
guess...)

~~~
mkjones
Interesting - I'm only a year and a half out of college, and I don't think any
of my undergrad CS friends were making a $110k salary right after graduation
(more in the 60-90 range).

I've always used a rule of thumb that rent is $1k/month/bedroom around Palo
Alto, a bit less in Mountain View / Sunnyvale / Redwood City, and a bit more
in SF. >$2k/month/bedroom sounds extraordinarily high - where were you seeing
that?

~~~
burgerbrain
60-90k is what I'd expect to see from something outside the San Fran area as a
college grad. I don't have personal experience with starting salaries there,
but I would expect them to be much higher due to a higher cost of living.

~~~
mkjones
From the Stanford CS department for 2009-2010, regarding CS/EE undergrads,
size = 140 students:

> Salary offers ranged from $65,000 to $95,000. The average salary offer was
> $79,333. The median salary offer was $ 80,000.

Granted (heh), this doesn't include stock options.

------
joseph4521
Here is Luxembourg, the minimum salary for qualified people (at least 2 years
of study or experience) is 1900€+ per month with nearly no tax. For the same
level of health insurance and retirement plan, one would to win approx 65k$ in
USA. Don't forget I'm talking about the minimum legal salary, with that salary
you can still consider yourself poor. Middle class people wins at least twice
as much. Are people in USA so poor that 80-100k$ seems like eldorado?

~~~
cpeterso
Regarding US average salaries, Wikipedia says:

* The average personal income is about $40K. * The average household income is about $50K. * About 20% of households make over $100K. * But only about 6% of individuals have personal incomes over $100K.

[http://en.wikipedia.org/wiki/Personal_income_in_the_United_S...](http://en.wikipedia.org/wiki/Personal_income_in_the_United_States)

------
MrFlibble
As the one who will be hiring our first employees (and as a non-technical
founder) I am curious what people think about and expect from a brand new
start up with low level ($600k +/-) funding for year one. We cannot offer huge
salaries but will offer milestone increases over the first few years to arrive
at higher levels. We're talking around $70k to start, increasing up to $90k at
the end of the first year and continuing to increase as we grow. Options are
naturally part of the deal as well.

Also, we're considering using a location that would offer our team a live/work
option in a new complex close to the beach (in So. Cal) rather than just
traditional commercial space. Would having free housing in a pretty sweet new
pad be an incentive to take a bit less cash? It saves the company a bit of
money that first year and saves the team in cost of living expenses at the
same time. Anyone care to share their opinions/advice/experiences?

------
geuis
Putting aside location for a moment, its because averages are _averages_. Just
because a number is in the middle means that's what most people earn. Suppose
the top 10% make 200k and the bottom 60% make 50k. That is _not_ an even
distribution curve, yet if you do an average its higher than 50k because its
offset by the top 10%.

------
salemh
Recruiters take (placed 8 Sr Dev's (mostly Java, as well as "lost" 4 or so
offers of the same ilk), IT Admins, etc).

For Software Developers, the average was 80-100k in lower cost of living
area's. In higher, 90-120k.

"Senior" meaning 4-15 years. The four year folks were deemed "above average"
in their technical fly-out interviews (with other programmers). Edit: the
average length of experience was 5-7 years (a "sweet spot" for technical
hiring managers).

I never worked on 50-70k Software developer positions.

These were top-3 finance firms (NYC and SLC) as well as 4/5 top e-Retailler
firms as well as a few local funded startups.

I was never able to pull a Googler or FaceBooker :)

Netflix as an individual contributor made $160k or so, the highest I saw as
pulling candidates from competing top 3 eCommerce / finance firms.

Note, in the finance firms, "Architect" or "Leads" were on a much higher
magnitude (120-180k base, bonuses were sometimes 20%-200%).

------
beaker
Ok so your very first job (out of the Army) was paying you 47K? Is that
correct? So beyond that single company, do you have any other criteria for the
title of your post "why does everyone else keep gettin' 40-60k offers?" I
expect that if you change companies and create value your salary will
increase.

------
danek
Depends on location + company/role. Other comments point out location is
important and I agree. But almost as important is what kind of company you are
at--salary at a tech company where you are creating and building new products
is different from salary at a cable company where you are maintaining products
someone else built. As an engineer, your job is to find ways to improve the
business, work your ass off to implement them, and then build the tools so
that less skilled people can manage your creations. Keep creating value in
this manner and you'll see your salary skyrocket. Though if you are at a
company where they would rather have you sit on your ass doing nothing than
being a go-getter (as I learned the hard way), get off your ass and look for a
better job.

------
burgerbrain
I really doubt 80-100k is an average salary... maybe an average _starting_
salary outside of the valley. I had such offers for places outside of the
valley as an undergrad (before I had graduated).

~~~
phlux
Im going to guess you are 27-29.

Before I say why I say this, can you please reply with your age? I want to
test a theory which I will reveal in full if you dont mind answering..

~~~
wikyd
I've seen the same for starting salaries in Seattle, over the last four years
(graduated in Dec. 06). This is for big companies like Microsoft and Amazon
and for some startups depending upon their stage. Anyone 26 and under would
see the same.

EDIT: typo

------
DiabloD3
Maybe I missed it, but is 80-100k the average or the median? Because you have
people like CEOs of major companies making million dollar salaries, and that
will have an effect skewing the numbers.

~~~
ionfish
The median is _an_ average. You probably meant to ask whether 80-100k was the
_mean_ or the median.

~~~
DiabloD3
This is why you don't post on HN before the third cup of coffee.

------
jhft
I find all these salary threads humorous for another reason: all the bragging
about 100-200k salaries. Try joining finance where that's mot even a bad year.

------
stretchwithme
There are many, many variables. Too many to consider.

If you really want to know how you stack up with devs in SV, come out here for
a hackathon or SF Startup Weekend.

Decide for yourself who's smarter and ask them what they think is a fair offer
for your skills. If you've figured out they're smart, they will probably
already have an idea.

------
pyre
There are companies in Portland that are hiring at larger salaries than what
you're seeing. You just have to shop around. I would suggest getting in to the
local tech scene there (user groups, etc). There's also all of the conferences
that go on. Also, don't be afraid to look for remote work.

------
gte910h
Average salaries in SF are 100k. 50-70k is a relatively normal starting salary
in "2nd tier" cities like Austin or Atlanta.

But look at housing costs, etc. You'll find depending on what you want (big
house/short commute/etc) SF may not be the right place.

~~~
davidu
Hi Michael -- That's too broad a statement to make and it's not factually
based on anything. Way too many variables, which is why the only real thing we
can say is that location plays a huge role. In SF location drives higher
salaries due to both cost of living AND huge demand.

~~~
gte910h
> That's too broad a statement to make and it's not factually based on
> anything.

It's based on a WSJ article:
[http://online.wsj.com/article/SB1000142405274870343950457611...](http://online.wsj.com/article/SB10001424052748703439504576116192416198636.html?mod=rss_Technology)

I've seen this number several other places as well, varing from 96k to 104.

I live in Atlanta. I get articles from Georgia Tech about the tech job scene
here as well as averages for different majors, etc. If you really really
really want me to find an email from Tech, and stick it on the web I will.

I get Austin numbers talking to people I know there...

I have housing market comparisons for all three cities and Vancouver due to
talking to friends in all three areas.

------
mjw
Not that this helps, but: always worth asking whether an 'average' is a mean
(likely to be skewed higher by a heavy tail of high salaries in certain
industries, certain areas etc), or a median.

------
cpeterso
glassdoor.com has anonymous salary reports from many companies. In my
experience, they seem to be pretty accurate.

Of course, the reports become even more accurate when more people participate.
So please sign up! :)

------
rorrr
If you're making $47K in IT in USA, you're doing something very wrong. If you
actually have skills, you could be making $70K.

Salary depends on

1) Previous salary

2) New title/rank

3) The industry (and how well it's doing)

4) Years of experience

5) Previous salary

6) Negotiation skills

7) Education

8) How well you interview

9) Skills (if the interviewer cares)

10) Your age and gender (sad but true)

11) References

12) How hot the market is (if there's a lack of developers in your area of
expertise, you can get some crazy raises every year by switching jobs)

> _All in all I consider myself a very good programmer (Honestly I'd guess in
> the top 80% of programmers, I haven't met one that's better than myself, but
> I don't consider myself nearly as experienced as a lot of the people here)_

There are many horrible developers out there. Being the top 20% is really not
a big deal. If you want to make real money, try to be the top 1%.

~~~
DanI-S
It sounds like you rate previous salary as a pretty important factor. It seems
like an odd measure. How exactly does it factor in, and what reason do
recruiters have to trust what candidates say?

~~~
josh33
I interview quite a bit (hire about 2 people per month to my department) and I
always ask where their compensation is currently at (or if they are
unemployed, where it was at). This is one of the more important questions I
ask because it is usually obvious when someone is lying and it helps me
understand how this person's previous employer valued them. As an employer, I
want to know they were an asset.

Yes, someone could lie. People lie all of the time. One of my jobs is to feel
that out. I screen for integrity. I look for any hint of lying, even if they
are joking. You can always tell someone with integrity from someone without
it. And we want to work with people of integrity.

~~~
nevinera
I've only been asked that question in an interview twice, and in both I asked
why that would matter. I walked both times (away from a decent offer in one
case).

What's being tested is not 'how did your previous employer value you?', it's
'how good at negotiating were you when you started your last job?'

Additionally, the value of less numerical benefits gets substantially ignored
in such calculations - I worked for two years at a job that paid 40k, but the
flexibility, atmosphere, and environment were worth the 30k drop to me.
There's no normal way to explain that in an interview without it sounding like
an excuse.

Next time somebody asks that question, I'm going to tell them '15k and a few
thousand bananas'.

~~~
molecularbutter
> What's being tested is not 'how did your previous employer value you?', it's
> 'how good at negotiating were you when you started your last job?'

and "how little can we get away with paying you?"

I worked for a medium sized private software company and managements goal was
to hire people as cheaply as possible, no exceptions regardless of experience
or education. They routinely offered developers 30k to start, many were highly
offended and some just laughed at it, but they would always get a few
developers who were down and out to accept. Yes turnover was high and most
people didn't last longer than a year or two, but they viewed developers as
disposable assets due to the local economic climate. This was in a medium
sized US city with high unemployment and few tech opportunities, managements
attitude was ruthlessly honest "we're the only ones hiring in the area, what
other choice do they have?"

------
michaelochurch
Three changes:

1\. Inflation. Laggard companies haven't kept up, but leading companies are
pushing forward. As for the laggards, they probably set their developer
salaries back in 1995 when $45k, out of college, was decent for a software
engineer. They never revised that number, instead suffering a very gradual
(and probably imperceptible, from a day-to-day perspective) decline in the
people they could get.

2\. Correction. Talent has been underpriced for a long time, except in
finance, where the hours and work sucked. For a long time, rising tech
companies could low-ball their offers and say, "Yes, but we're a fun company,
and if we get big, you'll get rich." At this point, that strategy doesn't work
as well, because new startups have filled that niche (risky, low pay, might
make you very rich). Google and Amazon are still great companies, but they're
not likely to triple their stock value in the next 3 years.

What's also happening is that the US is becoming less of a destination country
for foreign talent, due to post-2001 immigration hassles and our health care
situation, which scares the hell out of people. This change is good and bad,
but it does improve salaries.

3\. Location + industry. Engineer-driven companies, which are very selective
and desirable places to work, but treat engineers very well, are offering
$90-110k in New York, Boston and the Valley, and $70-90k in the Midwest. On
the other hand, programmers at oil and health insurance companies are not
making that much; they're still in the $45-60k range, because programmers are
second- and third-class citizens in those companies. For example, a friend of
mine works in fashion as a programmer (entry-level/novice) and makes about
$28k. If she did the same work in a real software shop, she'd make $70k
easily.

~~~
josh33
Industry is important. Pick an industry that actually has money to pay for
software. Not all industries are equal.

------
fleitz
The average salary is pretty accurate, what I think you may fail to realize is
that the industry will pay a premium for experience. I've been coding
professionally for 10 years. 80-100k is normal for that much experience in
Vancouver, I'm sure it's even more in SF/NYC

------
GrandMasterBirt
Ok:

a) Shitty jobs will offer shitty salaries

b) Employers who have shitty employees will feel a senior is worth 50k. Why?
Because their "seniors" are juniors at best and are doing the recruiting.

c) Location. If they are the only game in town then guess what. The offers are
obviously not from tech companies.

d) 100k is a mid-level position (at least in nyc). All depends on how well you
do on the interview or how much you can show off of your work.

