Which Programming Languages Earn You The Highest Salary?

If you can't decide which programming language to learn, knowing how much you might earn could be useful information. A ranking of popular language choices puts Ruby on Rails in the top spot.

Picture: Getty Images/Oli Scarff

This data, compiled by Quartz, is US-based, so it won't necessarily translate into Australia. However, it's a useful indicator, especially if you're contemplating a stint working overseas.

Here are the top 12 languages and their associated salaries:

12. PERL - $US82,513

11. SQL - $US85,511

10. Visual Basic - $US85,962

9. C# - $US89,074

8. R- $US90,055

7. C - 90,134

6. JavaScript - $US91,461

5. C++ - $US93,502

4. JAVA - $US94,908

3. Python - $US100,717

2. Objective C - $US108,225

1. Ruby on Rails - $US109,460

For more on local salaries, check out what Australian IT pros are currently earning.

These programming skills will earn you the most money [Quartz via Business Insider]


Comments

    Would objective C be things like Control System Engineering and not really IT based (ie. requireing different qualifications)

    @ricadam

    Objective-C is the language (until a few months ago) that was officially supported in iOS development through Xcode IDE. They now also support Swift, but Objective-C is likely to continue to be the standard for quite a while.

    It's essentially an Object-oriented version of C from what I hear.

    Last edited 21/11/14 10:32 am

      It's nothing like C...
      Have a look at some of the syntax to see what I mean.

        It is like C++, in the sense that it is C plus some additional syntax for new language features.

        If you don't use those features, your code will look exactly like C. The extensions might not look like C, because by definition they are not part of C.

      Objective-C is an evil hybrid of C and Smalltalk.

        Evil doesn't even begin to describe it. The syntax is bizarre for no real reason. Why not use commonly accepted language design patterns, but no, objective C needs to do everything differently just for the sake of being different.

    As a person learning programming merely for hobby's sake, I'm quite interested in what each language is used for (e.g. what industry or what function) and why are there such differences in payscale between languages?

    Can anyone shed light on this?

      I think this is a dangerous result for anybody to base their choice on. One of the biggest thing that will dictate this is the number of jobs available. The more a language is used the more lower end and trainee jobs are available which will mean a lower average pay.

      As with most things the difference in value is supply and demand. Less people with knowledge and critical systems mean higher wages.

        Exactly this. I was really surprised to see Ruby on Rails come out on top. I've been job searching for the last year or so and I think in that time I've come across a single job listing for Ruby on Rails.

      Different languages are used to target different platforms with some languages like .Net (Visual Basic/C#) and JAVA able to target multiple platforms. Some of the languages are used mainly for mobile development (Objective C, Android specific JAVA) and others for web development (Javascript, Ruby). SQL is a bit of an odd one in there. It is a database query language. Quite different to a web scripting or app language.

      As for the pay differences, often that comes down to how much demand there is and the number of people with those skills.

      Perl and Ruby on Rails are primarily web server development. JavaScript is also web, but for client-side. SQL isn't a programming language, it's a query language for interacting with databases. If you're a web developer you're probably going to need to know SQL and one of Perl, Ruby, ASP or PHP (both oddly missing from the list) plus JavaScript is useful to know as well.

      Python is also used in web development, but it is used for a lot of things outside the web as well. Lots of open source stuff. It's also a good language for prototyping as it's fairly quick and simple. Similarly Java can be used for the same purpose (including web stuff). I imagine most of the Java developers on this survey are doing Android development with it though.

      C, C++, C#, Visual Basic are all used for desktop application development. C# and VB are more common for business software, where C and C++ are used in application development where the software is a bit older or where performance is more of a consideration or there are restrictions on running managed or interpreted languages. So for example, most high-end video games are written in C++.

      Objective C is the officially supported language for iOS development and is also one of Apple's generally supported OS X development languages. Most of the time you can develop apps in C/C++ and just use an Obj-C wrapper but that's the main thing you'd see it used for.

      R is a weirdo open source language for statistics and data mining. Never used it personally.

      If I were encouraging someone to pick up any language as a learner, it would either be to learn C# as it's easy but it's powerful and there's lots of resources out there for it, or it would be to learn C as it's the granddaddy of just about everything out there that people use and will force you to understand what you're telling the computer to do.

      The biggest thing to learn if you want to program though isn't a language. It's algorithms and data structures. Understand all your searches and sorts and your lists and stacks and queues and complexity theory and so on and it doesn't really matter what you're using. To use a cooking analogy, the language you use is like your pots and pans and knives, but algorithms & data structures are your recipe books.

    I think you'll find ERP system specific languages would easily top Ruby On Rails. An experienced ABAP developer can demand quite a bit, for direct employment, given how in demand they are in the consulting industry.

    Ruby on Rails isn't a programming language...

      and what is it? Would you like to exolain your opinion?

    Ruby is a programming language. Ruby on Rails is a framework written in Ruby that encapsulates a number of modules that are primarily relevant to doing Web development such as ORM, rendering content etc.

Join the discussion!