What do F#, Scala, Groovy, Go, Clojure, and Rust have in common? They’re all programming languages that pay well, as much as 10 to 50% more over more on average over Python, JavaScript, and C#. That’s according to StackOverflow’s annual survey.
Why the premium?
At a cursory glance, these languages aren’t particularly popular. That might explain why employers pay as much as they do for them—demand simply outweighs supply. Based on existing trends, that demand seems likely to continue to grow. That’s in large part because these languages are highly compatible with enterprise.
For one, these languages play nice with existing systems. That reduces the overhead involved in integrating them into existing organizations. Incidentally, it also makes learning them less burdensome. Scala, Groovy, and Clojure all integrate closely with Java. F# meanwhile takes cues from C#, Python, and Haskell while Rust is syntactically close to C++. If you know these predecessor languages already, then you face a flatter learning curve.
These modernized languages also promise tangible improvements. Quality of life enhancements make them easier to code for developers, presumably making them more productive as well. These languages are also designed with modern architecture in mind. These languages are more reliable, scalable, and performant on one or many networked machines right out of the box.
Which one(s) should you learn?
There are many more factors than pay alone to consider.
Before sinking in tens or hundreds of hours into picking up a new language, consider which one makes the most sense to you. See what technologies your current employer or employers near you use. Then consider which teams, if any, have already transitioned to a modern language. Different geographies and industries tend to favor one set of languages over another, so choose ones that align with your career goals.
F# (Global: $74,000; US: $108,000)
F# is functional-first, cross-compatible, and asynchronous, designed for projects that scale. It’s also developer friendly, boasting simplicity, a strong community, and support by a suite of development tools. Among the highest paying technologies we feature in this post, it also ranks highly in the “most loved” list from the StackOverflow survey.
- Programming in F# from Microsoft
- Introduction to F# from Pluralsight
- F# Fundamentals from Pluralsight
- F# and Xamarin Development Basics from LinkedIn Learning
- Functional Programming with F# from Udemy
Scala (Global: $67,000; US: $115,000)
A portmanteau of “scalable language,” Scala is, in a nutshell, an improved version of Java. Code from Scala runs on JVM, can execute Java code, integrates easily into existing Java code, and supports traditional design patterns. Features like support for functional programming and concurrency, static typing, and language extensibility have made it extremely popular.
Scala is also the only technology featured here whose founding organization, École Polytechnique Fédérale de Lausanne, has created its own set of university-grade online courses.
- Functional Programming in Scala from École polytechnique fédérale de Lausanne
- Introduction to Scala from Treehouse
- Scala Essential Training from LinkedIn Learning
- Scala Fundamentals from Pluralsight
- Scala and Spark for Big Data and Machine Learning from Udemy
- Rock the JVM! Scala and Functional Programming for Beginners from Udemy
- Rock the JVM! Advanced Scala and Functional Programming from Udemy
Groovy (Global: $72,000 ; US: $110,000)
Compared to Scala, Groovy is less ambitious in scope and scale. That said, it’s almost syntactically identical to Java, making it easy to pick up if you know Java already. Those who learn Groovy note that it’s a great way to get into dynamic programming. It also has a reputation for making Java more pleasant and less cumbersome to write.
- Groovy: Getting Started from Pluralsight
- Groovy Fundamentals from Pluralsight
- The Complete Apache Groovy Developer Course from Udemy
- Groovy Fundamentals For Testers - Step By Step from Udemy
Go (Global: $66,000; US: $110,000)
Go excels in server-side applications that demand concurrency. Designed and developed at Google, it’s main aim is to improve developer productivity working with networked machines with unwieldy codebases. To that end, Go includes features like static typing, code readability, and performance when it comes to multiprocessing and networking.
- Programming with Google Go from University of California, Irvine
- The Go Programming Language from Pluralsight
- Building Distributed Applications with Go from Pluralsight
- Getting Started with Cloud Native Go from LinkedIn Learning
- Advanced Cloud Native Go from LinkedIn Learning
- Go: The Complete Developer's Guide from Udemy
- Learn How To Code: Google's Go Programming Language from Udemy
Clojure (Global: $72,000; US: $110,000)
A modernized version of Lisp, Clojure takes the benefits of a dynamic and functional programming language and adapts it to industry by dispensing with mutability. Clojure comes with built-in support for concurrency, runs on Java, and integrates seamlessly with JVM.
- Learning Clojure from LinkedIn Learning
- Clojure Fundamentals - Part 1 from Pluralsight
- Clojure Fundamentals For Beginners from Udemy
Rust (Global: $69,000; US: $105,000)
Rust boasts memory safety and concurrency, taking after C++ both syntactically and from a performance standpoint. It emphasizes reliability, productivity, and performance. It’s also taken the top spot for “most loved programming language” in the StackOverflow survey three years in a row now.
- Rust Fundamentals from Pluralsight
- First Look: Rust from LinkedIn Learning
- Rust Programming Language for Beginners from Udemy
- The Rust Programming Language from Udemy