Les joons sont-ils si bons?

Préambule


Cet article est une analyse d'un autre article: si vous n'embauchez pas le Jones, alors vous ne méritez pas les seigneurs


Il convient de mentionner tout de suite que je n'ai aucune idée de ce qu'il y a et comment dans Netflix. C'est devenu une honte pour le bon sens et la logique, sur lesquels l'auteur se moque si moqueusement tout au long de l'article.


Si possible, j'ai laissé le design original et noté mes commentaires séparément.


Eh bien, il a également laissé le titre jaune, le modifiant un peu.


Allons-y .




Permettez-moi de vous raconter l'histoire d'une entreprise très prospère qui a fait une grosse erreur stupide:


Nous n'engageons pas de programmeurs juniors et de stagiaires ... Si vous n'avez pas de chiot, vous n'avez pas à nettoyer les flaques.
--Netflix

Commentaire Le titre est jaune et l'introduction indique que l'essence de l'erreur et le déclin rapide de cette société seront révélés davantage. Pas vraiment.


J'ai été complètement étonné de voir comment quelque chose d'entreprise a réussi à présenter les chiots sous un jour négatif, et même quelqu'un l'a convaincu. Les chiots sont les créatures les plus propres de la Terre, vivant une joie moelleuse! Rayons de lumière dans un monde solitaire. Mais passons au point.


Commentaire Les chiots ne peuvent pas rester propres et manger seuls.


De nombreuses entreprises ont suivi cette stratégie «n'embaucher que des seniors». Ils le justifient ainsi:


  • Nous n'avons ni le temps ni les ressources pour embaucher des programmeurs juniors; nous développons trop vite.
  • Notre entreprise peut se permettre des personnes âgées, il n'y a donc pas besoin de joons.
  • Au stade actuel, nous ne pouvons pas nous permettre d’erreurs. Les enjeux sont trop importants.
  • Notre processus offre aux employés une plus grande autonomie. Nous ne sommes pas prêts à tenir les jones par la poignée, car ils en ont besoin.
  • Nous voulons jeter les bases du produit avant de commencer à embaucher des employés inexpérimentés.

Le message est que les programmeurs juniors présentent un risque, une mesure que l'entreprise prend soit par sentiment de dette publique, soit par manque de budget.


Commentaire Il était toujours intéressant de savoir quel doigt aspirait ce qui n'était pas dans la phrase d'origine. Qu'en était-il de la dette et du budget? Nous parlons de la distraction des développeurs seniors: au lieu de créer un produit, ils formeront (réviser, expliquer, guider, réparer, etc.) les développeurs juniors. C'est-à-dire un gain de temps stupide pour les développeurs seniors.


Il s'avère que d'autres entreprises doivent pouvoir se permettre des résultats de bienfaisance et de second ordre, mais certainement pas nous.


Commentaire Pas le fait que d'autres peuvent aussi se le permettre. Ils pensent simplement qu'ils le peuvent. Après tout, personne n'a mené d'expériences, du moins je n'en ai pas entendu parler.


Soit dit en passant, aux États-Unis, il y a plus de 100 000 sociétés informatiques, et je n'ai pas entendu quelque chose pour qu'au moins un PDG dise, "pensez, erreurs!" ou "il faudrait réduire le budget supplémentaire quelque part". Alors attention, organisations, où "l'entrée est interdite au mois de juin"! Peu importe comment vous voyez vos avantages, peu importe comment vous justifiez votre piratage de la vie, la réalité est que vous avez inventé tout cela pour vous-même. Il n'y a aucun avantage concurrentiel à se débarrasser du mois de juin. Et vous venez de montrer au monde votre gestion des problèmes.


Commentaire Jusqu'à présent, rien ne prouve que ces 100 000 sociétés informatiques représentent un environnement de développement efficace, plus efficace que Netflix. Tout cela jongle entre spéculation et émotions.


L'hostilité envers les développeurs juniors est un moyen facile de repérer une culture d'entreprise toxique.
- April Wensel (@aprilwensel) 1 août 2017

L'hostilité envers les jeunes programmeurs est un signe clair d'une culture d'entreprise toxique.

Commentaire Où est l'hostilité? Personne ne dit que les juniors sont ennemis. Ils ne sont tout simplement pas embauchés. Et n'embauchent toujours pas, par exemple, des serruriers et des artistes. Faire preuve d'hostilité aussi? C'est ce qu'on appelle la «substitution de concepts».


