Les compétences de développeur de logiciel les plus précieuses en 2020

En tant que l'un des domaines de croissance les plus importants de la dernière décennie, les compétences en développement de logiciels restent très demandées, même dans l'économie d'aujourd'hui. Mais certaines compétences sont plus souhaitables que d'autres.

Il est particulièrement important de choisir les bons sur lesquels se concentrer, car la pandémie du COVID-19 continue d'avoir un impact sur le marché du travail mondial. Rien qu'au Royaume-Uni, le nombre de postes de développeur de logiciel et d'ingénierie logicielle annoncés a diminué de 33% en juillet par rapport à l'année précédente, selon CV-Library.

Alors, quelles compétences de développeur sont les plus précieuses sur le marché actuel? Nous avons parcouru les données pour trouver les compétences de développeur les plus bancables pour les années à venir et la meilleure façon de vous préparer au succès dans un marché du travail tendu.

Ne mettez pas tous vos œufs dans le même panier

Les développeurs sont souvent jugés et évalués sur leur maîtrise de certains langages et cadres de programmation, mais il est important de se rappeler que ce sont des compétences transférables.

Stack Overflow a demandé à des milliers de développeurs à quelle fréquence ils apprenaient une nouvelle langue ou un nouveau cadre pour son enquête 2020 auprès des développeurs, environ 75% des répondants ayant déclaré qu'ils apprenaient une nouvelle technologie au moins une fois par an.

«Les langages et les cadres sont très similaires, de sorte que les différences entre les langages de programmation sont beaucoup plus petites que le mot parlé. Passer de PHP à Python n'est pas comme apprendre le français », explique Hew Ingram, responsable de l'ingénierie chez Applied, spécialiste des technologies de recrutement.

Par exemple, Ingram dit que s'il embauchait pour un développeur React, cela ne le dérangerait pas vraiment s'ils avaient déjà fait React, s'ils avaient fait Angular, JQuery ou même JavaScript vanilla, ils seront en mesure de prendre React très rapidement. . »

Dans le développement de logiciels, comme de nombreux cheminements de carrière, la capacité de démontrer des compétences transférables est plus précieuse qu'une longue liste de compétences, et de nombreux responsables du recrutement sont de plus en plus indépendants de la langue, selon HackerRank.

Certaines compétences sont plus chaudes que d'autres

Cela étant dit, il existe des compétences et des cadres qui sont actuellement très demandés et qui se révéleront plus précieux sur votre CV que la maîtrise de langages omniprésents comme JavaScript ou C ++.

Rust et Dart sont tous deux des langages de programmation légers qui ont gagné en popularité parmi les développeurs, en tête de la liste des langages de programmation à croissance rapide sur GitHub entre 2018 et 2019. Comme l'observe le rapport GitHub State of the Octoverse:

Avec Flutter dans nos référentiels de tendances, il n'est pas surprenant que Dart ait gagné des contributeurs cette année. Nous avons également observé des tendances vers des langages à typage statique axés sur la sécurité des types et l'interopérabilité: les communautés Rust, Kotlin et TypeScript continuent de croître rapidement. 

De même, le langage de programmation Go de Google connaît une popularité croissante selon le marché de l'embauche technologique Hired, qui a vu les ingénieurs Go-qualifiés gagner en moyenne neuf demandes d'entretien ou plus par candidat, Scala et Ruby se rapprochant de plus de huit demandes d'entretien par candidat en 2019.

Néanmoins, Java et JavaScript sont peut-être les langages de programmation les plus bancables à apprendre si vous débutez. En fait, Java reste le deuxième langage le plus demandé par les employeurs derrière SQL, selon l'analyse du site d'emplois populaire Indeed.

Ensuite, il y a Python, qui a rapidement gravi les échelons des compétences au cours de la dernière décennie. Python est populaire auprès des scientifiques des données et constitue le troisième langage le plus demandé, selon des millions d'offres d'emploi aux États-Unis sur Indeed.com entre 2014 et 2019.

L'argent peut aussi être bon, avec le salaire moyen d'un développeur compétent en Python à 91000 $, selon PayScale. À titre de comparaison, un développeur Java coûte en moyenne 74 000 $. 

Encore une fois, le rapport GitHub State of the Octoverse offre un certain contexte: 

Derrière la croissance de Python se cache une communauté en pleine expansion de professionnels et d'amateurs de la science des données, ainsi que les outils et les cadres qu'ils utilisent chaque jour. Celles-ci incluent les nombreux packages de science des données de base optimisés par Python qui abaissent à la fois les obstacles au travail de science des données et s'avèrent fondamentaux pour les projets dans les universités et les entreprises. 

L'année dernière a également marqué la première fois que Python a surclassé Java en tant que deuxième langage le plus populaire sur GitHub par les contributeurs du référentiel. Le roi est mort, longue vie au roi.

Passer au cloud natif

Plus généralement, une direction claire du voyage peut être vue dans la tendance vers les conteneurs et le développement natif du cloud.

