Comment évaluer les compétences des développeurs JavaScript pour trouver les meilleurs - guide pour le recrutement dans le secteur des TI

Publié : Dernière mise à jour :
JavaScript : questions d'entretien pour les ingénieurs en logiciel

1. Qu'est-ce que JavaScript ?

JavaScript (également connu sous le nom de JS) est un langage de haut niveau, basé sur des prototypes, non typé et dynamique. Selon l'environnement, JavaScript peut être interprété ou compilé. C'est un langage de programmation multi-paradigme, qui prend en charge les styles de programmation orientée objet, impérative et fonctionnelle.

JavaScript a commencé comme un langage réservé aux navigateurs, ajoutant de nombreuses possibilités pour améliorer les sites Web déjà écrits avec HTML et CSS. En 2009, tout a changé. Désormais, JavaScript peut être utilisé partout (littéralement partout), même en combinaison spatiale) grâce à Node.js - qui est un environnement d'exécution JavaScript basé sur le moteur JavaScript V8 de Google. Les applications écrites en JavaScript peuvent être très rapides si elles sont réalisées par des développeurs compétents. En raison du très faible niveau d'entrée dans le monde de JavaScript, c'est maintenant l'un des plus grands succès de l'industrie. les langues les plus utilisées.

N'oubliez pas : Java et JavaScript ne sont pas le même langage de programmation. Les développeurs sont sensibles à leurs langages favoris, il est donc très important de ne pas confondre les noms.

2. Qu'est-ce qu'il est important pour un recruteur informatique de savoir sur JavaScript ?

La demande de développeurs JavaScript augmente très rapidement. Il y a quelques choses que vous devez savoir lorsque vous recherchez un développeur JS.

- Comme je l'ai mentionné précédemment, JavaScript est très facile à prendre en main. Avec quelques lignes de code, vous pouvez modifier le comportement d'un site Web ou créer un simple serveur HTTP avec Node.js. Et c'est aussi le piège de JavaScript - beaucoup de développeurs n'apprennent que de petites parties du langage juste pour faire des choses. Pour écrire des applications rapides et de haute qualité, vous devez avoir une très bonne connaissance de JavaScript lui-même.

- Il existe un dicton dans le monde du JavaScript : "Un jour sans nouveau framework JavaScript est un jour perdu". De nouveaux outils apparaissent comme des champignons par temps pluvieux. Je ne condamne pas cela - C'est tout le contraire - Je l'encourage. Ce phénomène nous montre à quel point la communauté JavaScript est créative et passionnée. Mais cet état de choses a un énorme inconvénient : nous exigeons des développeurs une connaissance des frameworks qui viennent d'être créés. Une très bonne connaissance des frameworks populaires est importante pour écrire rapidement des applications JavaScript efficaces, mais il est préférable d'avoir un développeur ayant une grande expérience du JavaScript pur et des frameworks ou bibliothèques plus anciens pour apprendre de nouveaux outils plutôt que d'avoir un développeur qui suit aveuglément ce qui est nouveau sans une compréhension profonde du langage.

- D'autre part, parfois, le JavaScript pur ne suffit pas. Vous pouvez tout faire à partir de zéro, mais cela prend du temps et, comme nous le savons tous, le temps, c'est de l'argent. Un bon développeur JavaScript doit connaître au moins un framework ou une bibliothèque populaire et éprouvée. Et comme l'écosystème est en constante évolution, les connaissances sur les outils qui étaient utilisés il y a deux ou trois ans peuvent être dépassées.

- Vous devez savoir quel type de développeur JavaScript vous recherchez - s'agit-il de quelqu'un qui rejoindra l'équipe Front-end ? Ou quelqu'un qui travaillera sur des applications côté serveur ?

Ou peut-être est-ce quelqu'un qui travaillera sur des applications mobiles hybrides ou des dispositifs de l'Internet des objets ? Dans ces cas, la compréhension de base du langage est la même. Cependant, chacun de ces développeurs doit avoir des connaissances différentes liées à son domaine de travail.