La façon dont vous embauchez et gérez les programmeurs juniors est un indicateur indirect important de la santé de votre organisation, de votre gamme de produits et de votre culture interne. Les personnes âgées y prêtent attention. Et si cela seul ne semble pas suffisamment convaincant, alors l'embauche d'un nombre équilibré de programmeurs juniors offre également des avantages financiers.


Commentaire Appliquons cette logique aux bibliothécaires non embauchés et comprenons l'absurdité du raisonnement logique.


Prévention des problèmes


Si vous refusez les programmeurs juniors parce qu'ils «créent des problèmes», vous envoyez automatiquement un message important à vos employés sur la culture d'entreprise: les erreurs ne sont pas autorisées. Vous créez l'image d'une entreprise qui licencie quelqu'un chaque fois que le serveur tombe en panne. Peu importe combien vous payez, personne ne veut travailler dans un environnement qui ne donne pas confiance en l'avenir. Et les tentatives d'intimidation des programmeurs pour qu'ils ne commettent pas d'erreurs multiplient une culture de peur et de menaces, qui affecte de manière catastrophique la santé psychologique et la productivité.


Commentaire Encore une stupidité logique. Tout le monde a tort. Seul un idiot peut dire le contraire. La seule question est de savoir qui les rend plus nombreux et qui est en mesure de les corriger le plus rapidement possible. Et puis aussi pour les empêcher à l'avenir. Par conséquent, des questions sur les «messages» laissent la conscience des inventeurs. Du fait que quelqu'un n'est pas embauché, cela ne suit pas du tout, à cause de quoi les gens sont licenciés. Eh bien, les passages sur l'intimidation, la santé psychologique et plus sont tout simplement déroutants.


Vous pourriez faire valoir que cette attitude encourage les programmeurs à être prudents et à créer des processus de protection contre les erreurs: par exemple, les tests automatiques, l'assurance qualité, le basculement, la protection d'accès et les modifications de code réversibles. Mais cette théorie met la charrue avant le cheval. Si la politique de l'entreprise encourage la création d'une telle assurance et que l'entreprise elle-même fournit aux programmeurs suffisamment de temps et de ressources pour cela, alors une culture d'irrecevabilité des erreurs n'est pas nécessaire et inutile; la plupart des problèmes seront détectés bien avant la production. Et chaque programmeur, qu'il soit junior ou senior, préfère un environnement dans lequel des processus fiables protègent contre les erreurs catastrophiques.


Commentaire Sur la base de prémisses erronées, vous pouvez obtenir des conséquences arbitrairement terribles.


Et qu'en est-il des erreurs qui traversent toutes les haies établies? Considérez-les comme de précieuses opportunités pour renforcer votre défense. Les programmeurs plus jeunes, il faut le reconnaître, ouvrent généralement de telles opportunités plus rapidement que les seniors. La question est donc: préférez-vous déboguer vos processus tôt ou tard? "Jamais" est bon, comme le confirmera tout programmeur expérimenté. Si quelque chose peut mal tourner, tôt ou tard, ça ira. Aucun stock d'expérience n'empêchera l'erreur humaine.


Commentaire Oui, amenons le singe au réacteur nucléaire et voyons à quel point les systèmes de sécurité sont fiables. Eh bien, pour ouvrir rapidement la défense. Je commence déjà à m'inquiéter des capacités mentales de l'auteur.


Bien sûr, vous aurez besoin de programmeurs seniors et de leads d'opérations pour jeter les bases et créer des précédents pour le cycle de développement du basculement. Personne ne propose d'embaucher uniquement des programmeurs juniors. Mais si votre bureau prend vraiment au sérieux les erreurs - en d'autres termes, les erreurs sont détectées tôt et souvent - alors les programmeurs plus jeunes seront utiles. Et tous les niveaux de programmeurs seront plus satisfaits de leur travail, car la tolérance aux pannes les libère pour créer de bons logiciels (au lieu d'éteindre constamment les incendies) et protège leurs soirées et week-ends.


Commentaire Il ne s'agit pas de peur des erreurs, mais d'efficacité et de productivité. L'auteur répète de temps en temps cette fausse construction, prouvant que tout va mal. Tout va mal, oui, mais seulement avec les locaux d'origine.


