L’échelle de carrière des développeurs doit être réévaluée – tous les développeurs seniors ne doivent pas être des managers

0
95

Cet article a été initialement publié sur .culte par Nadya Primak. .cult est une plate-forme multimédia pour des histoires de développeurs inédites, où les développeurs peuvent lire du contenu sur le côté plus doux du développement et regarder des documentaires sur la technologie qu’ils aiment. Vous pouvez lire cette pièce originale ici.

L’échelle de carrière des ingénieurs logiciels est souvent déroutante et incohérente. Beaucoup de gens qui se lancent dans le développement de logiciels ont tendance à avoir une vision tunnel – ils ne pensent même pas à l’échelle de carrière parce qu’ils sont tellement concentrés sur la prochaine augmentation de salaire ou la prochaine version des fonctionnalités. De plus, ils savent qu’il y a au moins deux étapes à prendre en compte avant que quelque chose de dramatique ne se produise: les développeurs juniors deviennent des développeurs de niveau intermédiaire et les développeurs de niveau intermédiaire deviennent des développeurs seniors. Mais qu’en est-il après ça?

Beaucoup de problèmes dont se plaignent les développeurs dans le secteur de la technologie sont imbriqués dans cette question. Si vous codez depuis les quatre ou cinq dernières années de votre vie, en passant plus de temps devant l’ordinateur que devant d’autres personnes, il est probable que vos compétences sociales aient pris le dessus. Si vous êtes un extraverti ou même modérément sortant, ce ne serait probablement pas un gros problème. Mais si vous avez toujours été du genre à préférer rester à l’intérieur, ou pire, que vous préfériez la société des ordinateurs aux gens, un manager est probablement la dernière chose que vous voulez être.

Le problème de la promotion de tous les développeurs seniors auprès des managers

Malheureusement, de nombreuses organisations encouragent les développeurs seniors à des postes de direction. Il y a une supposition erronée parmi les dirigeants que ceux qui développent un haut niveau d’expertise dans leur domaine seront naturellement bons à gérer. Ils ne considèrent pas que ce qui fait un bon ingénieur logiciel et ce qui fait un bon gestionnaire peut souvent être en contradiction. Les bons développeurs sont des penseurs profonds et soucieux du détail qui s’épanouissent en résolvant des défis techniques qui sont, en fin de compte, résolus ou non. Les bons gestionnaires peuvent voir la situation dans son ensemble et réussir à résoudre des problèmes au niveau organisationnel qui nécessitent de négocier, de compromettre et parfois de confronter d’autres personnes. Ces types de problèmes ont rarement un résultat en noir et blanc, et il n’y a généralement pas de récompense tangible en dehors du bonheur relatif des employés.

J’ai vécu cette expérience de première main avec l’un de mes anciens managers. Il avait un curriculum vitae impressionnant, ayant travaillé sur le terrain de nombreuses start-ups en tant que CTO et fondateur, mais il semblait être beaucoup plus fier du fait qu’il codait depuis trois décennies. En surface, il semblait qu’il ferait un bon manager, probablement parce qu’il dégageait beaucoup de confiance.

Malheureusement, cela a fini par être tout le contraire. Il a fallu des mois pour que la direction prenne des mesures malgré les nombreuses plaintes des employés. Ce qui était particulièrement inconfortable, c’est la façon dont le gestionnaire a réagi lorsqu’il a découvert qu’il était sous le feu. À chaque 1: 1, il me demandait directement les commentaires négatifs que j’avais sur lui, comme si je le lui disais simplement en face. Il était incroyablement maladroit et a démontré un échec complet de la compréhension des normes sociales. Sans parler de l’empathie pour l’autre personne dans la pièce et de la façon dont elle pourrait se sentir lorsqu’on lui pose de telles questions. Il semblait également croire que si personne ne leur faisait part de leurs commentaires négatifs, cela devait signifier qu’il se comportait bien.

En fin de compte, ce gestionnaire particulier était beaucoup mieux adapté à la programmation en tant que contributeur individuel plutôt que de diriger une équipe.

Voies alternatives pour les développeurs seniors

Heureusement, certaines entreprises ont abandonné la promotion de tous leurs ingénieurs logiciels auprès des managers. Une autre approche consiste à donner aux développeurs de logiciels trois «pistes» différentes parmi lesquelles choisir. Les développeurs peuvent assumer diverses responsabilités de leadership en fonction de la piste. Par exemple, il y a la piste des chefs d’équipe où les ingénieurs seniors deviennent des développeurs principaux qui prennent certaines des décisions techniques les plus difficiles et difficiles pour l’équipe. Ils aident également à encadrer leurs coéquipiers, mais n’assument pas autant de fonctions de gestion qu’un directeur d’ingénierie.