- Pour les postes de haut niveau, une expérience commerciale est requise, mais pour les développeurs débutants ou même de niveau moyen, un portfolio intéressant avec un code bien écrit sur l'un des services d'hébergement de dépôts populaires (comme GitHub) peut être tout aussi bien. Des points bonus si le candidat contribue à des projets Open Source.

3. Comment vérifier les compétences en JavaScript lors de la phase de sélection ?

Le dépistage est difficile lorsque vous ne connaissez pas les technologies utilisées par les développeurs. C'est encore plus difficile quand tout change si vite comme dans l'écosystème JavaScript. Passons donc à quelques conseils pratiques de recrutement pour vérifier les compétences des développeurs JavaScript.

3.1 Examen technique des compétences en JavaScript sur la base du CV

Technologie JavaScript - glossaire de base des termes JavaScript pour les recruteurs en informatique

Le CV d'un candidat peut nous donner beaucoup d'informations utiles, mais vous devez savoir comment choisir les plus importantes. Il existe de nombreuses expressions techniques différentes sur chaque CV et il est très important de ne pas s'y perdre. En tant que recruteur technique à la recherche d'un développeur JavaScript, vous devez connaître toute la terminologie utilisée par les candidats.

Vous trouverez ci-dessous des informations utiles qui vous aideront à garder la raison pendant le dépistage.

Glossaire JavaScript pour les recruteurs techniques

Versions de JavaScript EcmaScript 5 (ES5 - disponible partout), EcmaScript 6 (ES6 - disponible dans les navigateurs les plus récents), EcmaScript 2016 (ES7 )
Cadres et bibliothèques JavaScript Angular.js, jQuery, React, Backbone, Ember, Vue.js, Polymer, Aurelia, Knockout, Rx.js
Cadres JavaScript pour Node.js Express.js, Hapi.js, Koa, Sails, Meteor
Gestionnaires de paquets Node.js NPM, Bower, JSPM
Outils de construction et d'exécution de tâches basés sur Node.js GulpGrunt, Broccoli, Webpack
Cadres de test JavaScript Casper, Moka, Jasmine, Jest, Karma
Transpilateurs JavaScript Traceur, Babel
Cadres d'applications mobiles hybrides Sencha Touch, Ionic, Apache Cordova, IntelXDK
Supersets JavaScript ou langages qui compilent en JavaScript TypeScript, CoffeScript, Elm, Dart

Ce sont les bases. Nous pouvons maintenant aller plus loin. Il existe une grande variété d'outils, de cadres et de bibliothèques, et chacun d'entre eux est différent. Pour rendre les choses plus piquantes, il peut y avoir de grandes différences dans les versions des outils. Si un candidat déclare connaître AngularJS, s'agit-il de la version du framework que notre client recherche ? Continuez à lire et tout sera clair.

Les noms les plus courants de JavaScript qui sont utilisés de manière interchangeable :

- JS, JavaScript, EcmaScript

- Node.js, Node, environnement d'exécution JavaScript côté serveur

- Application hybride, application mobile hybride, application hybride

Relations entre les versions respectives de la technologie JavaScript :

- EcmaScript 6 étend EcmaScript 5 (JavaScripts doit être rétrocompatible, sinon les nouvelles versions briseraient le Web).

- jQuery 1.x, 2.x et 3.x sont similaires.

- Angular 1.x est totalement différent d'Angular 2.x

- Le concept de base est le même mais il y a des différences entre chaque version majeure de React.

- Vue 1.x est totalement différent de Vue 2.x

- Les applications écrites avec Ember.js 1.x fonctionnent toujours avec 2.x

- Le concept de base est le même mais il y a des différences entre chaque version majeure de Node.js.

- NPM 3.x est une version plus riche de NPM 2.x.