Économiser de l'argent


Selon Indeed, l'ingénieur logiciel junior moyen reçoit 55 394 $ par an, tandis que l'ingénieur logiciel senior reçoit 117 374 $ par an. Les aînés sont deux fois plus chers que le mois de juin.


Ces coûts sont souvent justifiés. Une productivité plus élevée est attendue des programmeurs plus âgés que des plus jeunes.


Commentaire Il est connu que la différence de productivité entre différents programmeurs peut atteindre jusqu'à 25 fois. Par conséquent, 2 fois à peu près n'importe quoi.


Mais ce n'est pas la fin de l'image, et vous obtiendrez un sou pour la justification irréfléchie et paresseuse des coûts accrus comme les coûts de faire des affaires.


Commentaire Même si vous embauchez des concierges pour la programmation, y compris des développeurs juniors, cela est toujours vrai, peu importe.


Tous les codes d'application ne nécessitent pas plusieurs années d'expérience pour écrire ou même pour un travail bien fait. Chaque programme a une «colle logicielle» qui relie les différentes entrées et sorties de manière tout à fait ordinaire. En fait, peu importe qui l’écrit. Vous pouvez payer 28 $ de l'heure pour écrire ce code - ou vous pouvez payer 59 $ de l'heure pour écrire le même code. D'une manière ou d'une autre, le résultat ne différera pas beaucoup. Si vous n'embauchez que des personnes âgées, vous payez exorbitant pour une quantité substantielle de travail simple.


Commentaire Si une quantité importante de travail dans l'entreprise est assez banale, alors oui. Mais il est peu probable que l'entreprise puisse être considérée comme de la haute technologie. La complexité de l'infrastructure constitue un sérieux obstacle initial auquel un développeur débutant peut ne pas être en mesure de faire face (ou faire face).


De plus, la base de code varie considérablement d'une application à l'autre et sa familiarité est un facteur clé de la productivité. Dans la plupart des cas, un programmeur junior qui a travaillé en équipe pendant six mois sera plus efficace pour faire face aux tâches qu'un programmeur senior nouvellement embauché - simplement en raison du degré de familiarité avec la logique du projet.


Commentaire Dépend de la complexité du projet. Il se trouve qu'il est plus facile de licencier et d'embaucher un bon spécialiste que d'attendre que le «junior» commence à émousser le projet.


La colle logicielle et le code spécifique au domaine mentionnés précédemment représentent au moins la moitié de l'ensemble du développement. Le reste est le code qui a vraiment besoin de l'attention d'un spécialiste senior avec un avantage pour le résultat. Mais même avec ce code, un programmeur junior peut faire un travail incroyable avec un accès suffisant aux ressources éducatives et aux conseils d'un mentor expérimenté.


Commentaire Il arrive que des champignons poussent sur la lune. Des arguments dans le style de «peut-être ainsi», bien sûr, cela peut avoir lieu, mais je ne vois aucune raison à cela.


Compte tenu de cela, une paire de programmeurs juniors et seniors travaillent généralement avec l'efficacité de deux programmeurs seniors et pour moins de 75% du coût. Si votre objectif est une productivité maximale à un coût minimum, alors une telle paire de June + Senior devrait devenir la molécule fondamentale de votre organisation.


Commentaire Ou peut-être pas.


Il convient de noter un autre facteur incommensurable: la tendance des programmeurs seniors à débattre constamment sur des sujets finalement insignifiants - sur les algorithmes, les microoptimisations et le style de code. Si l'entreprise n'embauche que des seniors et n'a pas de processus décisionnel rigoureux, alors des centaines d'heures de travail peuvent être consacrées à de tels conflits. Les développeurs juniors sont généralement privés d'un tel problème.


Commentaire Les programmeurs seniors n'écraseront pas l'eau dans le mortier, mais feront le travail. Voilà pourquoi ils sont plus âgés. Sinon, j'ai de mauvaises nouvelles pour vous: vos programmeurs seniors prétendent qu'ils sont seniors, vous feriez mieux d'embaucher plus de "juniors" pour leur payer moins de salaire, car il n'y aura aucune différence entre eux.


Développement de carrière


Si vous n'embauchez pas de programmeurs juniors, envoyez un autre message au personnel - que vous ne savez pas comment fonctionne le développement de carrière.


