Comment embaucher des développeurs de logiciels seniors : Conseils du directeur technique de DevSkiller

Publié : Dernière mise à jour :
ingénieur technicien

Recruter dans le domaine du développement de logiciels est un défi et essayer de embaucher des développeurs seniors est encore plus difficile. En raison d'une pénurie de talents, les ingénieurs seniors sont rares. Ils coûtent également cher et sont rarement à la recherche d'une nouvelle opportunité d'emploi.

En outre, ils ont appris à valoriser leur temps. Lorsque vous recrutez un développeur web junior, par exemple, vous pouvez recevoir des centaines de candidatures. En revanche, ne soyez pas surpris de ne pas recevoir de candidatures pour les ingénieurs seniors.

Comment puis-je le savoir ? Je suis moi-même un développeur senior. Et croyez-moi, au cours de mes 15 années de développement de logiciels, je suis passé par de nombreux processus de recrutement. En tant que candidat et en tant que recruteur technique.

Supposons que vous ayez de la chance. Votre offre d'emploi était irréprochable, votre taux horaire est convaincant et votre entreprise fait des choses intéressantes. Pourtant, une fois que vous avez entamé le processus, les candidats ne font que vous effacer. Ce n'est pas parce que les vraies rockstars et les ninjas de la technologie ont un ego gigantesque. C'est parfois le cas. Cependant, il est plus probable que d'autres processus de recrutement étaient meilleurs et qu'ils vous ont tout simplement laissé tomber.

Alors, comment encourager un développeur expérimenté à prendre part à votre processus de recrutement afin d'embaucher les candidats les plus qualifiés ? Permettez-moi de partager mes conseils du point de vue du directeur technique d'une entreprise technologique.

Comment encourager les développeurs seniors à participer au recrutement ?

Encourager les ingénieurs logiciels seniors à prendre part à votre processus de recrutement, en particulier les défis de codage, est... un défi. Cependant, différentes entreprises définir l'ancienneté différemment. En outre, leur attitude à l'égard du processus de recrutement en dit long sur le candidat lui-même.

Un développeur senior aura tendance à se concentrer moins sur les compétences techniques et plus sur des concepts techniques plus larges. Sur les solutions techniques, plutôt que sur les technologies qu'ils utiliseront. Si vous faites appel à leurs connaissances techniques plus larges et concevez votre processus autour de la résolution de problèmes, vous attirerez probablement davantage d'ingénieurs seniors.

Par exemple, ne tournez pas autour de la version de React ou de Python que vous utilisez. Expliquez plutôt comment votre entreprise résout les problèmes en utilisant React et Python. En mettant l'accent sur la vue d'ensemble lors du recrutement, vous avez plus de chances de séduire un programmeur senior plutôt qu'un junior. D'autre part, si vous vous concentrez uniquement sur les technologies qu'ils utiliseront, vous ne ferez probablement appel qu'aux intérêts techniques de personnes moins expérimentées et plus orientées vers la technologie.

Qu'est-ce que cela signifie d'être un développeur senior de nos jours ?

Donc, un tas de personnes ont postulé à votre annonce d'emploi senior. Félicitations ! Malheureusement, la moitié d'entre elles ne méritent pas votre temps. Beaucoup seront sous-qualifiés et manque de compétences en programmation-mais ont décidé de tenter leur chance quand même. Ce nombre peut être supérieur à 50% si votre marque est très forte, ou si vous offrez un salaire et des avantages exceptionnels. Il peut être inférieur si votre offre d'emploi était très spécifique. Mais attendez-vous à rejeter d'emblée certains candidats au cours de votre processus de recrutement.

D'un autre côté, vous obtiendrez au moins quelques candidats qualifiés. Le problème est de savoir comment distinguer les meilleurs développeurs de logiciels des aspirants. À ce niveau, vous devez être très prudent. Que vous le vouliez ou non, un seul faux pas et il ne restera que les candidats les plus persévérants. Et croyez-moi, ce ne sont pas toujours les meilleurs.