Il est également utile d'être conscient des relations de suivi :

- Cadres MV* - Si quelqu'un connaît l'un des cadres Ember, Knockout ou Angular 1.x, il pourra s'occuper du reste.

- Applications mobiles hybrides - Si quelqu'un connaît Angular ou React, il sera en mesure de créer une application mobile hybride.

- Applications côté serveur - Si quelqu'un connaît Express, Hapi, Koa ou Meteor, il sera en mesure de s'occuper du reste.

Autres informations sur le CV qui peuvent montrer les compétences JavaScript du développeur :

En raison de l'évolution constante du monde du JavaScript, il n'existe pas de certificat qui puisse prouver les compétences d'un candidat. Eh bien, il y en a un. Et c'est le compte GitHub. Les bons développeurs JavaScript participent souvent à des projets Open Source en tant que contributeurs ou créent eux-mêmes des logiciels pour le bien de tous. Dans un tel environnement, ils sont exposés à d'autres développeurs qui vérifient constamment la qualité de leur code. Partager son code avec d'autres est le meilleur moyen de devenir un meilleur développeur.

Un autre aspect est la participation en tant qu'orateur à des conférences sur le JavaScript. Très souvent, des développeurs très compétents dans un domaine particulier sont invités à divers endroits pour parler de leurs expériences avec ces technologies.

3.2 Examen technique des compétences en JavaScript lors d'un entretien technique par téléphone/vidéo

Le CV peut nous renseigner sur les compétences du développeur, mais il ne nous dira rien sur le développeur lui-même. C'est pourquoi les entretiens par téléphone ou par vidéoconférence sont si populaires - les compétences sont importantes mais nous devons savoir à quel type de personne nous avons affaire - et plus important encore - avec quel type de personne l'équipe de notre client pourrait travailler. C'est pourquoi une bonne préparation avant un entretien est nécessaire.

Vous trouverez ci-dessous quelques exemples de questions qui vous permettront d'en savoir plus sur le candidat. J'espère qu'ils faciliteront la recherche du bon candidat.

  1. Question d'entretien JavaScript concernant l'expérience du développeur

Q1 : Avec les technologies citées dans votre CV, avez-vous eu une expérience commerciale au cours des deux dernières années ? Quelles étaient vos responsabilités ?

Pourquoi demander Q1 : En posant cette question, vous pouvez en savoir plus sur l'expérience, les responsabilités et les réalisations du candidat en Java. Ainsi, vous apprenez à mieux connaître votre candidat.

  1. Questions d'entretien JavaScript concernant les connaissances et les opinions du développeur

Q2 : Quelles sont les bibliothèques JavaScript que vous considérez comme précieuses et pourquoi ?

Pourquoi demander Q2 : Cette question nous montre les connaissances du candidat sur l'écosystème JavaScript. Nous pouvons voir tout ce qui concerne le choix de la technologie.

Q3 : J'ai remarqué que vous avez inscrit le cadre X sur votre CV. Quelle est votre opinion à ce sujet ? Est-ce un bon choix ?

Pourquoi demander Q3 : Ces questions nous montrent des connaissances sur une technologie particulière. Les réponses incertaines et incertaines peuvent nous aider à trouver des mensonges dans un CV. Vous pouvez également vous faire l'avocat du diable en vous basant sur leurs réponses "Mais pourquoi ne pas utiliser le framework Y pour cela ?". Ainsi, vous pouvez voir comment les candidats choisissent une technologie, justifient leurs choix et si ses opinions sont en accord avec vos équipes informatiques.

Q4 : Si vous vouliez apprendre une nouvelle technologie liée à JavaScript, quelle serait-elle ?

Pourquoi demander Q4 : La réponse à cette question démontre l'approche des candidats en matière d'apprentissage et peut nous aider à trouver les développeurs qui utilisent encore des connaissances dépassées acquises dans le passé.

  1. Question d'entretien Java concernant la prise de décision du développeur concernant la technologie JavaScript

