Which language is better to learn for a career as Software Developer?
At the beginning of my career, I used to create a table with the job offers for developers in my region to monitor which technical skills were trending.
This helped me to choose Java and stay with it for so many years. At the time the alternatives were: PHP, .Net, Ruby On Rails, Perl, etc.
I don't do anymore this kind of exercise so frequently. After so many years in the Java world enriched with Angular I cannot easily switch career to a different technology.
I'm currently working on a Python project and I asked myself who is using this technology. For me, Python was mostly linked to Universities and data analysis.
Which technologies are in demand?
Compared to my personal research focussed to my local market I looked at what skills are searched by the FAANG companies.
I quickly searched for some programming languages, I did not search for every popular language, only languages accessible as Java/Angular developer.
For example, I didn't include .NET because I often had issues searching for C# and receiving C and C++ jobs.
I didn't go into detail if searching for Java the job was Java...script or if Python was in the profile of an Admin or a Dev. I did it out of curiosity and not to analyze the market.
These companies are looking for profiles that are different from my habitual clients (big public and financial corporations).
Here are the results:
(language / company) | Apple | Microsoft | Meta | Adobe | Salesforce | Amazon | Total | |
---|---|---|---|---|---|---|---|---|
Swift | 387 | 7 | 4 | 0 | 5 | 1 | 29 | 433 |
Kotlin | 7 | 6 | 8 | 1 | 8 | 2 | 16 | 48 |
Java | 399 | 219 | 157 | 40 | 143 | 85 | 379 | 1422 |
Python | 600+ | 238 | 227 | 232 | 87 | 43 | 426 | 1853 |
React | 93 | 71 | 1 | 4 | 39 | 9 | 126 | 343 |
Javascript | 147 | 135 | 341 | 4 | 92 | 59 | 61 | 839 |
Angular | 30 | 22 | 6 | 1 | 10 | 2 | 7 | 78 |
The growth of Python is pretty impressive, in the last years the demand is increasing regularly:
Here a statistic for the IT market in UK (source: www.itjobswatch.co.uk), it shows the frequency of a keyword in the job offers.
In 10 years Python went from a marginal demand to 15% of the job offers. Java, on the other side, is pretty stable.
Job postings citing Python as a proportion of all IT jobs advertised:
Java postings citing Python as a proportion of all IT jobs advertised:
The TIOBE index confirm that Java is not anymore the 'universal' language and is gently losing ground.
Some considerations
It seems that the 2 languages oriented to mobiles (Swift and Kotlin) have a limited market. Most of the demand for Swift is from ... Apple.
In my experience, this is a niche market.
Python returns more job offers than Java. I think Python is more a technology required as 'nice to have' and for the most part is secondary in the job profiles.
Anyway, the numbers say clearly that Python is used in all the companies we evaluated.
Between the SPA frameworks (I didn't look for Vue), without surprise React dominates the job offers. In my country and with my classical clients (Finance) usually is Angular the SPA frameworks more in demand.
React is often used to build frameworks, Angular is frequently used to build complex enterprise solutions with heterogeneous teams.