Recruteur IT & Entretien technique : Comment évaluer techniquement un développeur Python en 5 questions ?

Vous recherchez un développeur Python ? Comment évaluer techniquement un développeur ? Il s’agit d’un profil fortement demandé avec diverses compétences complexes à analyser. Mais qu’est-ce-que le langage de programmation Python ? Je suis recruteur IT, que dois-je connaître sur Python ?

C’est ce que nous allons voir ensemble dans cet article !

Vous ne me connaissez pas encore ?

Une présentation s’impose, Manon, RH indépendante, j’ai dix ans d’expériences en ressources humaines avec une forte expérience de quatre ans en recrutement IT.

Ma particularité ? J’adore ce domaine et les métiers qui en découlent.

Alors let’s go !


Qu’est-ce que le langage de programmation Python ?

Python fait partie des langages de programmation les plus utilisés ! Il existe depuis 1991 et arrive à la première place en janvier 2022 d’après le classement de l’Index TIOBE, aujourd’hui aucun langage n’a pu le détrôner.

Considéré comme un langage simple à apprendre, il est souvent comparé au langage C++ car leurs syntaxes sont similaires.

C’est un langage puissant dans la résolution de problèmes, c’est pourquoi il est très apprécié.

Il a été créé par la fondation « Python Software Foundation » qui est indépendante et qui continue d’assurer une bonne documentation.


En tant que Recruteur IT, que dois-je savoir ?

Python est utilisé pour différents domaines, il peut autant servir pour de la programmation d’applications web, de simple script, de l’algorithmie ou pour de la programmation réseau.

Python est un langage de programmation dynamique, il facilite l’écriture de petites applications et la réalisation de script.

Il peut cependant être complexe lorsque l’on souhaite créer d’importantes applications durables.


Comment évaluer les compétences des développeurs Python lors d’entretien de présélection ?

Un recruteur IT ne peut pas tout maîtriser techniquement, seulement, il est important pour nous de savoir si le candidat peut passer au second step du processus de recrutement.

Pour cela, rien de mieux que de sécuriser son process et connaître l’environnement technique.


Présélection des CV

Un premier tri des CV en fonctions des mots clé indiqués est primordial.

Un développeur python pourra indiquer sur son CV les divers éléments en lien avec le langage de programmation python, à savoir :

  • La version utilisée du langage de programmation Python, actuellement la dernière version en développement, est la 3.12.0a4 sortie le 10 janvier 2023.
  • L’utilisation de différent ORM (Object Relational Mapping) ; pour rappel, un ORM est une technique de programmation qui donne l’illusion de travailler avec une base de données orientée objet. Vous n’avez plus besoin de faire de requêtes SQL et vous travaillez directement avec vos objets. Il y en a plusieurs : Django ORM, SQL Alchemy, Peewe; PonyORM, SQLObject, Tortue ORM (code source).
  • Il est tout à fait possible d’utiliser Python dans le cadre d’applications Web, ainsi le candidat pourra indiquer sur le CV les différents frameworks tels que : Grok (Open Source), Karrigel (Open Source), Twisted (Licence MIT), Pyramid (Licence BSD), TurboGears (Open Source), Pylons (Open Source), Zope (Open Source), Bottle (Licence MIT), Django (Open Source), Flask (Licence BSD), Tornado (Licence Apache), Web2py (Open Source), FastAPI.
  • Bibliothèques : CherryPy (Open Source)
  • Il indiquera les différents frameworks utilisés pour les cadres de tests tels que Py.Test, UnitTest, Robot, DocTest, Nez2, Témoigner, Test de l’unité.
  • Les outils d’analyse des données Python : NumPy, SciPy, Pandas, PySpark

Afin d’en savoir plus sur les compétences du candidat, et avant tout entretien physique ou en visioconférence, il est d’abord primordial d’appeler le candidat par téléphone pour lui poser quelques questions techniques dans le but de déterminer ; ses compétences en python, puis passer à l’entretien technique avec un manager.


Question 1 : Quels sont les derniers projets que vous ayez effectués en Python au cours des deux dernières années ? Quelles étaient vos responsabilités ?

Cette question permet d’en savoir plus sur l’expérience du candidat, les responsabilités et les réalisations qu’il a pu effectuer en langage python.

Question 2 : Avez-vous une préférence en termes de bibliothèques open source Python ? Et pourquoi ?

Cette question vous permet de connaître les connaissances du candidat sur l’écosystème de Python. Il pourra vous indiquer les éléments qu’il prend en compte lorsqu’il choisit une technologie ainsi que les avantages de chacune d’entre-elles.

Question 3 : Comment choisissez-vous les frameworks à utiliser en fonction du projet ? Comment savez-vous si c’est un bon choix ?

Ici, la question permet de savoir comment les candidats choisissent une technologie par rapport à une autre et ainsi comment ils justifient leurs choix.

Question 4 : Au sein du projet X, avez-vous participé au choix des technologies ? Quelle technologie avez-vous recommandée et pourquoi ?

Cette question vous permet de connaître le rôle du candidat a joué au sein du projet et s’il a été partisan dans la prise de décision.

Question 5 : Durant vos expériences, quel projet fut un échec et pour quelles raisons ? Qu’auriez-vous changé pour en faire une réussite ? Comment avez-vous réagi face à la situation ? Qu’avez-vous appris de cette expérience ? Qu’avez-vous mis en place pour améliorer la situation ?

Ici, cela vous permet de savoir comment le candidat fait face aux échecs, comment il prend du recul sur ces actes et comment il apprend de ses échecs.


Comment évaluer techniquement les compétences en Python d’un candidat ?

À la suite de vos entretiens, vérifier vos ressentis en passant par un test technique.

Attention, les développeurs en général n’apprécient pas les tests de code en ligne tel que codingame ou autres…

Préférez une mise en situation sur un test technique réalisé par vos équipes, tel qu’une mise en situation sur vos propres logiciels, une amélioration d’une bride de votre logiciel actuel …

Ainsi, votre société offrira une meilleure expérience candidat que vos concurrents actuels, l’aspect technique sera bien plus simple à évaluer pour vos équipes et par rapport à ce qui est demandé sur le poste à pourvoir.


Alors maintenant, à vous de jouer !

Laisser un commentaire