Q5 : Sur quelle scène avez-vous rejoint des projets récents ? Avez-vous participé au choix de la technologie ou au montage du projet ? Si oui, quelle technologie avez-vous choisie ou recommandée pour le projet et pourquoi ?

Pourquoi demander Q5 : Ces questions montrent non seulement comment un candidat fait des choix en matière de technologie, mais aussi s'il a été associé aux décisions. C'est particulièrement important si vous recherchez une personne expérimentée.

  1. Question comportementale pour un développeur JavaScript

Q6 : Pensez à la décision de programmer un projet que vous avez prise et qui a été un échec. Pourquoi pensez-vous que c'était une erreur ? Pourquoi est-ce arrivé ? Pourrait-on faire quelque chose de différent afin de le transformer en succès ? Quelles mesures avez-vous prises pour améliorer la situation ? Qu'avez-vous appris de cette expérience ?

Pourquoi demander Q6 : Ce type de question vous permettra de savoir comment le candidat perçoit ses décisions, tire des conclusions et tire des enseignements de son expérience antérieure.

Q7 : Contribuez-vous à un projet Open Source ou peut-être maintenez-vous votre propre projet Open Source ? Assistez-vous à des conférences JavaScript ?

Pourquoi demander Q7 : Des questions comme celles-ci nous montrent si un candidat souhaite partager ses connaissances et s'il veut faire partie intégrante de l'écosystème JavaScript. Les personnes qui ont une forte volonté de partager leur expérience sont souvent de bons joueurs d'équipe.

Consultez notre Salaire du développeur JavaScript guide.

Auteur - Mateusz Rojecki Développeur Front-end @ Coders Lab

Coders LabCoders Lab (www.coderslab.pl) est la plus grande école de codage de Pologne, présente à Varsovie, Cracovie, Katowice, Wrocław, Poznań et Łódź. Pendant le bootcamp de six semaines, les étudiants apprennent les technologies de développement web : front-end ou back-end. Nos méthodes d'enseignement se concentrent sur 4 domaines : la pratique, le travail avec un mentor, la construction du portfolio de l'étudiant et le soutien à la carrière. Nous adaptons le programme aux besoins technologiques actuels du marché afin de soutenir l'éducation basée sur la connaissance. Plus de 300 étudiants ont été diplômés des bootcamps.

DevSkiller : tests d'évaluation en ligne du codage JavaScript prêts à l'emploi

DevSkiller aide les entreprises dans leur processus de recrutement en leur fournissant une infrastructure qui leur permet de tester les compétences en programmation des candidats dans un environnement qui imite l'expérience du premier jour de travail. Nous permettons aux entreprises d'utiliser leur propre base de code, des projets informatiques entiers utilisant des frameworks et des bibliothèques, pour tester les programmeurs en ligne. Cependant, nous disposons également de tests de codage JavaScript prêts à l'emploi que vous pouvez utiliser dans votre campagne de recrutement technique.

sécurité
JUNIOR
Des compétences éprouvées
Durée
46 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des Mathématiques, Probabilité, Compétences générales, Cybersécurité, Vulnérabilités, Sécurité du Web

Lacunes dans les codes

l'évaluation de la connaissance des Cybersécurité, Netcat, Reverseshell, Nmap, Portscan, Curl, Mot de passe, Protection

Tâche de test - Niveau : Facile

Cybersécurité | XSS Pastebin - Dans ce défi, le candidat est confronté à une page pastebin qui présente une vulnérabilité XSS au niveau du portail de l'administrateur. Cela permet à l'attaquant de se faire passer pour l'administrateur sans connaître les informations d'identification correctes.

JavaScript
JUNIOR
Des compétences éprouvées
Durée
46 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des JavaScript

Lacunes dans les codes

l'évaluation de la connaissance des JavaScript

Tâche de programmation - Niveau : Facile