Vous avez donc un atout très précieux à portée de main. Des candidats extrêmement compétents parmi des candidats moins expérimentés. En suivant attentivement mes conseils, vous pouvez découvrir les meilleurs développeurs rapidement et sans douleur. Permettez-moi de vous donner quelques conseils pour rendre le processus de recrutement agréable et décisif.

Soyez transparent

Les développeurs de l'industrie informatique, en particulier les développeurs seniors, détestent les BS. Ne mentez pas. Ne promettez pas trop. Ne prolongez pas le processus dans l'espoir d'obtenir un meilleur candidat plus tard. Des compétences en communication honnêtes sont essentielles. Il est important que tout le monde soit sur la même longueur d'onde.

Expliquez clairement à quoi ressemble le processus. En particulier, à quelle date ils peuvent s'attendre à recevoir un retour d'information, à combien d'étapes de recrutement ils doivent s'attendre et qui sera chargé d'évaluer leurs compétences.

Il va sans dire qu'il faut être ouvert sur le type de travail, le salaire et la politique de travail à domicile. N'essayez pas d'attirer les développeurs avec de nouvelles technologies brillantes. En fait, la différence entre un développeur senior et un développeur junior réside dans le fait que le premier est généralement plus intéressé par les problèmes commerciaux qu'il peut résoudre. Ils seront plus intéressés par les projets récents de votre entreprise et moins par les outils que vous utilisez. En parlant d'outils, que devez-vous mettre dans une offre d'emploi ?

Avoir une offre d'emploi clairement définie

Image par mohamed Hassan à partir de Pixabay

Une offre d'emploi est appelée ainsi pour une raison. Vous faites de la publicité pour votre entreprise. Mais attendez-vous à ce qu'un ingénieur logiciel senior soit allergique à la fausse publicité. Il ne sera pas attiré par l'offre. Cependant, il y a quelques informations clés qu'un ingénieur logiciel senior recherche dans votre description de poste afin de s'engager dans votre processus de recrutement. Voici ce qu'il faut inclure :

Salaire et avantages

Image par mohamed Hassan à partir de Pixabay

Oui, nous travaillons pour l'argent. Quand recrutement d'ingénieurs logiciels seniorsIl est préférable d'être ouvert et honnête sur votre budget pour éviter toute déception. D'un autre côté, un salaire ou des avantages bien supérieurs au taux du marché peuvent suggérer que vous dépensez une tonne d'argent des investisseurs ou qu'il y a quelque chose de louche dans le poste. Soyez prêt à répondre à des questions sur ces sujets.

Conditions de travail

Les horaires de travail, la politique de télétravail, les voyages d'affaires, le matériel et l'aménagement du bureau. Un open space bruyant où vous devez rester assis de 9 à 5 est rarement apprécié. Quel niveau de bureaucratie faut-il attendre ? Vont-ils s'engager à coder dès le premier jour ?

Avantages

Actions, soins de santé, budget éducation/conférence. Ce sont les plus convaincants.

Culture et valeurs de l'entreprise

Êtes-vous agile ? Faites-vous des déploiements fréquents ? Pouvez-vous contacter votre client ? Faites-vous du dogfooding sur votre projet (le cas échéant) ? Expliquer honnêtement le premier jour de travail est une bonne idée.

Type de travail et aperçu de l'ensemble du projet

Êtes-vous une entreprise de logiciels ? Construisez-vous un produit ? Quel est le secteur d'activité pour lequel vous travaillez ? Dispensez-vous des formations ? Votre entreprise a-t-elle un impact positif sur le monde ou fonctionne-t-elle comme une entreprise tout à fait légale ?

Quelle est la pile technologique ?

Celle-ci est importante. Ne vous contentez pas d'énumérer toutes les technologies jamais mentionnées par votre équipe de développement et de dire "vous devez posséder les compétences requises suivantes...". Aucun développeur, même au sein de votre équipe de développement actuelle, n'aura toutes les exigences dans son éventail de compétences. Au lieu de cela, dites simplement "nous utilisons les éléments suivants...", un bon développeur saura à quel point ils correspondent. Incluez les compétences essentielles qu'il possède et ce qu'il souhaite apprendre.

