Le terme DevOps a une signification différente selon les personnes et les entreprises, ce qui peut compliquer le recrutement d'ingénieurs DevOps.
Dans le livre Integrating the Internet of Things Into Software Engineering Practices, D. Jeya Mala décrit les DevOps comme :
"un ensemble de pratiques combinant le développement de logiciels (Dev) et les opérations informatiques (Ops) qui vise à raccourcir le cycle de vie du développement des systèmes et à fournir une livraison continue avec une qualité logicielle élevée".
La définition de Jeya Mala est excellente.
Les DevOps rassemblent les processus de développement et d'exploitation pratiqués par les équipes informatiques et logicielles dans les entreprises. Au départ, le rapprochement du développement et des opérations était une question de changement de culture interne. Cependant, cela s'est rapidement transformé en un nouvel ensemble de compétences parmi les professionnels du logiciel. Plutôt que de se spécialiser uniquement en " Dev " ou en " Ops ", les ingénieurs logiciels ont commencé à devenir des ingénieurs DevOps, avec des compétences dans les deux disciplines.
Notre guide vous aidera à explorer la valeur que le DevOps peut apporter à votre entreprise et vous guidera à travers tout ce que vous devez savoir pour embaucher l'ingénieur DevOps parfait pour votre entreprise.
La principale raison d'embaucher des ingénieurs DevOps est d'améliorer la productivité et les processus de vos équipes informatiques et logicielles.
L'introduction d'ingénieurs DevOps dans votre entreprise peut vous aider à :
Réduire les coûts de maintenance et de mise à niveau de l'informatique et des logiciels.
Réduire les dépenses inutiles ou excessives.
Standardiser l'exécution des processus dans l'ensemble de votre entreprise.
Répliquer et mettre à l'échelle les processus informatiques plus rapidement et plus efficacement.
Améliorer la fiabilité des processus et réduire le besoin d'intervention des ingénieurs.
Le rôle d'un ingénieur DevOps sera spécifique à chaque entreprise. Les questions spécifiques sur lesquelles un ingénieur DevOps peut travailler comprennent les questions de codage et de script liées au déploiement de logiciels ou à l'intégration et à la connexion du code, ainsi que la mise en œuvre de cadres de développement de produits tels que SCRUM.
Le rôle de votre ingénieur DevOps évoluera au fil du temps : Si vous recrutez votre premier ingénieur DevOps, le poste englobera davantage d'éléments de rapprochement de vos processus Dev et Ops. Au fur et à mesure que vos projets de développement deviendront plus avancés, le besoin d'expertise DevOps augmentera également. Cela signifie que vous devrez continuellement améliorer les compétences de votre équipe existante ou embaucher davantage de spécialistes DevOps. Au fur et à mesure que vos équipes Dev et Ops évolueront vers des équipes DevOps plus larges, ces processus fusionneront de toute façon progressivement.
En tant que communauté mondiale, nous continuons à devenir de plus en plus dépendants de l'informatique. L'émergence, la compréhension et l'utilisation continues de l'"Internet des objets" et la dépendance croissante à l'égard du "cloud" pour gérer les données et les processus en sont des exemples.
Par conséquent, la demande de compétences DevOps continue également de croître.
Un rapport de mai 2018 de Markets and Markets prévoyait un taux de croissance annuel composé de 24,9 % sur le marché DevOps entre 2017 et 2023.
Cette croissance fait de l'embauche d'ingénieurs DevOps une voie à double sens. Bien sûr, vous aurez accès à un vivier croissant de talents DevOps. Dans le même temps, les talents DevOps auront un large éventail d'opportunités d'emploi à explorer. Vous devez définir clairement les rôles DevOps dans votre entreprise et vous assurer qu'ils sont attrayants pour les talents DevOps à la recherche de leur prochain poste.
Définir clairement ce que vous attendez de vos ingénieurs DevOps est la clé de votre succès en matière de recrutement. La chose la plus importante à comprendre est que vous ne pouvez pas simplement "embaucher un ingénieur DevOps". La discipline DevOps englobe un vaste ensemble de compétences.
Un bon point de départ pour la sélection des candidats est un test de compétences DevOps afin d'identifier les candidats qui possèdent les compétences de base requises pour un rôle DevOps. Au-delà de ces compétences de base, vous pouvez définir plus précisément votre rôle DevOps par le biais de domaines de spécialisation, en fonction des besoins de votre entreprise.
Examinons les principaux domaines d'intervention de DevOps, les rôles qu'ils peuvent remplir au sein d'une entreprise et l'ensemble de compétences spécifiques qu'ils requièrent.
L'administration des systèmes (généralement appelée SysAdmin) consiste à gérer et à travailler dans des environnements informatiques multi-utilisateurs afin d'optimiser les processus et les performances. Les tâches de l'administrateur système peuvent être très variées. Traditionnellement, les aspects essentiels du rôle sont centrés sur la gestion des serveurs. Vous devez attendre de votre ingénieur DevOps qu'il construise et gère les applications, les serveurs de fichiers et l'infrastructure de soutien. Un SysAdmin peut également être impliqué dans l'automatisation de processus critiques pour maintenir la fiabilité et l'efficacité de vos systèmes informatiques.
Il peut également être amené à gérer les réseaux, les bases de données et le stockage, ainsi qu'à développer, déployer et superviser les systèmes de sécurité informatique.
Une bonne connaissance de divers systèmes d'exploitation, de la programmation informatique et des langages de codage peut également être un atout. Dans l'espace DevOps, nombreux sont ceux qui considèrent la virtualisation et les compétences en matière de logiciels en nuage comme des compétences spécifiques et indépendantes. Cependant, les recruteurs DevOps recherchent de plus en plus ces compétences dans un contexte SysAdmin. Il vaut donc la peine de rechercher des candidats possédant une telle expertise.
Pensez à inclure les compétences clés suivantes dans votre offre d'emploi. N'oubliez pas d'adapter les exigences à votre entreprise et au poste que vous cherchez à pourvoir.
Compétences requises
Installation et configuration de logiciels et de matériel.
Surveillance et maintenance des performances des systèmes.
Résolution des problèmes dans le cadre des processus DevOps.
Déploiement de la sécurité des systèmes tels que les contrôles, les sauvegardes et les pare-feu.
Mise à niveau continue des systèmes et des processus afin d'optimiser les performances.
Gestion des réseaux, y compris LAN et WAN.
Création de scripts dans les langages de programmation appropriés.
La virtualisation est un élément essentiel du DevOps et se concentre sur la création de logiciels et l'utilisation de processus pour virtualiser les serveurs et d'autres composants de processus. Par nature, le travail de virtualisation s'effectue sur le cloud. En tant que tel, votre ingénieur DevOps doit être compétent pour travailler dans divers domaines, tels qu'Amazon Web Services (AWS), GitHub et Google Cloud, et sur des types de projets spécifiques tels que l'automatisation des questions et réponses.
Dans le cadre de la virtualisation, vous pouvez exiger d'un candidat qu'il dispose de compétences plus spécialisées dans un domaine particulier, comme la virtualisation des serveurs ou la virtualisation des réseaux.
L'objectif de la virtualisation est toujours d'en faire plus avec moins. Par conséquent, vous recherchez des candidats qui peuvent prouver leur capacité à augmenter la capacité et les performances, à réduire les inefficacités et les coûts, et à rationaliser les processus, tout cela en utilisant des techniques de virtualisation.
Utilisez les compétences de virtualisation ci-dessous dans votre offre d'emploi :
Compétences requises
Concevoir et déployer la virtualisation sur diverses plates-formes.
Identifier les possibilités d'utiliser la virtualisation pour améliorer les processus et l'efficacité.
Installer, configurer et gérer les composants de l'environnement de virtualisation.
Évaluation continue de l'infrastructure de virtualisation.
Déployer des systèmes de sécurité pour protéger l'environnement de virtualisation.
Configurer, administrer et effectuer des tâches telles que la sauvegarde et la récupération.
Les équipes chargées des réseaux et du stockage sont responsables de la mise en place, de la gestion et de la maintenance des réseaux informatiques de votre entreprise. Les compétences en gestion de réseau sont donc cruciales pour un ingénieur DevOps. Cependant, en recrutant les meilleurs professionnels DevOps pour votre entreprise, vous recherchez plus qu'un gestionnaire de réseau compétent. Si la gestion de réseau est une compétence cruciale, c'est aussi une compétence de base dans un contexte informatique.
Votre entreprise aura besoin de certaines choses en matière de gestion de réseau et de stockage. Vous souhaitez toujours que ces aspects soient performants, fiables et évolutifs. Lorsque vous recrutez des ingénieurs DevOps possédant ces compétences, concentrez-vous sur le "comment" plutôt que sur le "quoi".
Si votre entreprise utilise des serveurs physiques, vous aurez besoin de candidats qui ont des compétences et de l'expérience dans le travail avec des centres de données physiques. En revanche, si votre entreprise utilise des serveurs en nuage, vous rechercherez un gestionnaire de réseau compétent pour travailler dans l'environnement en nuage que vous utilisez, comme par exemple Google Cloud.
Vous ne voulez pas seulement un ingénieur DevOps qui soit compétent en gestion de réseau et de stockage. Vous en voulez un qui peut montrer qu'il est prêt à repousser les limites et à influencer votre entreprise.
Compétences requises
Installer et configurer des réseaux et des systèmes.
Dépanner les problèmes lorsqu'ils surviennent.
Faire la maintenance du matériel et des logiciels existants, et les mettre à niveau lorsqu'ils sont obsolètes.
surveiller les réseaux et les systèmes afin d'identifier les possibilités d'amélioration
Administration et soutien continus des réseaux et du stockage.
Pour réunir les disciplines du développement et des opérations, les compétences en matière de codage sont essentielles. Avoir ces compétences permettra à un ingénieur DevOps de travailler efficacement au sein des deux équipes. Au fur et à mesure que votre utilisation des DevOps évolue, cela continuera à rendre les processus plus efficaces et à réduire les délais de déploiement.
Posez-vous les questions suivantes lorsque vous définissez les compétences de codage que vous attendez d'un ingénieur DevOps :
Est-ce que je souhaite engager un ingénieur DevOps spécialisé dans un langage de codage spécifique pour correspondre au cadre commercial actuel et aux langages de codage que nous utilisons ?
Est-ce que je veux engager un ingénieur DevOps spécialisé dans un langage de codage spécifique que nous souhaitons utiliser ?
Est-ce que je veux engager un ingénieur DevOps avec des compétences dans plusieurs langages de codage pour conseiller et diriger le langage pertinent à utiliser dans les développements et projets futurs ?
La réponse à ces questions déterminera les compétences de codage que vous rechercherez lors du recrutement d'un ingénieur DevOps.
Utilisez les compétences requises ci-dessous dans votre offre d'emploi :
Compétences requises
Construire, tester et déployer des logiciels et des applications.
Migration du code des environnements de test vers les environnements de production.
Identification et correction des bugs.
Compétence dans plusieurs langages de codage.
Connaissance pratique de votre environnement serveur spécifique.
L'automatisation consiste à mettre en place des systèmes et des processus afin de réduire le temps et les ressources humaines nécessaires à l'exécution des tâches. L'automatisation est donc l'un des éléments les plus importants du DevOps, si ce n'est le plus important. L'ensemble de la culture et de la méthode de travail DevOps vise à uniformiser votre entreprise et à en tirer le plus grand nombre d'avantages possibles, et l'automatisation y jouera un rôle considérable.
La recherche de compétences dans l'utilisation d'outils d'automatisation nécessitera une approche similaire à l'embauche d'un candidat possédant un ensemble spécifique de compétences en matière de codage. Vous devez savoir ce que vous attendez du candidat.
Utilisez-vous déjà l'automatisation dans vos processus informatiques et souhaitez-vous qu'un ingénieur DevOps vous rejoigne et travaille avec ces outils ? Ou cherchez-vous à passer à l'automatisation et avez-vous besoin d'un ingénieur DevOps pour devenir votre leader interne à mesure que vous le faites ?
Recherchez des candidats qui peuvent démontrer des compétences soit dans l'utilisation des outils d'automatisation que vous utilisez déjà, soit dans l'introduction et le déploiement de ces outils dans votre entreprise.
Utilisez les compétences requises ci-dessous dans votre offre d'emploi :
Compétences requises
Expérience spécifique de l'utilisation d'outils d'automatisation pertinents.
Identification des outils à utiliser pour des tâches spécifiques.
Identification des possibilités d'utiliser l'automatisation pour améliorer les processus et l'efficacité.
Architecture d'automatisation et tests de performance.
Déploiement et gestion de la configuration.
Dépannage des problèmes d'automatisation.
La sécurité et la conformité sont des aspects critiques de toute infrastructure informatique. L'un des plus grands défis auxquels sont confrontées les entreprises est que les équipes Dev et Ops sont souvent détachées des équipes de sécurité. Alors que de plus en plus d'entreprises s'orientent vers le travail dans un environnement DevOps intégré, ce défi devient encore plus aigu.
Comme DevOps met l'accent sur la vitesse et l'efficacité, il est typique que le rythme du travail DevOps soit bien en avance sur celui des équipes de sécurité. Lorsque cela se produit, cela peut entraîner des retards car les spécialistes de la sécurité vérifient et contrôlent le code. En retour, cela ralentit les projets DevOps, ce qui va à l'encontre de l'objectif visé par l'adoption de cette méthode de travail en premier lieu.
C'est pourquoi vous avez tout intérêt à recruter un ingénieur DevOps compétent en matière de sécurité informatique. Recherchez un ingénieur ayant les compétences nécessaires pour mettre en œuvre et maintenir la sécurité à toutes les étapes de l'environnement et du cycle de vie DevOps, de la création au déploiement et à la maintenance à long terme.
Utilisez les compétences requises ci-dessous dans votre offre d'emploi :
Compétences requises
Expertise dans le déploiement de programmes antivirus et de logiciels malveillants, y compris la manière de maintenir les performances informatiques lorsque ces programmes sont en cours d'utilisation.
Compréhension et utilisation des méthodologies et outils d'évaluation des risques.
Conception et déploiement de réseaux, d'applications et d'architectures sécurisés.
Récupération et sauvegarde.
Connaissance spécifique de la sécurité des logiciels en nuage.
Utilisation de l'automatisation dans un contexte de sécurité informatique.
Les tests et les diagnostics vont souvent de pair avec les outils d'automatisation. Si un candidat parle de l'utilisation d'outils d'automatisation pour faciliter ses processus de test, vous pouvez en explorer les raisons. De même, les candidats qui effectuent des tests indépendamment des outils d'automatisation peuvent être précieux. Découvrez pourquoi ils adoptent des méthodes de test originales et conçues par eux-mêmes, et vous en apprendrez beaucoup sur leurs compétences.
Les meilleurs environnements DevOps privilégient la prévention plutôt que la guérison. Lors de votre recrutement, recherchez ceux qui peuvent démontrer les compétences nécessaires pour garantir la sécurité et la fiabilité des versions. Si une personne est exceptionnelle en matière de diagnostic, il convient de s'interroger sur la fréquence à laquelle le candidat doit utiliser ces compétences. Il est essentiel d'avoir des compétences en matière de diagnostic, mais votre priorité doit être de veiller à ce que les problèmes ne surviennent pas en premier lieu.
Interrogez les candidats sur les processus de test et la façon dont ils s'intègrent aux autres éléments de l'environnement DevOps pour comprendre comment ils apporteront de la valeur à votre entreprise grâce à leurs compétences.
Utilisez ces compétences requises dans votre offre d'emploi :
Compétences requises
Compétences spécifiques en matière de diagnostic et de test liées aux logiciels, systèmes et plateformes que vous utilisez.
Utilisation et déploiement d'outils d'automatisation pour les tests et les diagnostics.
Dépannage des problèmes une fois diagnostiqués.
Identification des problèmes à travers de multiples aspects de l'environnement DevOps.
Mise en œuvre de systèmes permettant d'éviter que les problèmes ne se répètent.
Il existe généralement cinq rôles spécifiques associés aux rôles DevOps. Il est courant de trouver un poste global que vous pourriez utiliser pour superviser l'ensemble de votre processus et de votre culture DevOps.
Le ou les rôles que vous choisissez de recruter dans votre entreprise dépendent de plusieurs facteurs :
La façon dont vous évoluez vers le travail dans un environnement DevOps.
Les lacunes en matière de compétences et d'expérience dans votre processus DevOps.
Le type de personne que vous recherchez et la nature du poste disponible.
Explorons ce que chaque rôle DevOps implique, pour vous aider à comprendre ceux que vous pourriez chercher à recruter.
Le rôle d'évangéliste DevOps est celui qui chapeaute le processus et l'environnement DevOps dans votre entreprise. L'évangéliste DevOps peut avoir un rôle de leadership. Vous pouvez demander à votre collaborateur de travailler sur chaque volet de DevOps, en favorisant l'excellence au sein de votre équipe.
Selon le degré d'adoption de DevOps par votre entreprise, un évangéliste pourrait être la première personne que vous embauchez pour commencer à construire votre environnement DevOps. Votre évangéliste pourrait jouer un rôle essentiel dans le rapprochement de vos équipes Dev et Ops existantes. Il peut aussi être la dernière personne que vous engagez une fois que vous avez mis en place l'infrastructure plus large de votre équipe DevOps.
L'approche optimale consistera généralement à les embaucher en premier, car ils peuvent définir la norme et le ton de DevOps dans toute votre entreprise dès le premier jour. Utilisez les listes de contrôle ci-dessous pour vous aider à décider quand, et quand ne pas, embaucher un évangéliste DevOps.
Quand embaucher un évangéliste DevOps ?
Si votre entreprise s'est engagée à créer une culture DevOps.
Si vous avez des besoins de formation autour de DevOps et que vous devez donner aux équipes les moyens d'atteindre un ensemble spécifique d'objectifs.
Si vos équipes Dev et Ops actuelles sont brisées ou inefficaces, et que vous avez besoin de réimaginer leur rôle dans votre entreprise.
Si vous avez besoin d'une aide à long terme pour identifier et développer des talents dans les cinq principaux rôles et spécialisations DevOps.
Quand ne pas embaucher un évangéliste DevOps ?
Si vous n'êtes pas certain du rôle que DevOps doit jouer dans votre entreprise.
Si vous obtenez déjà d'excellents résultats de vos équipes Dev et Ops, et qu'elles minimisent déjà les inefficacités dans leur façon de travailler.
Si vous avez déjà des spécialistes DevOps en place qui fournissent d'excellents résultats et qui rendent compte à leurs responsables.
Si vos managers dans chaque domaine spécifique du Dev et de l'Ops collaborent brillamment et font un excellent travail avec leurs équipes.
Dans un contexte DevOps, le responsable de la mise en production (release manager) signe tous les documents avant que votre équipe ne passe à l'étape suivante d'un projet. Il sera impliqué dans tout, depuis la signature du plan et du calendrier de développement jusqu'à l'accord final sur la manière dont un projet sera déployé et maintenu à long terme.
En raison de la nature de son rôle, le responsable de la mise en production doit être compétent en matière de codage et de test, tout en ayant des connaissances pertinentes en matière d'assurance qualité. Le rôle de votre gestionnaire de versions peut consister à "casser" quelque chose pour vérifier qu'il est suffisamment bien construit avant de passer à l'étape de développement suivante.
Lorsque vous recrutez un ingénieur DevOps pour la première fois, vous pouvez d'abord embaucher un ingénieur de mise en production. À plus long terme, vous pourrez avoir une équipe d'ingénieurs plus importante qui rendra compte au responsable des mises en production.
Bien que chaque rôle DevOps soit important, étant donné le rôle que joue l'automatisation dans les processus DevOps réussis, ce rôle pourrait être le plus critique.
Vous avez besoin de votre architecte en automatisation pour, entre autres :
Trouver des opportunités d'utiliser l'automatisation pour améliorer l'efficacité des processus.
Trouver les meilleurs outils d'automatisation à utiliser pour atteindre vos objectifs, en sachant que les meilleurs outils peuvent être différents pour des processus spécifiques.
Faciliter le développement d'une automatisation personnalisée.
Les automatisations spécifiques peuvent être les suivantes
La livraison de produits entre différents outils d'automatisation
Les fonctions de communication et de gestion de projet.
Les tâches répétitives.
La mise à jour et la maintenance du serveur.
Si vous avez un besoin spécifique d'un spécialiste de l'automatisation plus compétent dans une tâche que dans une autre, veillez à l'indiquer dans votre offre d'emploi.
Le rôle de développeur de logiciels est celui qui se rapproche le plus de ce qui pourrait traditionnellement exister dans des environnements distincts de développement et d'exploitation.
Vos développeurs de logiciels seront responsables de l'écriture du code et de l'intégration des différents éléments de vos projets DevOps.
Dans un environnement DevOps, les développeurs ont des responsabilités supplémentaires en matière de tests et de maintenance continue. Lorsque vous recrutez un développeur de logiciels pour votre équipe DevOps, vous devez être clair sur ce que le rôle impliquera. Certains développeurs auront des compétences limitées en matière de tests et d'évaluation critique de leur travail. Il s'agit néanmoins d'une compétence nécessaire pour un développeur qui souhaite évoluer dans l'espace DevOps.
Votre responsable de l'assurance qualité (QA) travaillera souvent en collaboration avec vos ingénieurs de publication ou votre responsable de publication. Dans les premiers temps de l'adoption de DevOps dans votre entreprise, il se peut que ce soit la même personne qui assume ces rôles.
Cependant, à long terme, vous cherchez à ce qu'elle joue le rôle d'un utilisateur final. Vous voulez qu'un responsable de l'assurance qualité soit impitoyable dans la recherche de problèmes potentiels et d'opportunités d'amélioration. Vous pouvez également les utiliser pour rechercher des améliorations possibles dans le code. C'est pourquoi certaines entreprises ont souvent des spécialistes de l'assurance qualité qui travaillent à la fois dans un contexte de back-end et de front-end.
Le rôle de l'ingénieur en sécurité dans le cadre du DevOps est essentiel. Vos équipes de sécurité auront une double approche.
Tout d'abord, elles travailleront aux côtés de vos spécialistes de l'automatisation et de vos développeurs de logiciels. Vos ingénieurs en sécurité joueront un rôle clé en veillant à ce que les constructions logicielles soient sécurisées pendant que le travail est en cours. Cette approche permet de poursuivre efficacement les projets et d'éviter les longs délais d'attente pour l'approbation.
Vos ingénieurs en sécurité travailleront également de manière indépendante pour la maintenance continue, les tests et la résolution des problèmes ou des failles de sécurité.
Un ingénieur en sécurité doit être proactif et capable d'évaluer son travail, ses systèmes et ses processus afin d'en déceler les faiblesses.
Lorsque vous rédigez des questions d'entretien, vous devez les adapter au rôle spécifique de DevOps que vous cherchez à recruter.
Les cinq questions suivantes abordent des points importants pour toutes les fonctions DevOps à un niveau élevé. N'hésitez pas à les affiner pour approfondir les spécificités de votre poste vacant si nécessaire. Nous avons inclus une explication de la raison pour laquelle chaque question est importante et ce qu'il faut rechercher dans les bonnes réponses pour vous aider à identifier les meilleurs candidats.
Comment intégrez-vous la sécurité dans vos processus DevOps ? Comment soulignez-vous l'importance de la sécurité auprès des membres de l'équipe qui ne connaissent pas la technologie ?
L'objectif de DevOps est de rendre les choses plus efficaces. Cependant, en essayant de faire les choses plus rapidement, on augmente considérablement les risques de problèmes. Selon Digital Guardian, le coût moyen d'une violation de données pour les entreprises américaines est de 8,19 millions de dollars.
De nombreuses entreprises ne peuvent tout simplement pas se permettre des failles de sécurité, alors que toutes les entreprises devraient vouloir les éviter.
Demandez à vos candidats comment ils envisagent la sécurité dans leur travail et obtenez l'adhésion de ceux qui ne sont pas directement concernés.
Les meilleurs candidats seront en mesure de vous donner une poignée d'exemples spécifiques auxquels ils ont été confrontés au cours de leur carrière jusqu'à présent. Toute bonne réponse concernant la sécurité DevOps inclura des détails sur les défis auxquels ils ont été confrontés, la façon dont ils ont trouvé des solutions, et peut-être même plusieurs tentatives infructueuses avant de trouver quelque chose qui fonctionne.
Il est important que vous obteniez ces exemples du monde réel afin que vous puissiez remettre en question et vérifier l'expérience de vos candidats plutôt que leurs seules connaissances théoriques.
Quelle est l'automatisation la plus difficile que vous ayez jamais mise en œuvre ? Qu'est-ce qui l'a rendue difficile ?
L'automatisation est un pilier important de DevOps. La nature même de l'automatisation signifie que les choses vont mal se passer. Si un candidat n'a pas été confronté à un défi lors de l'automatisation d'un processus, il n'est probablement pas quelqu'un qui repousse les limites, et il ne sera pas utile à votre entreprise.
Recherchez des candidats qui répondent avec une passion pour l'automatisation et qui parlent de la recherche active d'opportunités d'automatisation de processus compliqués. Il est également utile de poser des questions sur les processus que les candidats choisissent de ne pas automatiser et d'en explorer les raisons. Outre l'expérience des candidats en matière de mise en œuvre de l'automatisation, vous devriez également leur demander comment ils ont fait face à des défis centrés sur les personnes dans le passé. Une bonne question, par exemple, pourrait être de savoir comment ils ont convaincu leur patron qu'il valait la peine d'investir du temps et des ressources dans un projet d'automatisation spécifique.
Une réponse solide comprendra non seulement des références à différents outils d'automatisation, mais aussi aux objectifs de l'entreprise que ces automatisations ont servis. Idéalement, le candidat inclura dans sa première réponse les raisons qui l'ont poussé à utiliser un outil spécifique plutôt qu'un autre, mais il se peut que vous deviez le presser sur ce point vous-même.
Parlez-moi d'un script que vous avez développé dans le passé pour améliorer les opérations, pourquoi vous l'avez développé et son impact sur les opérations.
Les meilleurs ingénieurs DevOps ne se contentent pas d'écrire des scripts et du code. Ils produisent des idées de scripts pour améliorer les opérations, rationalisent la façon dont ces scripts amélioreront les processus, et prennent la tête de l'écriture et de la mise en œuvre de ces scripts.
Vous pouvez également demander aux candidats comment ils ont adapté une idée d'un collègue et contribué à l'améliorer. La collaboration et la mise au point sont des qualités importantes dans ce domaine.
Les bons candidats répondront à cette question en mettant clairement en évidence le problème qui les a incités à explorer les possibilités d'amélioration. Les meilleurs candidats parleront en termes simples, sans jargon, et expliqueront comment les décisions ont été prises dans le cadre du projet. Méfiez-vous des candidats qui semblent suggérer et mettre en œuvre des scénarios et des idées simplement parce qu'ils le peuvent, mais sans avantage ou objectif spécifique. Cela peut s'avérer coûteux pour votre entreprise.
Gardez à l'esprit que vous souhaitez obtenir des détails spécifiques et quantifiables à chaque étape de cette question. Si l'objectif était de gagner du temps ou de l'argent, par exemple, combien cela a-t-il permis d'économiser ?
Parlez-moi d'une version qui a mal tourné. Comment avez-vous stabilisé le problème ? Qu'avez-vous appris pour la prochaine fois ?
Dans le domaine du DevOps, il arrive que les choses tournent mal. Vous n'êtes pas intéressé par la raison pour laquelle le problème s'est produit, car vous en aurez une idée lorsque le candidat vous dira ce qu'il ferait différemment la prochaine fois.
Vous serez attentif à la capacité des candidats à trouver des solutions et à collaborer avec d'autres personnes pour y parvenir.
Un ingénieur DevOps expérimenté aura plusieurs exemples de choses qui ont mal tourné. Les meilleurs candidats auront une attitude positive, même face aux problèmes les plus graves, et parleront avec passion de la recherche de solutions.
Utilisez les réponses des candidats pour approfondir et poser des questions sur la façon dont l'apprentissage d'un problème spécifique a contribué à faire d'eux un meilleur ingénieur DevOps.
Comment mesurez-vous votre réussite en tant qu'ingénieur DevOps, individuellement et au sein d'une équipe ?
Au cœur de DevOps, il y a l'optimisation continue et le désir incessant de s'améliorer. Une personne qui pense qu'un jour viendra où elle n'aura plus besoin de mesurer son succès ou de suivre ses améliorations n'est pas adaptée au métier d'ingénieur DevOps. Beaucoup d'individus et d'entreprises dans ce domaine vivent selon le mantra simple de s'améliorer de "1% chaque jour".
Recherchez des ingénieurs DevOps avec un état d'esprit similaire. Comme pour toutes les questions que vous posez, vous pouvez utiliser la réponse comme un moyen d'approfondir et de rechercher des détails. Les meilleurs candidats vous donneront une réponse nuancée qui parlera des objectifs spécifiques de chaque projet comme étant la clé du succès.
Les salaires des ingénieurs DevOps peuvent varier considérablement. Comme pour tout emploi, les attentes salariales varient en fonction de plusieurs facteurs, notamment le lieu de travail et le niveau de compétence et d'expérience recherché. Le tableau ci-dessous, avec les données récentes de Neuvoo (consulté en juin 2020), met en évidence le salaire auquel vous pouvez vous attendre pour une variété de rôles DevOps à différents niveaux.
Rôle DevOps | Salaire d'entrée | Salaire moyen | Salaire le plus élevé |
Ingénieur DevOps - Général ( ) | $78,006 | $135,000 | $200,000 |
Évangéliste DevOps* ( ) | N/A | $159,109 | N/A |
Responsable de la mise en production ( ) | $18,525 | $148,200 | $165,760 |
Expert en automatisation ( ) | $16,770 | $115,000 | $195,000 |
Développeur de logiciels ( ) | $36,817 | $102,505 | $168,752 |
Ingénieur en assurance qualité ( ) | $35,685 | $88,068 | $149,716 |
Ingénieur en sécurité ( ) | $40,000 | $125,050 | $195,000 |
*Données de Paysa, car pas de données détenues par Neuvoo.Statistiques correctes au 3 juin 2020.
Embaucher des ingénieurs DevOps dans votre entreprise pour la première fois est une étape incroyablement excitante à franchir. Lorsque vous comprenez l'impact que peut avoir DevOps sur votre entreprise, vous êtes dans une position fantastique pour commencer à recruter des talents DevOps.
Vous devez comprendre à quel point la discipline DevOps peut être complexe et étendue. Il ne suffit pas de dire "Nous devons embaucher des ingénieurs DevOps". Votre processus de planification du recrutement doit détailler ce que, et surtout, qui vous devez intégrer dans votre entreprise pour commencer à construire votre environnement DevOps.
N'oubliez pas que de nombreux ingénieurs DevOps sont à la recherche de postes. De même, le volume des entreprises qui recrutent pour de tels postes est en augmentation. Vous devez donc vous assurer d'être une proposition attrayante pour les talents DevOps. Soyez clair sur ce que vous recherchez, et démontrez pourquoi un candidat avec un ensemble de compétences en demande devrait choisir votre entreprise en tant qu'employeur.
Créez des tests de recrutement en quelques minutes pour évaluer les candidats, gagner du temps et recruter les meilleurs talents.
Pas de spam. Désabonnez-vous à tout moment.
Nos tests de sélection identifient les meilleur·e·s candidat·e·s et rendent vos décisions d’embauche plus rapides, plus simples et impartiales.