JavaScript | Office Game - Tic Tac Toe - Terminez une version modifiée du jeu populaire TicTacToe.

JavaScript
JUNIOR
Des compétences éprouvées
Durée
51 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des JavaScript

Lacunes dans les codes

l'évaluation de la connaissance des JavaScript

Tâche de programmation - Niveau : Facile

JavaScript | Recherche de mots - Initialisez l'objet WordSearch pour contenir la letterGrid et implémentez la méthode find qui recherchera une grille donnée dans toutes les directions.

Réagir
JUNIOR
Des compétences éprouvées
Durée
39 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des JS, JavaScript, Réagir

Lacunes dans les codes

l'évaluation de la connaissance des JavaScript, Réagir

Tâche de programmation - Niveau : Facile

JavaScript | React, Class Components, Enzyme | Search-Engine Application - Mettre en œuvre une application pour rechercher et filtrer les produits dans une boutique en ligne.

Node.JS
MIDDLE
Des compétences éprouvées
Durée
87 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des JavaScript, Node.JS

Lacunes dans les codes

l'évaluation de la connaissance des JavaScript, Node.JS, SQL

Tâche de programmation - Niveau : Moyen :

Node.JS | Rest API | News backend service - Implémentation d'un service de news backend créé en Node.JS avec Vanilla JS incluant l'écriture d'autorisations et de Rest APIs.

TypeScript
JUNIOR
Des compétences éprouvées
Durée
51 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des Dactylographie

Lacunes dans les codes

l'évaluation de la connaissance des JavaScript, Réagir

Questions sur le choix

l'évaluation de la connaissance des HTML, CSS

Tâche de programmation - Niveau : Facile

TypeScript | React Hooks | Movies State Management - Application complète de gestion de films utilisant React Hooks en implémentant la gestion d'état aux vues existantes.

JavaScript
MIDDLE
Des compétences éprouvées
Durée
62 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des JavaScript, Redux

Lacunes dans les codes

l'évaluation de la connaissance des HTML, HTML5, CSS

Tâche de programmation - Niveau : Moyen :

JavaScript | Sélecteurs Redux | Formations du département RH - Implémenter correctement les réducteurs et sélecteurs redux.

Réagir aux autochtones
MIDDLE
Des compétences éprouvées
Durée
107 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des Réagir aux autochtones

Lacunes dans les codes

l'évaluation de la connaissance des JavaScript, Réagir aux autochtones

Tâche de programmation - Niveau : Moyen :

React Native | Cheeper - une nouvelle application de médias sociaux - Terminez la mise en œuvre afin que la socialisation de base soit possible.

Angulaire
MIDDLE
Des compétences éprouvées
Durée
77 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des Angulaire, JavaScript, Dactylographie

Tâche de programmation - Niveau : Moyen :

JavaScript | Angular | Notepad App - Compléter une application simple de notes utilisant le NotesService fourni pour enregistrer et lire des notes.

TypeScript
MIDDLE
Des compétences éprouvées
Durée
73 minutes max.
Évaluation
Automatique
Aperçu des tests

Questions sur le choix

l'évaluation de la connaissance des JavaScript, Dactylographie

Lacunes dans les codes

l'évaluation de la connaissance des JavaScript, Dactylographie

Tâche de programmation - Niveau : Moyen :

TypeScript | NestJS | My Barista App - Coffee Recommendation - Mise en œuvre du service REST NestJS pour évaluer et recommander des types de café.

Partager le poste

En savoir plus sur le recrutement dans le secteur des technologies

Abonnez-vous à notre Learning Hub pour recevoir des informations utiles directement dans votre boîte aux lettres électronique.

Vérifier et développer les compétences de codage de manière transparente.

Voir les produits DevSkiller en action.

Certifications de sécurité et conformité. Nous veillons à ce que vos données soient sûres et sécurisées.

Logo DevSkiller Logo TalentBoost Logo TalentScore