Les compétences générales de cloud computing ont tendance à s'aligner sur les principaux fournisseurs: Amazon Web Services (AWS), Microsoft Azure et Google Cloud Platform (GCP). Les responsables du recrutement ont tendance à embaucher contre l'expérience de ces environnements cloud, de sorte que les développeurs puissent être intégrés rapidement au sein d'une équipe.

Si vous cherchez à vous aligner sur un cloud particulier, AWS continue de s'avérer le plus populaire, car de nombreuses entreprises ont construit leurs services sur la pile AWS. L'analyse par Indeed a montré que les offres d'emploi pour les développeurs compétents sur AWS ont été multipliées par cinq entre 2014 et 2019, dépassant de loin la demande d'Azure et de GCP.

Du côté des conteneurs, les recherches d'Indeed montrent que la demande de compétences Docker continue d'augmenter, en hausse de 4 162% depuis 2014, et que Docker figurait dans plus de 5% de tous les emplois technologiques aux États-Unis en 2019.

La demande de maîtrise de l'outil d'orchestration de conteneurs Kubernetes - qui est disponible sur les trois principaux clouds - et du maillage de services Istio a naturellement suivi, car les deux sont devenus des moyens standard de gérer les environnements conteneurisés.

Kubernetes reste l'un des 10 projets open source les plus populaires des contributeurs selon le dernier rapport State of the Octoverse de GitHub. De même, Istio figurait parmi les projets les plus dynamiques des contributeurs, avec une hausse de 194% des contributions en 2019.

Commander la pile complète

Un développement majeur pour les développeurs de logiciels au cours des dernières années a été la montée en puissance du développeur dit «full-stack», un touche-à-tout capable de gérer à la fois le codage front-end et back-end requis pour créer et exécuter des applications Web.

Selon le rapport sur les compétences des développeurs 2020 de HackerRank, les responsables du recrutement dans des entreprises de toutes tailles «conviennent que les développeurs full-stack sont la priorité absolue», 38% d'entre eux affirmant que c'est le rôle numéro un à remplir en 2020.

Il y a un débat sur la question de savoir si un développeur full-stack est en fait une licorne, mais si vous cherchez à remplir les critères de recrutement de gestionnaires, vous devrez maîtriser les deux langages frontaux comme HTML / CSS et JavaScript et inversement. terminent les langages et les frameworks comme Node.js, Python, Ruby et Java, avec quelques compétences Git, bases de données et applications mobiles mises à profit pour faire bonne mesure. Bonne chance.

Les données sont toujours la nouvelle huile 

La montée en puissance de la science des données et de son partenaire opérationnel, l'ingénieur des données, a également vu plusieurs langages et compétences monter régulièrement dans les rangs de popularité.

Les outils de streaming de données comme Apache Kafka, les entrepôts de données modernes comme Amazon Redshift et Snowflake, et les plates-formes de Big Data comme Apache Spark ont ​​tous connu une demande croissante ces dernières années. Les emplois qui demandent la maîtrise de Python et du langage R font également partie de la soif de compétences en science des données.

C'est avant même de plonger dans les eaux compliquées de ce qui implique des compétences en apprentissage automatique et en intelligence artificielle. Cela a vu l'essor des plates-formes et des frameworks d'apprentissage automatique tels que TensorFlow et PyTorch.

Bien sûr, tout le monde ne peut pas être un data scientist, et de nombreux développeurs n'auront pas cet ensemble de compétences, mais avoir des compétences complémentaires ne nuira certainement pas à votre employabilité.

L'éducation formelle n'est pas tout

Enfin, il est important de se rappeler qu'un diplôme officiel en informatique n'est pas une nécessité pour obtenir un emploi de développeur de logiciels en 2020.

«Il est essentiel pour les responsables du recrutement de se concentrer sur l'évaluation des compétences d'un candidat plutôt que sur une surindexation sur l'éducation. Alors que 50% des ingénieurs en logiciel ont un diplôme en informatique, 32% ont appris eux-mêmes à coder ou ont appris à travers un bootcamp de codage - et ils peuvent très bien avoir le même ensemble de compétences en programmation », a écrit Mehul Patel, PDG embauché dans l'État 2020. du rapport des ingénieurs logiciels par le recruteur technique.

En fait, Google et Microsoft ont tous deux lancé des alternatives aux diplômes universitaires standard cette année, avec le programme de certificats de carrière de Google et l'initiative mondiale de compétences de Microsoft.

«La génération Z est plus susceptible que n'importe quelle génération précédente d'utiliser des bootcamps. Près d'un sur six déclare avoir tiré parti des bootcamps pour acquérir de nouvelles compétences », selon le rapport sur les compétences des développeurs 2020 de HackerRank. En outre, 32% des responsables du recrutement recrutent des diplômés de bootcamp et 72% d'entre eux affirment que ces recrues «étaient également ou mieux équipées pour le travail que les autres».

Le débat se poursuivra sur la valeur réelle d'un diplôme en informatique traditionnel et sur la façon dont il permet de devenir un ingénieur à succès. Mais ce qui est certain, c'est que l'itinéraire traditionnel n'est peut-être pas accessible à tout le monde, et cela ne devrait pas exclure ces personnes du marché du travail.