Hacker News new | ask | show | jobs
by hristov 4773 days ago
This does not necessarily mean that wages are falling. It could be that a lot of the new jobs created are "beginner" jobs with lower wages that pull the average down, but the existing jobs still pay what they used to or more.
3 comments

What is / will drive wages down is making the process of becoming an (experienced) programmer easier, by lowering the per case work needing done and lowering the barrier to entry (compare writing C++ in 2002 to 2012), and the resources available) and that most use cases are best suited by high level dynamic languages like Python or Ruby, which have significantly less work investment to get results compared to old favorites like Java or C.

Most people don't need a tech savant. As that becomes more apparent as it becomes a game of legos putting blocks together rather than having to plastic cast mold every block yourself, I expect mean salary to drop.

I'd also point out that the expansion of SaaS, open source, and mobile app marketplaces impacts this.

Look at services like FreshBooks and Basecamp. The engineering effort to implement comparable solutions used to be immense; now you can buy into online services for less than the price of lunch, with no long-term contracts.

Similarly, look at open source solutions like WordPress. An afternoon with a $5 hosting account and a few plugins will get a site that would have cost you $100K+ in 1998 feature-wise.

I'm also amazed at how often a few minutes searching for an app will get me something that fits the need perfectly - and costs less than $4.

This is somewhat offset by higher expectations. Every app better have 9 trillion features and social network integration etc.

The complexities of twiddling with memory have been replaced with the complexities of making a ton of different systems work together in a sane way.

What's up with C++ in 2002 and today? If you knew C with classes in 2002 (MFC style) you were good, if you knew GoF patterns you were elite.

Today you have to know STL, auto/smart/shared pointers, all kinds of right casts, you have to know boost (a huge code base) and on top of that you are expected to know C++0x (or how is it called?) with its lambdas, autos and stuff, while still understanding the whole "classic" C++.

(But at least nobody cares about MFC and ATL anyway)

And don't forget templates of templates of templates which crept into many code bases. And 64-bit (or ARM) is now reality which you should account for.

If anything, you have to know ten times more in C++ in 2012 compared to 2002.

> But at least nobody cares about MFC and ATL anyway

About a decade ago I did a lot of MFC/C++.

Form what I see here in Australia one of the reason nobody cares about MFC and ATL is for the last 5 years C++ has been pretty much dead on the Windows platform.

Over here in Oz C# and .Net are the kings of the Windows platform.

Your example is flawed.

C++0x is easy to learn. For example, autos is just the ability to say "auto myFloat = 5.0;" and it will default to float.

Lambdas in C++ is fairly easy. right casts? trivial [especially with auto].

Templates of templates of templates are easy as well.

64-bit? ARM? The whole point of C\C++ is to make yourself not assembly. You shouldn't worry about 64-bit vs 32-bit as long as you use proper things.

This, my point was that you can use C++ make_shared (and eventually C++14 make_unique) instead of manual management, you can get away with a lot more reference passing instead of of raw pointer manipulation, the std now has an actual hashmap implementation now, auto and lambdas make things faster, etc.

Modern C++ vs second iteration standard C++ in the wild west days when I was first learning about it is an entirely different affair.

I also contest having to know boost - I work in some KDE projects and boost is only a dependency on around 1 in 4 that I have found. Though qt in many ways becomes the surrogate stack to learn.

Very true. What % of developers are writing C++ however? I'd think it's a reasonable assumption that they're going down (and a cursory glance at Indeed shows this).

So some jobs will always pay well; the average salary should go down if the average skill need goes down however. (Ignoring for the moment that some lesser skilled development jobs actually pay better as a result of demand)

If we take ruby, you still have to know ruby, rails, js, jquery, sql, quite a few libs, html, css, be familiar with ie/webkit/firefox, be aware of sql injection, xss, csrf and stuff. Do not forget http, rest, be able to understand caching, dns, proxying, load balancing. It's a lot of knowledge. In 2002 you could get away with a perl script!

use CGI;

Yeah it is very difficult to find Rails developers who are on the market. Wages for Rails developers have certainly been going up in the Bay Area, even including the tons of junior hires, because no one can find senior talent.

Maybe this isn't the case in the middle of the country where businesses don't realize that a 10x programmer is easily worth 2x the salary of a brand new programmer.

Ruby may be easier to pick up than C++ but the entire web stack still requires quite a lot of knowledge. Especially when you start talking about scaling databases, distributed systems, fault tolerant cloud architectures, etc.

Even 1x programmer still has to know a lot of topics or his products will be lacking.
Wasn't the same thing said when we went from hard-wiring programs to writing machine code, then from machine code to assembly, then to 3rd generation programming languages, and so on?
Possibly, however the better you are the faster you work the higher your value per hour. If I can be 3x as efficient as a junior dev I'm still worth more.
If you are introducing bugs that will at some point need to be addressed while "working fast", that'll cut away at a lot of the added value.
This is where experience helps. You know how to be efficient without sacrificing code quality and you also get a better intuition for tracking bugs that you do have.
Yep, and you know what to write tests for
I think even in the Silicon Valley the salaries other than the selective big guys has not even kept up with inflation. A 2 year-experience developer still gets between 80-100k or less. This is what was being paid in 2000 as well. The situation is probably the same elsewhere.

Of course, my numbers above are from my own poor sampling.

I'm not sure what part of 2000 you're talking about, but the middle of 2000 was the beginning of the bust. I don't think that's a good place to take the sample.
Well I am talking about time between 2000 and 2012. Salaries have remained in the same range since then for the most part based on my conversations with people I used to work for then in the Silicon Valley.
And without consideration of inflation.
My comment was considering inflation. Can you please elaborate what you were alluding to.
Which, to be fair, the article points out right at the top:

"There are multiple theories for the decline in pay, but a common one cited by analysts is simply that the new people being hired are paid less than those already on the job."

But these are not necessarily "beginner" jobs: these unemployed people may have been hired back for the same types of jobs they had before, but at lower salaries. If you've been unemployed for a couple of years, you're probably willing to settle for less money just so you could have a job again.
Some such instances could conceivably be a simple market correction, too. Some localities particularly entangled by the housing bubble could have had inflated tech salaries as part of general market/cost-of-living forces.
This is unlikely since the housing market topped 5 years ago and may be actually coming out of the bottom finally (we won't know for a few more years)

Another possibility is that there are companies hiring "software developers" for jobs that most HNers wouldn't find interesting because the level of software development is low and hence has a lower waged associated with the value generated.

> This is unlikely since the housing market topped 5 years ago and may be actually coming out of the bottom finally

No, that's exactly my point. Hiring would be occurring now because the economy is recovering from the recession, but at corrected wages that do not reflect an artificially bloated cost of living in particular localities.

"new people being hired are paid less than those already on the job."

Is this surprising at all?

I...hope not? The point is that a sudden influx of new workers can drive down the average salary, even if the salary distribution isn't changing. By "salary distribution" I mean the curve of salary vs experience/skill level.