There’s no question that software programming is a hot career right now. According to our analysis of job postings data, programming jobs have grown by 23.5 percent in the past year. What’s more, the median annual pay for a software programmer is about $120,200, which is nearly three times the median pay for all U.S. workers, which is $45,000.
Not all programming jobs are the same, however. Different roles, companies, and types of software require knowing and understanding different programming languages—and it’s often beneficial to know multiple languages. Trying to break into the field of software programming can be daunting, especially for professionals with no prior programming experience.
Download Our Free Guide to Breaking into Computer Science
Whether you have a technical or non-technical background, here’s what you need to know.
The Align Master of Science in Computer Science program at Northeastern University is specifically designed for students who want to transition into computer science from another field of study.
“Our aim is to transport students from a variety of different backgrounds and have them come out as software engineers,” says Ian Gorton, PhD and director of the graduate computer science programs at Northeastern University in Seattle. “We focus on math, programming, and a variety of computer science and engineering concepts.”
Whether you’re new to programming or looking to brush up on your skills, it helps to know which languages are in high demand. Here are 10 of the most popular programming languages based on the number of job postings requiring language skill, the average annual salary for those jobs, and factors such as ease of use and potential for growth.
Top 10 Most In-Demand Programming Languages
The 10 most in-demand programming languages in 2023 are:
- Structured Language Query (SQL)
Number of jobs: 1,248,972
Average annual salary: $110,000
Benefits: Structured Language Query (SQL) is considered a standard across every industry, and has been around for more than 45 years. One of its primary benefits is its ease of use. While many other languages require you to memorize multiple sequential steps to complete tasks, SQL uses declarative statements, pulling data with English words instead of strings of numbers. This means you don’t need to memorize each step required to obtain the data, because SQL does all the work. It’s also an excellent starting point for beginners, since it’s relatively simple and widely used.
Drawbacks: While SQL has several pros, it doesn’t come without its cons. One of the primary drawbacks is that many users find it difficult to navigate SQL’s interface.
Common uses: SQL is primarily used to store, query, and access data. It’s also a core component of many organizations’ data practices.
Number of jobs: 1,049,041
Average annual salary: $120,700
Benefits: Python is widely regarded as a programming language that’s easy to learn, due to its simple syntax, a large library of standards and toolkits, and integration with other popular programming languages such as C and C++. In fact, it’s the first language that students learn in the Align program, Gorton says. “You can cover a lot of computer science concepts quickly, and it’s relatively easy to build on.” It is a popular programming language, especially among startups, and therefore Python skills are in high demand.
Drawbacks: Python is not suitable for mobile application development.
Common uses: Python is used in a wide variety of applications, including artificial intelligence, financial services, and data science. Social media sites such as Instagram and Pinterest are also built on Python.
Number of jobs: 784,622
Increase in job postings: 2.3 percent
Average annual salary: $124,800
Benefits: Java is the programming language most commonly associated with the development of client-server applications, which are used by large businesses around the world. Java is designed to be a loosely coupled programming language, meaning that an application written in Java can run on any platform that supports Java. As a result, Java is described as the “write once, run anywhere” programming language.
Drawbacks: Java is not ideal for applications that run on the cloud, as opposed to the server (which is common for business applications). In addition, the software company Oracle, which owns Java, charges a licensing fee to use the Java Development Kit.
Common uses: Along with business applications, Java is used extensively in the Android mobile operating system.
Number of jobs: 671,436
Average annual salary: $117,100
Number of jobs: 353,323
Average annual salary: $115,100
Benefits: Microsoft developed C# as a faster and more secure variant of C. It is fully integrated with Microsoft’s .NET software framework, which supports the development of applications for Windows, browser plug-ins, and mobile devices. C# offers shared codebases, a large code library, and a variety of data types.
Drawbacks: C# can have a steep learning curve, especially for resolving errors. It is less flexible than languages such as C++.
Common uses: C# is the go-to language for Microsoft ad Windows application development. It can also be used for mobile devices and video game consoles using an extension of the .NET Framework called Mono.
Number of jobs: 318,199
Average annual salary: $120,200
Benefits: C++ is an extension of C that works well for programming the systems that run applications, as opposed to the applications themselves. C++ also works well for multi-device and multi-platform systems. Over time, programmers have written a large set of libraries and compilers for C++. Being able to use these utilities effectively is just as important to understanding a programming language as writing code, Gorton says.
Drawbacks: Like C, C++ has complex syntax and an abundance of features that can make it complicated for new programmers. C++ also does not support run-time checking, which is a method of detecting errors or defects while software is running.
Common uses: C++ has many uses and is the language behind everything from computer games to mathematical simulations.
Number of jobs: 312,838
Average annual salary: $105,900
Benefits: R is heavily used in statistical analytics and machine learning applications. The language is extensible and runs on many operating systems. Many large companies have adopted R in order to analyze their massive data sets, so programmers who know R are in great demand.
Drawbacks: R does not have the strict programming guidelines of older and more established languages.
Common uses: R is primarily used in statistical software products.
Number of jobs: 218,234
Average annual salary: $115,100
Benefits: Along with Python and Java, C forms a “good foundation” for learning how to program, Gorton says. As one of the first programming languages ever developed, C has served as the foundation for writing more modern languages such as Python, Ruby, and PHP. It is also an easy language to debug, test, and maintain.
Drawbacks: Since it’s an older programming language, C is not suitable for more modern use cases such as websites or mobile applications. C also has a complex syntax as compared to more modern languages.
Common uses: Because it can run on any type of device, C is often used to program hardware, such as embedded devices in automobiles and medical devices used in healthcare.
Number of jobs: 141,559
Average annual salary: $140,200
Benefits: Also referred to as Golang, Go was developed by Google to be an efficient, readable, and secure language for system-level programming. It works well for distributed systems, in which systems are located on different networks and need to communicate by sending messages to each other. While it is a relatively new language, Go has a large standards library and extensive documentation.
Drawbacks: Go has not gained widespread use outside of Silicon Valley. Go does not include a library for graphical user interfaces, which are the most common ways that end-users interact with any device that has a screen.
Common uses: Go is used primarily for applications that need to process a lot of data. In addition to Google, companies using Go for certain applications include Netflix, Twitch, and Uber.
Number of jobs: 116,172
Average annual salary: $114,000
Benefits: Perl got its start for programming text, which makes it easy to learn and popular for developing a proof of concept. It’s one of the most popular languages for common gateway interface (CGI) programming, and runs on over 100 platforms. It can also be embedded into web servers, database servers, and other similar systems.
Drawbacks: Since there are many methods for reaching the same result, it’s easy for code to become unreadable. It’s also slower for many tasks when compared to other languages, and lacks portability.
Common uses: Perl is most commonly associated with Unix/Linux operating systems, but can also be effective on Windows. It’s used for tasks such as automating system administration and often serves as the glue between several different computer systems or interfaces.
8 Other Programming Languages to Consider
The following programming languages aren’t quite as popular as the 10 listed above, but they are also worth considering if you’re looking to expand your programming options.
- Dart is optimal for programming applications that need to run on multiple platforms, such as Windows and iOS.
- Kotlin is used to develop applications for the Android OS.
- MATLAB is a proprietary language developed by MathWorks and used for scientific research and numerical computing.
- Swift is Apple’s language for developing applications for Mac computers and Apple’s mobile devices, including the iPhone, iPad, and Apple Watch. Like many modern programming languages, Swift has a highly readable syntax, runs code quickly, and can be used for both client-side and server-side development.
- Rust emphasizes high performance and security and is useful for applications where many things are happening concurrently.
- Scala, named as a play on scalable language, is compatible with Java and is useful for cloud-based applications.
- PHP is widely used for server-side web development, when a website frequently requests information from a server. As an older language, PHP benefits from a large ecosystem of users who have produced frameworks, libraries, and automation tools to make the programming language easier to use. PHP code is also easy to debug.
Which Programming Language Should You Learn?
Some programmers are able to build a career out of being an expert in one language, but many programmers learn new languages frequently, Gorton says. It’s not uncommon for a professional programmer to be fluent in three or four different languages, he adds.
The type of software you want to develop is one consideration for which programming languages to learn. While there are no concrete rules for what language is used to write what software, a few trends offer some guidance:
- Larger companies tend to develop their internal software applications using C# or Java and their Web applications using PHP.
- Programs for data analytics typically use the R and MATLAB programming languages.
- Embedded devices, such as those in the automotive and healthcare industries, run software written in C, C++, or Rust.
- Applications that run on the cloud are increasingly written in Go or Scala.
- Mobile applications are increasingly written in Swift or Kotlin.
If you’re looking to start a career in programming, the Align Master of Science in Computer Science program at Northeastern can help you develop expertise and fluency with the popular programming languages that align with your skills and interests.