Pour les développeurs qui n’ont aucun intérêt à assumer des fonctions de leadership, il y a la possibilité de devenir architecte logiciel. Ces développeurs prennent des décisions techniques qui ont généralement un impact sur l’avenir de l’entreprise et sont souvent confiés aux clés du royaume. Ces développeurs sont ceux qui comprennent comment tous les logiciels s’emboîtent et ont un modèle mental qui inclut chaque petit coin et recoin de code.

La meilleure partie de ce système à trois pistes pour la promotion des ingénieurs logiciels est qu’il existe une marge de manœuvre pour basculer entre les pistes si un développeur décide qu’il veut essayer quelque chose de différent ou s’il s’avère qu’il ne convient pas bien à la piste sur laquelle il se trouve. Cela réduit le risque de créer des gestionnaires terribles qui finissent par entraîner la démission ou la perte de motivation d’autres développeurs. La personnalité et l’attitude des managers d’une organisation influencent souvent la culture. Il est important que les dirigeants s’adressent à leurs subordonnés directs et soient en mesure d’identifier et de résoudre les problèmes lorsqu’ils surviennent.

Malheureusement, même ce système à trois voies n’est pas à l’épreuve des balles. Le favoritisme, la lenteur à déplacer les gens vers une autre voie et de mauvaises mesures de promotion peuvent même faire s’effondrer le meilleur système. Les start-ups peuvent être particulièrement vulnérables aux développeurs qui peuvent succomber au PDG et contourner les processus formels. Alors que les grandes entreprises ont tendance à avoir moins de ce problème, elles adoptent souvent des systèmes de classement qui peuvent ou non être efficaces pour identifier les meilleurs employés, en fonction de la facilité avec laquelle le système est utilisé et du nombre de personnes se trouvant entre les mailles du filet.

Muddying les eaux encore plus est le fait que les développeurs changent souvent d’emploi quand ils ne voient pas de voie à suivre dans leur entreprise actuelle. Mon premier titre officiel lorsque je me suis lancé sur le terrain était «Ingénieur logiciel». Quand j’ai déménagé à DC, il est devenu «développeur UI / UX» et j’ai négocié une augmentation de salaire assez lourde à la lumière de la différence de coût de la vie du Missouri. Le travail suivant a fini par me donner un titre senior malgré le fait que j’avais moins de 2 ans d’expérience dans l’industrie. Ils ont donné aux développeurs l’ancienneté non pas uniquement sur la base d’années d’expérience, mais sur la base du salaire de ce développeur.

Cela a conduit à une situation étrange et quelque peu inconfortable pour moi lorsque, deux emplois plus tard, je me suis retrouvé dans un titre de niveau intermédiaire. Du point de vue d’un étranger, cela ressemblait à une rétrogradation. Je ne savais pas si je devais supprimer «senior» de mes anciens postes sur LinkedIn ou si cela finirait par me faire plus de mal. Cela se produit parce qu’il n’y a pas de norme pour évaluer le niveau de compétence d’un développeur dans l’industrie, et certainement pas de norme de rémunération en fonction de ce niveau.

Une solution potentielle?

C’est pourquoi certains développeurs ont appelé à la création d’une organisation chargée de normaliser les exigences et les compétences dont les développeurs ont besoin à travers les États-Unis afin de créer des conditions de concurrence plus équitables et également un système qui permet aux développeurs de se défendre et de figurer. s’ils sont sous-payés. Contrairement à ces trois systèmes de suivi qui permettent toujours aux gestionnaires de prendre des décisions en fonction de leur propre opinion sur un développeur, une organisation commerciale pour les développeurs créerait un tiers qui tiendra les gestionnaires responsables.

Il y a certainement des problèmes potentiels qui pourraient être introduits par une organisation commerciale, mais en ce moment, l’industrie du génie logiciel est essentiellement le Far West en matière de promotions. Vous avez des développeurs avec 10 ans d’expérience payés 45K aux côtés de développeurs juniors dans des start-ups de plus de 100K.

Les gens sous-représentés dans la technologie voient toujours un écart entre leurs chèques de paie et ceux de leurs homologues blancs. Chaque fois que j’ai obtenu un nouvel emploi, une partie de moi avait l’impression d’être de retour à la case départ. Alors que la technologie devient de plus en plus complexe et que les humains en dépendent quotidiennement, il semble que le manque d’une industrie commerciale puisse non seulement être problématique mais même catastrophique.

Les normes de l’industrie technologique ont un impact sur des millions

Le fait de ne pas avoir de norme de codage pour, disons, une entreprise de médias sociaux, peut sembler sans conséquence, mais lorsque vous avez des avions d’exploitation de logiciels, des voitures et la sécurité, des vies sont en jeu. Il ne s’agit pas seulement de rendre la vie des développeurs plus facile et plus équitable, il s’agit de créer un système où la technologie peut en fait être fiable et ne pas être soumise aux caprices d’un PDG de l’entreprise qui veut économiser de l’argent en disant aux développeurs de couper les coins ronds. Les développeurs et franchement, la race humaine, mérite mieux.

Publié le 5 juillet 2020-17: 00 UTC