En plus de cela, essayez d'être bref. Nous vivons à l'ère de Twitter et de TikTok. Les murs de texte ne sont pas attrayants et seront probablement ignorés. Les descriptions de poste doivent ressembler davantage à une présentation élégante qu'à un document Word. Si vous pouvez proposer une infographie ou une courte vidéo, c'est assurément quelque chose qui capte l'attention.

Enfin, l'offre d'emploi doit expliquer à quoi ressemblera le processus de recrutement :

Avoir un processus de recrutement rapide

À quoi doit donc ressembler un processus de recrutement idéal pour embaucher des ingénieurs logiciels seniors ? Il doit être transparent et rapide. Connaissez-vous cette blague ?

Un développeur senior a perdu son emploi et s'est retrouvé au chômage. C'était les pires 15 minutes de sa vie.

Bien sûr, c'est exagéré. Certains ingénieurs logiciels expérimentés peuvent attendre votre décision finale pendant quelques semaines. Toutefois, cela peut être dû à de simples compétences en matière de communication et doit être précisé dès le départ.

Pour qu'une offre d'emploi se traduise par une embauche réussie, il ne suffit pas d'énumérer les compétences physiques et morales mentionnées par votre équipe de développement. Les meilleures descriptions de poste expliquent clairement ce que le candidat peut attendre du processus - du début à la signature du contrat. Elle doit au moins contenir les informations suivantes :

  • Quelles sont les étapes - y aura-t-il une présélection téléphonique et un travail à domicile ? Y aura-t-il un entretien avec les RH sur les compétences générales et un autre avec les TI sur les compétences techniques ? Combien de temps durera le processus de recrutement ?
  • Quel est le délai de retour d'information après chaque étape ?
    Si vous avez besoin de deux semaines pour réviser les devoirs, c'est mauvais. Mais si c'est le cas, il est préférable de le dire dès le départ. En informatique, cela s'appelle un SLA (Service Level Agreement). Vous acceptez de donner un retour d'information et de procéder dans un certain délai.

  • Réfléchissez au délai qui s'écoulera entre la signature du contrat par votre ingénieur principal et le début effectif des travaux. Par exemple, devra-t-il commencer au début du mois civil ?

Une façon d'accélérer le processus de recrutement est d'automatiser certaines parties de la phase de sélection. Les responsables du recrutement peuvent ainsi consacrer plus de temps aux entretiens et aux tâches qui font gagner de l'argent à votre entreprise.

Lire - Comment mettre en œuvre l'automatisation pour recruter plus rapidement les meilleurs développeurs de logiciels ?

Offrir un retour d'information constructif

Image par Gerd Altmann à partir de Pixabay

Le retour d'information fait partie du processus. Si vous oubliez tout simplement les candidats rejetés, ils garderont un très mauvais souvenir de votre entreprise et pourraient en faire profiter leurs collègues qui voient votre offre d'emploi. Un retour d'information simple et modélisé n'est guère mieux.

Prenez votre temps et préparez un retour constructif lorsque vous rejetez un candidat. Expliquez-lui en particulier pourquoi il a été rejeté et quelles sont les prochaines étapes possibles.

Je serais assez heureux d'entendre que si je ne suis pas assez expérimenté dans une certaine technologie ou pratique, je peux l'étudier et revenir dans un an. Après tout, on ne peut attendre de personne qu'il sache tout du processus de développement.

En outre, si les ingénieurs peuvent indiquer les livres ou les documents qu'ils ont trouvés utiles, le processus de recrutement peut en fait être une expérience d'apprentissage fantastique pour eux.

Concentrez-vous sur votre image de marque d'employeur

Image de marque de l'employeur est un vaste sujet, je vais donc me contenter d'effleurer la question. Chaque élément d'information qui permet de toucher des candidats potentiels en dehors de l'offre d'emploi est un plus.

Conférences données par vos développeurs. Encouragez votre équipe à donner des conférences lors de groupes d'utilisateurs ou de conférences locales. Donnez-leur le temps de se préparer, voire d'investir dans une formation. Il s'agit d'un investissement à long terme qui portera ses fruits plus tard.

