Table des matières[Cacher][Montrer]
L'ingénieur 10X est-il un mythe ?
La réalité est que certaines personnes sont meilleures en programmation que d'autres.
Dans mon poste précédent dans une entreprise de technologie, j'ai été impressionné par la façon dont certaines personnes de mon équipe semblent savoir tout faire.
Même pendant mon séjour à l'université, en participant à des hackathons et à des stages, j'ai pu rencontrer quelques développeurs très talentueux dont j'ai beaucoup appris.
Dans cet article, je passerai en revue certaines idées fausses que les gens peuvent avoir sur l'ingénieur 10X. Après avoir examiné ce qu'est un ingénieur 10X ne pas, nous passerons en revue certains des meilleurs conseils que je puisse vous donner pour devenir vous-même un ingénieur 10X.
Qu'est-ce qu'un ingénieur 10X ?
De nombreux développeurs discuteraient de la définition réelle d'un ingénieur 10X. Mais par souci de clarté, essayons maintenant de définir une définition simple.
Un ingénieur 10X est un développeur de logiciels capable d'être aussi productif que dix de ses pairs.
L'idée de l'ingénieur 10X est peut-être née plus tôt que vous ne le pensez.
A document de recherche à partir de 1968, appelées "Études expérimentales exploratoires comparant les performances de programmation en ligne et hors ligne", ont d'abord proposé l'idée que certains des meilleurs programmeurs exécutent un ordre de grandeur supérieur aux pires programmeurs. Bien que ce ne soit pas la définition convenue aujourd'hui, l'idée de l'ingénieur 10X s'est rapidement répandue en dehors du milieu universitaire.
Quelques années plus tard, le livre classique The Homme-mois mythique encore illustré l'idée de l'ingénieur 10X. L'auteur Fred Brooks suggère que développement de logiciels les équipes pourraient être structurées comme des équipes chirurgicales.
Dans cette équipe, vous auriez un programmeur en chef ou "chirurgien" avec des programmeurs de soutien ou des "infirmières".
Bien que cette analogie soit facile à comprendre, je pense qu'elle est un peu simpliste et dépassée lorsqu'elle est appliquée à l'état actuel du développement logiciel.
La dynamique d'équipe dans une équipe technique est très différente de celle d'un chirurgien. Cette idée d'une seule personne faisant la plupart du travail ou seulement le travail le plus difficile a déformé ce que je pense qu'un ingénieur 10X devrait être.
Erreur commune
Alors que l'idée de l'ingénieur 10X s'est répandue dans la sphère technologique, une majorité de managers interprètent souvent mal ce que nous entendons par "10X".
Une idée fausse courante est que les ingénieurs 10X produisent dix fois plus de code que leurs pairs. Ce n'est tout simplement pas vrai.
Bien qu'un ingénieur 10X puisse produire plus de code que ses collègues, la quantité n'est pas la bonne mesure. Imaginez un programmeur qui passe un millier de lignes de code à exécuter ce qui pourrait être fait en moins d'une centaine. De même, un ingénieur 10X ne code pas dix fois plus vite !
Une autre idée fausse à propos des ingénieurs 10X est qu'ils sont géniaux simplement à cause de leurs connaissances en codage. Encore une fois, c'est un autre cas où l'on regarde la mauvaise métrique.
Ce qui rend un ingénieur 10X si précieux, c'est la façon dont il ajoute dix fois plus de valeur à son équipe et à son organisation. Un ingénieur 10X est indispensable en raison de sa capacité à utiliser ses connaissances en codage et à les aligner sur les besoins de l'entreprise.
Les managers doivent rechercher des ingénieurs capables de résoudre des problèmes et de bien travailler avec les autres. Au-delà des connaissances en codage, les ingénieurs 10X devraient être en mesure d'améliorer le travail de tous ceux qui les entourent.
Cinq façons d'être un ingénieur 10x
Cette section est pour vous si vous êtes un gestionnaire à la recherche de votre prochaine embauche ou simplement un ingénieur qui aspire à devenir un ingénieur 10X.
Voici quelques-unes des principales habitudes et caractéristiques d'un ingénieur 10X :
Ils savent comment tirer le meilleur parti de leur stack technologique
Connaître vos outils est peut-être le conseil le plus évident que je puisse vous donner. Cependant, de nombreux développeurs peuvent encore améliorer leur flux de travail en apprenant à travailler efficacement.
La plupart des ingénieurs 10x avec qui j'ai travaillé connaissent le terminal. Bien que cela puisse être un peu une courbe d'apprentissage pour les débutants, comprendre comment créer des commandes shell à la volée vous aidera à faire votre travail beaucoup plus rapidement à long terme.
Les ingénieurs 10x peuvent également bénéficier d'être un peu paresseux. Laissez-moi vous dire ce que je veux dire.
Imaginez devoir exécuter manuellement une série de commandes chaque jour pour pousser de nouveaux commits en production. Un ingénieur 10x devrait éviter de faire des tâches répétitives. Ils font l'effort supplémentaire d'automatiser autant que possible la journée.
Les meilleurs ingénieurs doivent aussi penser à long terme. Si vous travaillez pour une startup, il peut être tentant de se concentrer sur des solutions simples et rapides. Cependant, ces solutions peuvent ne pas évoluer vers le bas de la ligne.
Ils n'arrêtent jamais d'apprendre
Un grand développeur n'arrête jamais d'apprendre. Les meilleurs ingénieurs trouvent du temps dans leur journée de travail chargée pour essayer de nouveaux concepts, langages et frameworks qu'ils peuvent essayer d'appliquer à leur travail.
Un ingénieur 10x doit maintenir un sens sain de la curiosité. Ils se demandent souvent : « Peut-on faire mieux ? ou "Existe-t-il un moyen plus simple ou plus efficace de résoudre ce problème."
Ainsi, un ingénieur 10x doit maîtriser l'art d'apprendre lui-même. Apprendre à apprendre est le meilleur moyen de rester à flot dans un environnement au rythme rapide.
Ils savent comment passer leur temps au mieux
Un grand ingénieur logiciel est doué pour prendre des décisions, en particulier sur ce qu'il faut faire de son temps.
Les ingénieurs 10X ont rarement besoin de travailler plus d'heures que l'ingénieur moyen. Les ingénieurs doivent savoir quand repousser et dire non à certaines demandes. Ils doivent savoir quelles tâches effectuer eux-mêmes et quelles tâches déléguer.
Les ingénieurs efficaces doivent savoir discerner si une tâche vaut la peine d'être effectuée rapidement. Un modèle mental à garder à l'esprit est le principe de Pareto.
Le principe stipule que 80 % de la valeur de votre travail provient de 20 % de vos efforts. Autrement dit, toutes les tâches ne sont pas égales.
Ils recherchent un mentorat approprié
Un grand ingénieur peut apprendre beaucoup d'un vétéran chevronné de l'industrie. Les ingénieurs 10X se retrouvent souvent à la recherche de mentorat dans et hors du travail pour approfondir leurs connaissances.
De même, les ingénieurs 10X bénéficieront d'un rôle de mentor auprès de leurs propres coéquipiers. Toute l'équipe est relevée en s'ouvrant à ses coéquipiers plus novices.
Ils comprennent le métier
En clair, le génie logiciel n'est qu'un moyen pour les ordinateurs de résoudre un problème du monde réel. Dans cet esprit, un ingénieur efficace doit devenir un expert du problème qu'il essaie de résoudre.
En tant qu'ingénieur, c'est une bonne idée de faire un effort pour comprendre l'entreprise ou l'industrie dont vous faites partie. Un ingénieur 10x devrait participer activement aux réunions avec d'autres départements.
Si l'ingénieur s'efforce de comprendre ce que font les autres départements dans le contexte de l'entreprise, il deviendra un communicateur efficace. Une communication efficace aidera à empêcher votre équipe de mal comprendre les exigences commerciales et les spécifications du projet.
Conclusion
J'espère que vous avez maintenant une image plus claire de ce à quoi ressemble un ingénieur 10X. Vous devez également comprendre ce qu'un ingénieur 10X n'est pas.
Les conseils ci-dessus ne sont, bien sûr, qu'une ligne directrice générale qui peut s'appliquer à n'importe quel rôle d'ingénieur logiciel. Si vous voulez savoir comment vous pouvez être le meilleur Ingénieur DevOps, développeur full stack ou data scientist, votre meilleure option est de trouver des opportunités d'apprendre et de construire.
Demandez-vous si votre poste actuel est un bon environnement d'apprentissage. Peut-être souhaitez-vous passer plus de temps à travailler sur des projets parallèles qui vous permettront d'explorer des technologies en dehors de votre pile technologique actuelle. Ce ne sont là que quelques-uns des conseils que vous pouvez suivre pour obtenir un avantage technologique.
Selon vous, quel est le conseil le plus utile pour les futurs ingénieurs ?
Soyez sympa! Laissez un commentaire