Vous êtes dirigeant ou CTO d’une startup tech et vous vous demandez comment monter votre équipe DevOps ? Avant de vous lancer dans les recrutements il faut se poser les bonnes questions : ai-je réellement besoin de compétences DevOps dans mon équipe tech ? Suis-je obligé de recruter pour en acquérir, ou puis-je faire monter en compétences un de mes devs ?
Un DevOps a deux grands objectifs :
Ces dernières années les entreprises tech investissent des centaines de milliers d’euros dans des équipes de développement. Mais, parce qu’il leur manque des compétences DevOps, leurs sites ne sont pas toujours fiables et les développeurs sont ralentis. La frustration est alors générale :
Certains signes ne trompent pas, comme les incidents en production. Est-ce que mon site est souvent down ? En cas d’incident, ai-je tous les éléments pour intervenir de manière efficace (monitoring, …) ? Est-ce que les mises en production de mon équipe tech se passent bien ? Généralement ce sont des problèmes de monitoring, de scalabilité ou de pipeline de déploiement qui sont annonciateurs d’un besoin en DevOps.
Autre question à se poser : est-ce que mes développeurs sont ralentis par leur infrastructure ? Des mises en production trop chronophages peuvent être optimisées par l’arrivée d’un Ops.
Plus les développeurs sont nombreux, plus la roadmap produit sera impactée par une mauvaise expérience de développement. Les problèmes rencontrés varient d'un projet à l'autre :
Si le lead-dev de mon équipe tech est assez expérimenté, il est probable qu’il ait déjà été confronté aux problèmes cités précédemment. Je peux donc lui laisser la main sur les sujets infra dans les premières phases de la constitution de mon équipe Ops.
Cette solution doit rester temporaire. Plus l’équipe tech grossit, plus le lead dev risque d’être accaparé par le management des dev. De plus, les outils Ops sont assez spécifiques (pas les mêmes langages utilisés, problématiques réseaux, etc.). Ainsi, plus l’équipe tech grandit, plus elle va avoir besoin d’être accompagnée sur la partie DevOps par des Ops dédiés à cela.
Si je monte mon entreprise, dois-je me poser la question DevOps dès le début ?
La maturité business du produit est effectivement un bon indicateur. Pas besoin de recruter un Ops en phase de MVP (Produit Minimum Viable), où l’objectif est de développer le plus vite possible. L'important est de prouver l'existence d'un marché.
En phase de scaling, j’ai validé un début de traction sur mon produit. Même s’il y a encore peu d’utilisateurs l’équipe de développement doit produire vite de nouvelles features pour faire la différence avec ses concurrents. Retenir les premières vagues d'utilisateurs nécessitera un code de qualité. Il faut produire vite et bien, la présence d’un Ops commence à devenir nécessaire.
En phase de business mature, le produit fonctionne bien, j’ai déjà des utilisateurs et souhaite prendre des parts de marché. Dans ce cas chaque incident va coûter très cher en termes d’image, en termes de confiance utilisateurs, et de chiffre d’affaires… C’est le moment où il faut être irréprochable, difficile de faire l’impasse sur le DevOps.
Recruter un Ops n’est pas la seule solution. Il est aussi possible de dégager du temps à un développeur interne ayant déjà quelques bases sur la partie cloud et réseau pour le faire monter en compétences sur les technologies associées. Ce fonctionnement a des avantages, mais aussi des inconvénients.
Inconvénients :
Avantages :
→ J’ai besoin d’Ops opérationnels tout de suite. Un prestataire a des profils DevOps déjà formés et le client peut choisir leur niveau de séniorité.
→ J’ai des deadlines qui arrivent vite (dans les 3 mois). Il est souvent plus rapide de trouver un prestataire que de recruter un Ops (durée du recrutement et éventuel préavis).
→ Je veux former mon équipe tech sur des technologies précises. On peut alors choisir les profils et les compétences de l'équipe externe.
→ Avoir un regard extérieur et un benchmark sur les technos/bonnes pratiques existantes. Un prestataire a une vision globale des solutions DevOps proposées sur le marché et pourra proposer la plus adaptée à l’entreprise. Il vous permettra aussi d'en savoir plus sur ce qui se fait dans les autres entreprises.
→ Je veux mettre mon infra à l’état de l’art. Le prestataire peut mettre en place des technos qui vont ensuite faciliter le recrutement d’un Ops. Monter une infra à partir de rien peut en effet effrayer certains candidats.
La présence d’Ops dans une équipe tech est un réel atout pour l’entreprise. Cela permet d’optimiser l’expérience utilisateur comme l’expérience développeurs. Avant de recruter un tel profil, il faut se poser les bonnes questions. En effet, il est parfois plus intéressant de faire monter un développeur en compétences ou de faire appel à un prestataire.
À bientôt pour le prochain article de la série Comment recruter un profil DevOps : qu’est-ce qu’un “bon” profil DevOps ?
Padok est expert en DevOps (Kubernetes, Docker, OpenShift, Google Cloud Platform, AWS, etc.) et travaille selon la méthode Agile. Plusieurs entreprises nous font déjà confiance. Pour en savoir plus, contactez-nous.