Parfois, lorsque les entreprises disent qu'elles n'embauchent pas de développeurs juniors, je veux les secouer par leurs sweats à capuche et crier, d'où pensez-vous que les développeurs seniors viennent?!
- Kate Heddleston (@ heddle317) 13 septembre 2018

Parfois, lorsque les entreprises disent qu’elles n’engagent pas de programmeurs juniors, je veux les saisir par les seins et crier: d’où pensez-vous que les programmeurs seniors viennent?!

Commentaire Si l'entreprise n'a pas de développeurs juniors, comment leur envoyer un signal? Dans ce cas, vous ne pouvez envoyer un signal qu'à l'extérieur. L'auteur a de nombreux problèmes avec la réception et l'interprétation du signal. Pour une raison quelconque, je reçois un signal comme celui-ci: "des spécialistes sympas travailleront à côté de vous, vous pourrez apprendre beaucoup et vous n'aurez pas besoin d'expliquer l'évidence".


Encore une fois, il ne s'agit pas de s'acquitter de la dette civique des entreprises et non de «participer au développement» de la communauté informatique. Il s'agit de transformer votre entreprise en un lieu de travail décent où les programmeurs voudront s'installer et rester assez longtemps pour apporter une contribution tangible.


Commentaire Sans bazar. Seulement pour!


J'ai entendu des programmeurs: «Fatigué de changer de titre de poste. Je veux juste rester pour toujours un programmeur senior. " Cependant, personne ne m'a encore dit: «J'espère que je ne recevrai jamais d'augmentation de salaire, je n'apprendrai rien de nouveau et ne serai pas reconnu pour mes services.» Et, curieusement, les ressources nécessaires pour soutenir à la fois les carriéristes ambitieux et les programmeurs seniors assidus mais enthousiastes sont à peu près les mêmes. Nous avons besoin de moyens de changer et de reconnaître un travail bien fait, une quantité suffisante de ressources éducatives et une variété de projets d'âges différents dans le pipeline de développement. Vous devez créer un sentiment de développement, même pour ceux qui ne sont pas intéressés par la promotion.


Commentaire Un programmeur senior est le début d'un long voyage. Et entre eux aussi, il y a des gradations. Dans tout projet complexe, un programmeur senior se développera. Dans le développement moderne, il n'y a pratiquement pas de plafond de développement.


Mais ne vous enfermez pas sur ces gars-là. Leur minorité. La plupart des informaticiens ne seront pas des programmeurs seniors avant 40 ans. Ils rêvent de devenir architectes logiciels, chefs d'équipe, directeurs techniques et fondateurs de studios. Et une entreprise qui se vante de son indifférence à la croissance de carrière se retrouvera en bas de la liste des employeurs prometteurs.


Commentaire "Se retrouve en bas de la liste" est-ce à propos de Netflix Netflix est arrivé en tête d'une nouvelle liste des «50 meilleurs endroits pour travailler pour les nouveaux papas», avec plusieurs autres entreprises technologiques de la Silicon Valley atterrissant sur la gamme et offrant une concurrence acharnée pour courtiser les pères qui travaillent .


Je ne recrute que des développeurs seniors.

L'astuce est que j'en recrute certains plus tôt dans leur carrière.
- Reginald Braithwaite (@raganwald) 17 septembre 2018

Je n'engage que des programmeurs seniors.
L'astuce est que j'engage certains d'entre eux au début de ma carrière.

Commentaire C'est l'astuce la plus impressionnante. Et je ne suis que pour ça. Ces gens décident vraiment et peuvent faire beaucoup pour l'entreprise. Cependant, il y a un petit problème: comment les trouver? Il est à peu près compréhensible de voir le «senior» dans le programmeur: la quantité de connaissances dont il dispose. Dans un programmeur débutant prometteur, vous devez regarder dans la boule de cristal et voir l'avenir. Je n'ai pas bien vu une telle approche évoluer et travailler au sein d'une grande entreprise. C'est toujours un risque et vous pouvez facilement entrer dans le lait.