Tenez un blog technique expliquant votre architecture, vos décisions de conception, mais aussi vos erreurs. De nombreuses entreprises, en particulier les grandes entreprises, sont honnêtes lorsqu'elles publient des analyses rétrospectives. Si vos développeurs peuvent admettre publiquement qu'ils ont commis une erreur, comment ils ont atténué le problème et ce qu'ils ont appris, cela en dit long sur la culture de l'entreprise.

Le parrainage d'événements et l'affichage de votre logo sont légèrement moins efficaces, mais c'est aussi le moyen le moins cher et le plus facile d'obtenir une reconnaissance.

Comment inciter les développeurs seniors à passer un test de codage ?

Je pense que les devoirs sont un meilleur indicateur de la réussite future que les séances de codage sur tableau blanc ou d'autres types de tests. Les candidats peuvent prendre le projet et le réaliser dans le confort de leur propre maison. Ils utilisent leur matériel, quand ils le veulent, et peuvent chercher des solutions à des problèmes courants sur Internet (c'est bien !) C'est vrai, même les personnes âgées cherchent des trucs sur Stack Overflow tout le temps, ne leur en voulez pas.

Cependant, des devoirs mal conçus sont voués à l'échec. À ce stade de la vie, les développeurs ont peut-être une famille et des dizaines d'autres possibilités d'emploi. Voir un autre projet de codage à réaliser pendant leur temps libre peut être soit un défi passionnant, soit une nécessité ennuyeuse. La frontière est mince entre la poursuite immédiate du processus et son oubli définitif. Alors, comment concevoir le devoir parfait ?

Bien entendu, tous ces conseils fonctionnent si vous faites savoir à l'avance à vos candidats à quoi ressemble le devoir. Et que son but est aussi de gagner du temps pendant l'entretien.

Restez pertinent

Si votre activité principale est la location de voitures et que votre principal défi technique est le moteur de recommandation, ne vous éloignez pas du sujet. Ne posez pas de questions algorithmiques abstraites. Bien sûr, vous n'attendez pas des candidats qu'ils résolvent vos problèmes réels. Mais laissez entendre que c'est le type de défi qu'ils rencontreront au quotidien. Évidemment, vous devez être honnête à ce sujet.

Le candidat peut tenter un défi de codage simplement pour avoir un aperçu de ce que vous faites au travail. Vous pouvez même construire une histoire autour de ce défi. Par exemple : "essayez de battre nos ingénieurs", ou "pouvez-vous penser à une meilleure solution que la nôtre ?". Créer une tâche avec une backstory suscite l'intérêt.

Ne partez pas de zéro

Les projets dits "greenfield" sont parfois considérés comme un avantage lorsqu'on postule à un emploi. Bien que la création d'une application à partir de zéro soit amusante, elle est problématique pour de nombreuses raisons :

  • La configuration initiale d'une nouvelle application est une tâche non triviale.

  • Les développeurs lancent rarement de nouveaux projets, ils améliorent ou maintiennent bien plus souvent les projets existants.

  • L'examen et le test d'applications créées de toutes pièces sont plus difficiles pour vos ingénieurs.

Pour ces raisons, il est préférable de fournir une base de code existante et de demander aux candidats d'y apporter quelques modifications. Si une maintenance importante fait partie du travail, envisagez de dépanner ou de corriger une application existante.

L'examen du code est un autre type de mission intéressante. C'est quelque chose que les développeurs seniors font souvent. Vous pouvez même envisager de présenter votre propre base de code, en cachant bien sûr la propriété intellectuelle importante. Cela présente un autre avantage : les candidats voient votre style de codage.

Veillez à ce qu'il soit facile à préparer

Si votre devoir nécessite une certaine version de Python ou de Node.js, dites-le clairement. L'impossibilité de construire et d'exécuter le devoir est un facteur de stress et de frustration majeur. Indiquez également clairement à quel type de devoir vous devez vous attendre : algorithmique ? Orienté performances ou code propre ? Fortement testé ou documenté ? La qualité de vos devoirs en dit long sur votre propre base de code propriétaire. Si vous préparez des candidats à un devoir sur un framework AngularJS disparu depuis longtemps, n'attendez pas beaucoup de candidats.

