Il y a quelques années les développeurs rêvaient de devenir « chef de projet », Aujourd’hui, le nouveau poste à la mode est celui de Tech Lead. En quoi consiste-t-il ? Chaque société, voire chaque équipe, a sa propre définition. C’est pourquoi je vais essayer dans cet article de vous dresser le portrait du rôle de Tech Lead sur la base d’échanges avec d’autres collègues qui occupent le même poste.
Si les fonctions de Scrum Master, de Lead dev et de développeur full-stack, back-end ou front-end font désormais partie des équipes de développeurs, une nouvelle fonction est apparue : celle de Tech Lead.
C’est quoi un Tech Lead ?
Avant tout, il importe donc de définir ce qu’est un Tech Lead. C’est une personne qui fait partie de l’équipe de développement. Mais, au sein de cette équipe, le Tech Lead peut occuper différents rôles :
- Il doit principalement aider l’équipe à s’améliorer techniquement ;
- Et il est le garant de la qualité du code fourni par l’équipe.
Il insuffle ainsi une dynamique à l’équipe et la protège des interventions extérieures pour qu’elle puisse rester concentrée sur ses tâches. Il possède également une bonne connaissance de l’application afin de rapidement identifier certaines solutions techniques ou de bien présenter l’application à d’autres personnes.
Enfin, interlocuteur privilégié avec certains métiers, il peut par exemple promouvoir certains chantiers techniques à effectuer.
Le rôle du Tech Lead : l’amélioration continue
Pour effectuer l’amélioration continue, le Tech Lead dispose de plusieurs leviers. Le premier repose sur le partage de connaissances qui peut s’effectuer, soit en faisant du pair programming, soit via des séances dédiées avec l’équipe. Durant ces séances, le partage peut se faire sous plusieurs formes :
- Un échange sur un sujet donné en se basant sur une conférence ;
- En préparant un sujet précis ou en faisant un kata ;
- Le Tech Lead peut aussi être amené à convier des personnes d’autres équipes sur certains sujets techniques ou fonctionnels.
Qualité du code
Le Tech Lead est aussi le garant de la qualité du code fourni par l’équipe. Afin de veiller à cette qualité, il dispose de plusieurs outils.
Le premier, et le plus basique, est la code review : elle permet de s’assurer que le code fonctionne et correspond à un certain standard. Attention, je ne dis pas qu’il doit faire toutes les codes reviews.
Le second outil est beaucoup moins apprécié : il s’agit de Sonar. Via un système de règles, les pull requests ou merge requests sont bloquées lorsque les règles définies ne sont pas respectées. Ces règles peuvent aller de la couverture de test en passant par la complexité de code ou des failles de sécurité. Mais Sonar est un outil à double tranchant car il faut savoir placer les bonnes règles sinon cela devient vite compliqué à utiliser.
Environnement applicatif
Le Tech Lead doit connaître l’application sur laquelle il intervient afin de prendre les meilleurs décisions en termes d’évolution technique.
Il doit aussi connaître l’écosystème qu’il y a autour afin de bien comprendre les tenants et les aboutissants des évolutions, et pouvoir choisir la solution technique la plus adaptée.
Domaine applicatif
Il doit également connaître le domaine applicatif dans lequel il intervient afin de bien comprendre les demandes métiers au moment d’analyse. Il pourra aussi challenger ces demandes métier.
C’est pourquoi le Tech Lead est souvent un interlocuteur privilégié par ses connaissances techniques et fonctionnelles. Il peut aussi favoriser certains chantiers techniques en expliquant leurs enjeux aux autres interlocuteurs.
Protection
Autre rôle : celui de protecteur qu’il peut avoir dans certains cas. En effet, en étant un interlocuteur privilégié, c’est lui qui sera souvent contacté en cas de soucis. C’est à ce moment-là qu’il doit faire ce travail de protection vis-à-vis des différents membres de l’équipe.
Cependant, rien ne l’empêche d’échanger en aparté avec la personne fautive afin que celle-ci ne se reproduise pas.
Quelles qualités pour être Tech Lead ?
Qualités humaines
Afin d’effectuer ces différents rôles, un Tech Lead doit posséder certaines soft skills. Comme dans toute gestion de projet, il doit être un bon communicant afin de pouvoir expliquer les choses à des audiences différentes, tant techniques que fonctionnelles.
Il doit également être pédagogue afin d’accompagner la montée en compétence des personnes qui composent son équipe.
De plus, il doit être capable de prendre du recul afin d’analyser un problème ou une demande, et aussi être curieux. Cette curiosité est une qualité importante car il est important de s’intéresser à d’autres sujets afin de pouvoir les réutiliser dans son quotidien.
Enfin, la dernière qualité qui est tout aussi importante est de savoir rester humble.
Qualités techniques ou hard skills
En plus de ces compétences humaines, il lui est aussi demandé de posséder de bonnes compétences techniques ou hard skills. Pourquoi ? Pour lui permettre d’appréhender de nouveaux besoins.
Autre qualité : il doit être visionnaire pour donner une ligne directrice à long terme quant à l’application dans laquelle il intervient. Cette ligne directrice sera aussi guidée par sa bonne connaissance de la stack technique concernée, mais aussi par la veille technologique qu’il est amenée à effectuer.
Mais ce n’est pas tout. Il doit également connaître les méthodes de travail en vue de mieux appréhender la répartition du travail au sein de son équipe de développeurs.
Enfin, il ne faut pas oublier la veille technologique qui est aussi une part importante du métier. Cette veille peut se faire via des articles, des blogs… Je vous renvoie sur l’article écrit par un collègue : « Mes blogs tech à connaître, à suivre, à aimer ou à aimer détester ».
Comment devenir Tech Lead ?
La question suivante est de savoir comment devenir Tech Lead, et surtout un bon Tech Lead. Quelles formations suivre ? Quelle expérience professionnelle est-elle nécessaire ?
Pour y parvenir, il existe deux façons principales :
- En répondant à une offre d’emploi : à ce moment, on passe inexorablement par la phase entretien et, ensuite, on doit prouver nos capacités à exercer ce poste.
- L’autre voie consiste à d’être promu à ce poste par l’équipe dans laquelle on évolue. Cette seconde voix ne vous prémunira de devoir faire vos preuves dans le cas d’un changement d’équipe.
Le quotidien du Tech Lead
Le quotidien varie en fonction de chaque personne qui incarne le poste, mais aussi des attentes des managers. Afin de mieux cerner le quotidien, je vous propose de comparer l’intervention de trois différents Tech Leads.
Chez ces trois personnes, on retrouve un tronc commun à leur mission qui consiste à :
- Intervenir sur la formation de l’équipe, et à participer au design et à l’architecture de l’application.
- Analyser certains besoins métier, et relire ou écrire certains documents de spécification.
- Gérer les anomalies, ou les erreurs de conception, et leur répartition.
Viennent ensuite les points de divergence : certains sont en charge des repo git ou des usines de build. D’autres peuvent aussi devoir assurer la gestion des releases et, de manière plus globale, la gestion des environnements. Enfin, le Tech Lead peut aussi être amené à suivre le quotidien de l’équipe de développeurs.
Maintenant que ce poste vous a été présenté, êtes-vous sûr de toujours vouloir le devenir ?
Rejoignez-nous !
Meritis accorde une attention particulière au développement professionnel et personnel de ses collaborateurs. Nous les aidons à renforcer leurs compétences et leurs qualifications et les soutenons dans la réalisation de leurs objectifs professionnels, tout en continuant à évoluer au sein de l’entreprise.
Pas encore de commentaires