views:

1702

answers:

13

Hi, I am not nor have I ever worked in industry as I am a university student atm. I have heard in certain places that Java and PHP programmers get paid less than say C# or other programmers.

The correlation in my mind seems to be that the verbose languages pay less, this may not be the case but when you compare C# to Java, the former is definitely less verbose.

In any event, based on your observations do you get paid more according to the language that you program in? If so, based on your observations what languages seem to have a higher or lower general pay scale?

Update: I did find a comparison of different programmer types here, complete with pretty graphs. It is however no means a definitive answer but it does provide some clues.

+1  A: 

I think it is the skill and attitude that determines your pay more than the language you use.

fung
+8  A: 

Pay depends on more things than languages...

Besides, everyone knows LOLCODE programmers make the most.

jjnguy
But finding LOLCODE jobs is tricky. ;)
Peter Lawrey
Unless you are self-employed!
jjnguy
It would be a very fun job! Maybe they would let programmers have cats on their big armchairs ^_^ LOL
Brock Woolf
http://boulder.craigslist.org/web/1074270596.html
ninesided
LOLCODE jobs are there if you look for them ;-)
ninesided
+8  A: 

Jobs pay very differently, not on language, but on:

  • your experience
  • location
  • job role ("principal architect" vs "code monkey")
  • business sector
  • perks (the pay may be lousy but the bonus may be huge)
  • company ethos
  • 100 other factors

You can't simply say "x pays more/less than y". I don't think verbosity is ever a factor... managers and project sponsors don't usually care about the LOC count - they just want the project delivered ahead of time, under budget, with zero bugs and twice the original features (your project lead's job is to manage their expectations). My advice; find your local/national jobs board/web-site, and investigate actual jobs that you would be interested in.

Marc Gravell
+2  A: 

I would hope not, surely an aptitude to learn any language is more important than being a master of a single language. The obvious exception to this rule is in the maintenance of legacy applications written in esoteric languages that only a few old timers can grok. In these cases it's unlikely said old timer is interested in learning new stuff but will make a good living off keeping old code ticking over.

ninesided
+12  A: 

The context or domain in which you develop applications will greatly influence how much you can charge. For example, in my experience, it is more likely to get well paid by creating banking or business intelligence applications than by creating general web applications. PHP is more likely to be used for creating web applications than for creating business intelligence applications, so you could perhaps argue that a PHP programmer generally has a lower salary.

Ciryon
+3  A: 

Domain expertise also plays a major role along with programming skills.

aJ
If you bold it, it must be true...
jrockway
+19  A: 

It's a combination of supply/demand and the skill needed to be productive in language/environment X, and this is exacerbated by most companies being unwilling to train new recruits into a new language unless they have to. Other factors such as experience, location, company, etc etc modify this - and are often more important - but there is a residual language effect.

For example, most graduates nowadays are taught in Java. Consequently there is a very large pool of Java programmers available which drives down payrates. PHP, being widely popular and perceived as easy to learn is similar. OTOH rarer newer languages - such as Ruby, or those which are more difficult to master, such as C++, or where the number of people who have experience in it, such as COBOL where coders are retiring faster than the codebase is decreasing will command a premium. Certain domains, like real-time systems, always command a premium for similar reasons (real-time is hard and there's fewer people who have mastered it).

This can give rise to some odd effects, such as game programmers being paid relatively low (and often working in poor conditions) despite coding in C++ and requiring solid math skills because games are sexy and there's a constant supply of coders wanting to work in the area, or COBOL CICS programmers being paid relatively highly because few people want to do that any more.

Cruachan
+2  A: 

I'd say that seniority and width plays a bigger part than language.

But if we 're looking at languages there is a very non-scientific way to find out: Haskell programmers having the highest salary :) http://www.indeed.com/salary?q1=haskell+programmer&l1=&tm=1

schmilblick
thanks for the link. I added a few more programming jobs and put them in a link in the question :) +1
Brock Woolf
Wow, that guy's getting paid well.
Steve B.
+3  A: 

Cobol developers are very well paid. As will C developers by 2020...

mouviciel
C Developers will be paid well...but why?
Brock Woolf
Because fewer people will know it. Young developers learn Java and C++ at university, not C.
mouviciel
C also lends itself to programs with very hard-to-debug bugs, increasing the number of hours you can bill for simple fixes.
jrockway
+1  A: 

In the long run, pay will not depend on language, as if a particular language is relatively overpaid, all the other developers will move to that language. There is of course a cost of migrating languages, so the disparity would need to be large.

However, in the short run, pay per language could be highly variable, due to local market dynamics.

There is also a skill factor involved, the languages that are easiest to use, and have low tool cost (php, javascript) - will tend to have lots of people involved, driving the average wage down. But not many people can be fluent in ASM. On the other ahnd, there are a lot fewer jobs that require ASM, so it balances out.

In general you will have to pay people more for older, "dying" languages, because there is a cost to the developer of not having recent resume experience with the high-demand languages.

Jason Coyne
A: 

Salary depends of Skills, capacity of research and obvious the programming language. In my country (Portugal) a normal salary for a coder is 1.300 euros with normal/good skills this salary is for c#, c++ and java language if you go to VB6 or VB.net the salary is minimized to 800 euros aprox. Of course this depends of companies and work ambient.

pho3nix
+4  A: 

The answers that discuss supply and demand hit on one of the two major points affecting salary. The other major point affecting salary is the degree to which the employer can externalize cost on to its employees—or rather, the degree to which factors that encourage or discourage employees from taking a job force employees to accept fewer benefits for their work.

Programming is labor; labor is selling hours, which is a finite resource (like your fingers; thanks Derrick Jensen). Business is profit-driven; profit is generated by minimizing and externalizing cost, which is a liability with a definite minimum. If an employer can pressure an employee to accept some of the employer's costs, the employer will generally do so. This means that the employer may exploit poor market conditions, given the opportunity.

Your employer is not your friend. It's their goal—in fact, their responsibility and obligation in most jurisdictions—to generate as much profit as possible, and to push their liabilities outside as much as possible.

Supply and demand is a real force in determining remuneration—particularly in privileged professions like programming. But I think the mistake is most answers tend to treat business as a meritocracy—people are compensated for their contribution and their worth—where in reality it is a tilted competition to amass wealth, where the odds are in favor of the wealthiest—which is, by definition, your employer.

eyelidlessness
Different perspective, but one I like. Thanks for the reminder
Brock Woolf
A: 

Yes. The pay variation between languages is significant, largely because of the industries involved, and the complexity of the software they want. For example in programming job postings on Craigslist.org here in Montreal, Canada, I see a lot of jobs that fall into the following categories:

  • Internet infrastructure : PHP, Ruby, JavaScript : $30,000 - $40,0000
  • Database querying and report making : Delphi, C#, SQL : $40,000 - $60,000
  • Mobile phone game development : Java : $40,000 - $60,000
  • PC and Console games development : C++ : $60,000 +

This is however a huge simplification. I would suggest that instead of focusing on a language, you focus on an industry that interests you, and learn the standard tools and languages to the best of your ability.

cdiggins