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.

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

Tâche de programmation - Niveau : Difficile

HTML/CSS | Page d'accueil - Compléter les définitions des propriétés CSS pour que la page affiche l'écran de chargement approprié avant d'afficher la page d'accueil.

Tâche de programmation - Niveau : Difficile

JavaScript | Memoization fonctionnelle - Ecrire les deux versions du mécanisme de memoization générique.

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

Questions sur le choix

l'évaluation de la connaissance des Angulaire, JavaScript

Lacunes dans les codes

l'évaluation de la connaissance des Angulaire, JavaScript

Tâche de programmation - Niveau : Moyen :

JavaScript | Angular | Reactive forms - Préparer un formulaire d'inscription à l'aide de Reactive forms

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

Lacunes dans les codes

l'évaluation de la connaissance des Angulaire2, JavaScript

Questions sur le choix

l'évaluation de la connaissance des HTML

Tâche de programmation - Niveau : Difficile

JavaScript | Angular 2+ | Router Role Based Access Control - Préparer un RBAC simple pour les routes et les composants.

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

Questions sur le choix

l'évaluation de la connaissance des JavaScript, Vue.js

Tâche de programmation - Niveau : Facile

JavaScript | Vue.js | Notepad - Complétez une application de notes simple en utilisant le NotesService fourni pour enregistrer et lire des notes.

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

Questions sur le choix

l'évaluation de la connaissance des JavaScript, Vue.js

Tâche de programmation - Niveau : Moyen :

JavaScript | Vue.js | Formulaire de contact - Terminez le formulaire de manière à ce qu'il présente toutes les caractéristiques suivantes : l'utilisateur peut se connecter, le nom et l'adresse électronique sont remplis après l'envoi du formulaire, un message de remerciement doit apparaître.

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

Questions sur le choix

l'évaluation de la connaissance des Dactylographie

Tâche de programmation - Niveau : Moyen :

TypeScript | Redux Selectors | Département RH - Mettre en place des sélecteurs Redux qui traiteront les données RH. La mise en œuvre sera testée par rapport à des tests d'instantanés.

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

Questions sur le choix

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

Tâche de programmation - Niveau : Facile

JavaScript | Vue.js | Calendar Notes - Mettre en place une application avec laquelle l'utilisateur peut ajouter une note pour une date qu'il choisit dans un calendrier.

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

Questions sur le choix

l'évaluation de la connaissance des Angulaire2, JavaScript, rxjs

Tâche de programmation - Niveau : Facile

JavaScript | Angular 2+ | Détenteur d'une carte de visite virtuelle - Connecter les éléments du détenteur de la carte virtuelle à l'aide d'un service, RxJS, et Angulars @Input.

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

Tâche de programmation - Niveau : Difficile

JavaScript | React, Redux | Address Book - Implémente les fonctionnalités manquantes d'une petite application web React construite sur Redux.

Tâche de programmation - Niveau : Moyen :

JavaScript | Node.js | Carnet d'adresses - Mettre en œuvre des terminaux pour récupérer la liste des contacts (avec une correspondance de phase et une limitation des résultats), récupérer les détails d'un seul contact et supprimer le contact donné.

Lacunes dans les codes

l'évaluation de la connaissance des MongoDB

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

Tâche de programmation du Front End - Niveau : Facile

JavaScript | TypeScript | Application de facturation - frontend - Mise en œuvre de la partie frontale pour la fusion et l'agrégation des données des factures avec les taux de change.

Tâche de programmation du back-end - Niveau : Facile

Java | Application de facturation - backend - Mise en œuvre de la partie backend pour la recherche et l'agrégation des données de facturation avec le service et les méthodes DAO.

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