L'une des phrases les plus impressionnantes qu'un programmeur puisse entendre lors de l'entretien est «Bonjour, je suis un chef d'équipe, j'ai travaillé ici pendant huit ans, en commençant par le stagiaire.» Très impressionnant et très rare. Une telle personne est extrêmement importante pour l'entreprise - il sait tout sur la gamme de produits, il a vu le code de tous les projets dans un rayon de cent mètres et il a travaillé avec tous les employés de l'entreprise. Il est capable d'offrir des innovations au sein de l'entreprise pas comme les autres. Et l'entreprise tire des dividendes indénombrables du travail de cette personne, car elle a pu comprendre comment garder son intérêt pendant huit ans - environ 1/10 de l'espérance de vie moyenne. Ceci témoigne du succès de la culture d'entreprise. C'est le signe d'un bureau dans lequel règne l'esprit de combat, dans lequel la reconnaissance trouve du travail bien fait, et des projets intéressants attendent à chaque coin de rue.


Commentaire L'une des phrases les plus impressionnantes est «nous payons un salaire formidable, vous construisez vous-même le projet à partir de zéro, invitez les bonnes personnes et utilisez les outils que vous voulez». Wow, c'est cool. Mais cela vient du domaine de la fiction. Comme ce que l'auteur a écrit.


Prétendre que «nous n’engageons pas June» est, au contraire, un aveu ouvert que l’entreprise n’est pas prête à jouer un rôle dans la carrière de qui que ce soit. Il s'agit en fait d'une démonstration de stagnation: l'entreprise veut attirer des programmeurs expérimentés et talentueux qui apporteront leur contribution pour un seul salaire. Certains accepteront de telles conditions, mais vous ne verrez pas leur meilleur travail.


Commentaire Affirmation «Affirmation» que nous n'engageons pas de jones »est, au contraire, une admission ouverte que l'entreprise n'est pas prête à jouer un rôle dans la carrière de quiconque. - Il s'agit d'une admission ouverte que l'auteur a des problèmes avec les chaînes logiques et les relations.


Cependant, si votre entreprise prend vraiment au sérieux la croissance de sa carrière, une restriction artificielle sur les programmeurs juniors ne fait que réduire la ligne de paiement de l'embauche et raccourcir le temps des employés de votre entreprise.


Commentaire Je me demande pourquoi google et facebook ont ​​une barre haute? Ils "réduisent probablement le pipeline (?) D'embauche et raccourcissent le temps des employés de l'entreprise".


Écrire un excellent logiciel


Les programmeurs juniors ont un certain nombre de traits uniques que leurs collègues plus expérimentés perdent habituellement. L'un d'eux est un optimisme clair. Un autre est la volonté de suivre le leader. Mais la caractéristique la plus importante qu'offrent les programmeurs juniors est peut-être le manque de bagages. Les programmeurs seniors ont vu l'essor et le déclin de la technologie, les échecs des projets, les équipes déchirées par des conflits internes et toute autre vie de l'industrie informatique. Ils ont accumulé de fortes convictions et tirent souvent des conclusions de grande portée, suggérant qu'un scénario de réussite (ou d'échec) se déroulera de la même manière pour un autre projet ou une autre équipe. Ce qui peut conduire à la réticence à comprendre les nuances d'un nouveau champ de problèmes.


Commentaire Que ce soit une entreprise junior. Il peut faire éclater une tonne de code bazhy cassé avec un optimisme épuré et un manque de bagages sans conclusions de grande portée. Juste un rêve!


Les entreprises si désireuses d'embaucher uniquement des personnes âgées oublient souvent que désapprendre ce qui ne s'applique pas peut prendre plus de temps que d'apprendre ce qui le fait.
- DHH (dhh) 31 juillet 2017

, , , — , .

. ( ), . , .


- — « , , , , ». — , : , , . , , , , . , . ; , ; , . , .


. . . , .


, , - . — , — , .


. , . Borland.


, , : , , .


. , . , : , .. , . . , , .


One underrated programmer attribute is the ability to write code that average or mediocre engineers can easily read, modify, and extend.
— Jamon Holmgren (@jamonholmgren) 17 2018 .

— , , .

. !


« » «», . — . , .


. , . C'est-à-dire , , , ? - , . , , . C'est-à-dire , .


: IT « » . , , . , - .


. : , , .


— , , — , . , , . . , , . — .


. , — .




Conclusions


— . — . , , , .. , .


, - — . . — .


. - . . , , . .


, . . , , Netflix , , , .


PS , ?

Source: https://habr.com/ru/post/fr425413/


All Articles