Je pense que l'une des raisons pour lesquelles les entreprises recherchent et apprécient davantage les personnes spécialisées remonte aux abstractions qui fuient . Le problème est qu'au cours des 30 dernières années environ, les ingénieurs logiciels ont augmenté le nombre de couches d'abstraction de manière exponentielle et autant que nous aimerions nous assurer qu'il n'y a pas d'effets secondaires, ils surgissent toujours. Et ce sont les idiosyncrasies non documentées qui ont tendance à vous attraper.
Vous pouvez peut-être commencer à utiliser rapidement les nouvelles technologies en lisant les spécifications et les exemples en ligne, mais avez-vous déjà remarqué que lorsque vous démarrez quelque chose de nouveau, vous passez 20% de votre temps à écrire du code pour une fonctionnalité et 80% de votre temps à rechercher le bug le plus étrange tu as déjà vu? Lorsque vous devenez un expert dans un domaine, cette ration passe de 20/80 à 95/5 (je compose des chiffres, mais en général, ils sont probablement proches) spécifiquement dans ce domaine. Ce qui signifie que vous pouvez fournir du travail beaucoup plus rapidement et éviter les pièges / bogues courants avant même qu'ils ne se produisent. Par exemple, plus tôt dans la journée, l'un de nos ingénieurs principaux (nouveau dans l'équipe / produit) a passé plus d'une demi-journée à rechercher un problème de corruption de pile qui m'a pris 5 minutes à identifier car il s'agissait de mon propre terrain.
En devenant un expert dans votre domaine, vous deviendrez plus visible et plus précieux pour la direction. Je ne connais pas les autres entreprises, mais dans celles où j'ai travaillé, votre rémunération (au moins en partie) dépend de l'importance de vos responsabilités. JOAT n'a généralement pas de responsabilités permanentes. Au lieu de cela, les managers les utilisent comme des ressources mobiles / interchangeables (notre VP les appelle les couteaux de l'armée suisse) qui peuvent être déplacés d'une équipe à l'autre en fonction de la demande. Vous pouvez donc rester dans l'entreprise pendant 10 ans, puis regarder en arrière et vous rendre compte que vous n'avez jamais acquis une seule responsabilité. J'ai un très bon ami (qui est également un excellent développeur C ++ / C #, mais qui est aussi un très bon JOAT car il prendra n'importe quel travail) qui a été transformé en un tel rôle. Je sais qu'il n'est pas content parce que même si j'ai un morceau très important et amusant du produit comme terrain de jeu, il est principalement un invité temporaire dans la terre de quelqu'un d'autre. Mais maintenant, il ne peut plus s'en sortir.
Cela dit, avoir les compétences de JOAT est tout aussi important, donc même si je n'essayerais pas nécessairement de me positionner comme JOAT, je pense qu'il est important de continuer à lire / étudier / apprendre de nouvelles choses parce que la technologie évolue et même si vous êtes un expert aujourd'hui, vous devrez peut-être devenir un expert dans quelque chose de complètement différent demain.