At Code Platoon, we track national demand for programming languages so that our veterans and military spouses are trained with the best tools for a career in software development.
But whether you’ve never coded before or you’re a veteran looking to pivot, when you’re deciding which programming language to learn, the following demand-based insights can help inform your strategy.
This article attempts to answer which programming languages command the highest salaries and are most frequently targeted in job postings.
How we identified the current top programming languages
To answer our questions, we conducted simple searches on Indeed.com, one of the largest job listing sites.
For the question of compensation, we started by searching for the top 15 most popular languages in a recent Stack Overflow survey and mapped the average salary for job listings with those languages. For demand, we tracked the number of total job postings targeting those same languages.
Ranking programming languages by pay and number of openings
Python: Possibly the best coding language according to the data, Python is tied for #1 in Average Salary with Ruby, which ranks lower on total job listings available. Python, by contrast, takes the #2 position for Job Postings, and holds an enormous lead in that category before third place. Python is an interpreted, multi-purpose programming language. It is often used to build web applications, and seeing exploding growth due its use in data science, machine learning, cybersecurity, and dev ops.
Ruby: Highly-valued, Ruby ties for #1 for Average Salary and #6 for Job Postings. Like Python, Ruby is an interpreted, multi-purpose language that is relatively easy to learn. Its popularity stems largely from its web development framework, Ruby on Rails, which is very powerful, widely used, and relatively easy to get up and running.
C++: This was once a premier top-level programming language and is now used primarily in gaming and high-performance applications. C++ stands at #4 in Average Salary and tied for #3 in Job Postings. The common and useful language C++ was designed for application and systems programming. Since its creation, it’s often been used for office applications, games, and advanced graphics. C++ is very fast and stable, but difficult to learn relative to the other languages in this list (except possibly C).
Java: Integral to large-scale legacy business applications and gaining new relevance through its adoption by Google for Android, Java maintains #1 in Job Postings and #6 in Average Salary. Java’s rankings were an exact flip of Ruby’s in each category. Originally developed by Oracle, Java is extremely popular because it can be used for mobile, web, and desktop app development, and more. Reasonably stable and fast, it is very popular at the enterprise level.
C#: Similar to Java with Android, C# maintains a solid user base through its adoption in the Unity gaming engine, standing at #5 in Job Postings, and #8 in Average Salary. C# was specifically designed by Microsoft as a competitor to Java. Often used to build desktop apps and video games, as well as web apps, C# remains very popular in the enterprise realm. It runs on Microsoft’s .NET platform.
Swift/iOS: The biggest jump in salary from 2018 to 2019, Swift owes its rankings of #3 in Average Salary, and #8 in Job Postings to its dominance in the mobile market. Created by Apple, Swift is now often the default language for writing iOS apps (Objective C preceded it). If you want to write apps for the iPhone, look no further.
PHP: The language that powers WordPress, PHP is #7 in Job Postings, and #9 in Average Salary. PHP is a general-purpose scripting language used for the development of web applications. One of the earliest languages for web development (released in 1995), it remains widely popular today.
C: C is one of the oldest and most widely used programming languages in the world, and holds #7 in Average Salary, and #9 in Job Postings. It is used to program everything from operating systems to hardware. What makes this language so difficult to learn is in part why it is so powerful: a lot of concepts that are hidden to users in scripting languages like Python, Ruby, and even Java are exposed in C, so that the programmer has more flexibility and complexity available.
What changed from 2018 to 2019?
For those making a career, the direction the market is going matters as much as where it is now, so we wanted to look at some of the changes from 2018 to 2019. Since we used the same methodology for similar research in 2018, it will be helpful for a comparison.
Python and Swift developers saw the largest increases in average salary ($9,000). Python climbed the most in number of jobs posted in 2019, posting an additional 3,000 jobs. Ruby saw the largest drop in popularity, posting 5,000 fewer jobs in 2019.
What will be the most popular programming language in 2020?
It’s difficult to speculate how these programming languages will fare in the future because the supply of qualified applicants affects the number of open positions. However, as the Stack Overflow survey points out: “Python has risen in the ranks of programming languages on our survey, surpassing C# in popularity this year, much like it surpassed PHP last year.”
If you’re also looking for more information on the usefulness of various programming languages, the TIOBE Index and Stack Overflow provide two of the most authoritative reports. Both reports consider industry demand as well as additional perspectives, and incorporate different approaches in determining the usefulness of programming languages.
If you’re a military veteran or military spouse interested in learning to code, you can apply for one of our cohorts now.