En revanche, si vous fournissez aux candidats des environnements prêts à l'emploi, tels que des machines virtuelles ou des IDE préconfigurés, ils sont beaucoup plus susceptibles de tenter le défi.

Un exemple de test non noté est également très utile. Montrez à vos candidats à quoi ressemble plus ou moins le devoir. Une fois qu'ils auront passé l'examen type, ils seront peut-être tentés d'aborder le véritable examen.

Enfin, expliquez que vous pouvez chercher de l'aide sur Internet.

Gamifier

Si vous pouvez appliquer certaines techniques de gamification, de nombreux candidats trouveront cela attrayant. Par exemple, créez un classement anonyme entre les candidats ou notez les devoirs sur la base de performances comparatives. Les hackathons et les défis de codage prouvent que de nombreux développeurs sont prêts à consacrer une partie importante de leur temps libre au codage.

Cependant, la gamification est délicate. Il est facile de décourager les gens. Si vous ne faites pas attention, vous pouvez même être accusé de créer un environnement de type "rat race". Cette technique fonctionne donc mieux si votre marque est très bien établie.

Prêtez attention aux commentaires que vous recevez

Image par mcmurryjulie à partir de Pixabay

Faites savoir aux candidats à l'avance que chaque partie du travail à domicile fait l'objet d'un retour technique détaillé de la part de vos ingénieurs. Si votre entreprise a une marque forte dans la communauté des développeurs, c'est une opportunité fantastique pour les candidats. Notez que le retour d'information sera constructif et garanti, quelle que soit l'issue du processus.

Si une partie de la notation est instantanée, le retour d'information est encore plus rapide et plus agile. Par exemple, vous pouvez utiliser des tests unitaires automatisés.

Notez également que le retour d'information ou l'examen du code contiendra des liens vers des lectures et des documents complémentaires, des suggestions, etc. Ne vous concentrez pas sur un seul aspect comme la couverture du code ou les performances. Vous risquez de rejeter des candidats qui ont mal compris les exigences ou qui ne se concentrent pas sur les mêmes valeurs que vous.

Ce qu'il ne faut pas faire en matière de recrutement de personnel technique

En résumé, voici une liste d'actions durant le processus d'embauche qui décourageront très certainement les candidats les plus aptes à postuler et diminueront le taux de réussite des tests de codage :

  • N'écrivez pas une longue description de poste dans laquelle il manque en fait des informations précieuses. Ou même qui ment de manière flagrante

  • Le processus d'embauche n'est pas très long

  • Ne mettez pas en place des missions qui prennent trop de temps à réaliser (1 à 2 heures est une limite raisonnable).

  • N'utilisez pas d'évaluations techniques qui n'ont rien à voir avec le travail quotidien, la routine et les activités de votre entreprise.

  • N'envoyez pas de missions trop longues, ennuyeuses ou trop théoriques.

  • N'oubliez pas de donner votre avis

Résumé

Comme nous l'avons vu, lorsqu'il s'agit de recruter des développeurs de logiciels seniors, il est important de les traiter différemment des autres développeurs dans votre approche. Comprenez qu'ils ne sont pas dupes. Veillez à rédiger une offre d'emploi succincte et claire si vous voulez que les ingénieurs seniors postulent. Veillez également à décrire le projet et l'entreprise, et pas seulement les technologies. Soyez précis quant au salaire, et réaliste quant à vos attentes. Vous devez également indiquer comment se déroulera votre processus de recrutement et combien de temps il prendra.

Enfin, veillez à ce que les tests de codage soient suffisamment réalistes, compétitifs et amusants pour que les ingénieurs seniors aient envie de les entreprendre. Ils doivent être courts - quelques heures maximum - si vous voulez que les développeurs seniors les complètent. Le temps est important. Suivez ces étapes pour réussir et vous devriez vous donner au moins quelques chances de succès.

Pour des conseils plus détaillés sur le recrutement de techniciens, téléchargez notre Ebook gratuit.
Le guide essentiel pour réussir le recrutement de techniciens

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