Le seuil d'entrée et l'environnement de travail des programmeurs ont toujours été un sujet que nous adorons discuter. Récemment, des rapports ont indiqué qu'aux États-Unis, où la technologie informatique est la plus développée, n'importe qui peut devenir programmeur. Même si vous n'avez pas suivi un cursus informatique formel ; même si vous n'avez jamais touché à un ordinateur auparavant ; même si vous avez choisi le travail de programmation uniquement pour gagner votre vie et subvenir aux besoins de votre famille, le monde des programmeurs vous accueille. Ainsi, nous ne pouvons pas nous empêcher de comparer l'environnement de travail des programmeurs étrangers, les conditions d'entrée et d'autres conditions qui nous semblent attrayantes avec les conditions des programmeurs en Chine. Mais sur quels aspects devrions-nous les comparer ?

Une feuille annonce l'automne ; beaucoup d'« experts » en informatique ne sont en réalité que des « experts en briques ».

linghu9990 a écrit dans un billet de blog :Récemment, j'ai interviewé des dizaines de candidats postulant à des postes de développement du noyau. Ces candidats venaient tous de grandes entreprises très connues dans le domaine des puces ou des systèmes d'exploitation embarqués. La plupart d'entre eux affirmaient avoir au moins dix ans d'expérience dans le développement du noyau. Leurs CV semblaient impressionnants, remplis d'expériences de projets pertinentes, de divers termes techniques à la mode, de récompenses, etc.

5403d4728945b

Mais la plupart d'entre eux ne pouvaient pas répondre à une question fondamentale : lorsque vous appelez la fonction malloc standard, que se passe-t-il à l'intérieur du noyau ?

Ne soyez pas surpris. Lorsqu'on a demandé à un candidat d'écrire un simple framework de cache LRU basé sur la fonction de hachage de glib, il a d'abord dit qu'il n'avait jamais utilisé glib, ce à quoi on s'attendait. Je lui ai donné le manuel de glib et expliqué les interfaces en détail, mais après plus d'une heure, il n'avait écrit que quelques lignes de code catastrophique.

Analyse des causes :

Je pense que ce qui mène à ce phénomène ne tient pas seulement à leurs propres raisons, mais aussi aux entreprises pour lesquelles ils travaillent. Ces entreprises leur donnent de grandes quantités de code stable qui ne subira pas de changements majeurs pendant des années. Les parties techniquement difficiles sont toutes encapsulées dans ce code, de sorte qu'ils ne peuvent que suivre les vieilles routines et arrêter d'innover. Une fois qu'ils entrent sur le marché du travail, ces soi-disant « experts » n'auront aucune compétitivité.C'est le dilemme du programmeur : nous gagnons notre vie grâce au code, mais les grandes entreprises qui nous soutiennent détruisent lentement notre capacité à gagner notre vie.

Comment sortir de ce dilemme :

Je pense que la survenue d'événements a toujours deux faces ; on ne peut pas applaudir avec une seule main. Les solutions ciblent donc naturellement à la fois les individus et les entreprises/employeurs.

Pour les individus :D'abord, travaillez sur vos propres projets. Vous devez constamment « aiguiser votre couteau ». Choisissez quelques tâches qui vous intéressent pendant votre temps libre et utilisez votre propre temps pour surmonter les difficultés que vous rencontrez. Ce faisant, vous apprendrez certainement de nouvelles choses. Si vous publiez vos projets sur GitHub, vous pourriez avoir la chance de rencontrer quelqu'un qui pourra vous sortir de votre poste actuel.

De plus, ne restez pas dans une même équipe pendant plus de deux ans. Essayez de passer des entretiens tous les 18 mois. Vous n'êtes pas obligé de changer d'emploi, mais vous devriez voir ce dont le marché a besoin et comment vous pouvez vous adapter à la demande.

Pour les équipes/entreprises :Mettez vos employés sous pression et lancez-leur des défis. Faites tourner les postes pour donner aux « experts » l’occasion d’élargir leurs compétences. Lancez de nouveaux projets pour offrir un champ de bataille à vos guerriers. Organisez régulièrement des « hackathons ». Cela bâtira une culture de réforme et d’innovation.

Le « monde des programmeurs » américain n’a pas de seuil ; n’importe qui peut devenir programmeur.

Vous voulez devenir programmeur aux États-Unis ? Cela pourrait ne pas être aussi difficile que vous le pensez. Même si vous n’avez pas les moyens d’aller dans une véritable université pour étudier l’informatique, il existe d’autres voies. Récemment, de plus en plus d’écoles de programmation en ligne sont devenues populaires aux États-Unis. De nombreux cas concrets montrent une voie prometteuse à ceux qui aspirent à ce parcours : que vous soyez un étudiant pauvre à la recherche d’un emploi ou un homme d’âge moyen en crise de la quarantaine souhaitant changer de carrière, le monde des programmeurs vous accueille.

Cours de programmation « Blitz »

L’école « Code Fellows » de Seattle est très confiante dans sa capacité à aider les étudiants à trouver un emploi. Elle propose aux étudiants un cours de programmation « blitz » de six semaines qui les fait passer d’un niveau zéro à un niveau débutant de base, en facturant $12,000 — et s’ils ne trouvent toujours pas d’emploi, les frais de scolarité peuvent être entièrement remboursés.

5403d444eb2a4

Derrière l’essor d’écoles similaires se trouve la prospérité croissante du marché internet américain, qui a conduit à une situation où les programmeurs sont en pénurie. Selon les prévisions de données du département du Travail des États-Unis, il y aura environ un million de postes de programmeurs vacants aux États-Unis d’ici 2020. De plus, beaucoup d’universités traditionnelles n’accordent pas beaucoup d’attention aux cours d’informatique, ce qui rend cet écart de plus en plus grand.

Par exemple, cette année, le département d’informatique de l’Université de Washington n’a admis qu’un quart des candidats pleinement qualifiés. Pour les étudiants qui n’ont pas réussi à entrer dans un programme d’informatique, heureusement, dans le monde des programmeurs, un diplôme n’est pas la seule voie vers un emploi.

Par exemple, chez Google, référence du secteur, certaines équipes comptent 14% de programmeurs sans diplôme formel pertinent. Si l’on considère l’ensemble du pays, 67% des postes de programmation proviennent d’entreprises non technologiques, ce qui signifie qu’en plus de la programmation, d’autres compétences professionnelles courantes sont également nécessaires.

De ce point de vue, la programmation est en fait un métier artisanal, tout comme la soudure ou la menuiserie. C’est un artisanat que n’importe qui peut apprendre en quelques semaines ou quelques mois pour acquérir des compétences de base. Et une fois que ces novices en programmation parviennent à décrocher leur premier emploi avec ces compétences de base, sur le parcours professionnel qui s’ensuit, ils bénéficient des mêmes chances que les programmeurs issus de formations scolaires classiques — il ne s’agit que de compter sur leurs propres capacités.

Prenons Facebook comme exemple. La première chose que fait chaque ingénieur en rejoignant l’entreprise est de suivre six semaines de formation intensive, et la plupart des cours sont naturellement liés à la programmation. L’entreprise a établi ce processus standard parce que, dans la plupart des établissements d’enseignement supérieur, les départements d’informatique mettent davantage l’accent sur l’apprentissage théorique que sur la programmation pratique concrète. Cette dernière comprend en fait un large éventail de connaissances complexes telles que divers langages de programmation parmi les plus populaires, la gestion de projet et la collaboration, ce qui signifie qu’un programmeur qualifié doit souvent composer avec des dizaines d’autres programmeurs et des millions de programmes en cours d’exécution simultanément.

Les programmeurs pourraient finir par être remplacés.

Un diplôme en informatique aide à l’apprentissage théorique et aide les meilleurs ingénieurs à continuer à perfectionner cet art, mais à une époque où Internet est si omniprésent, exiger de chaque programmeur qu’il ait un diplôme en informatique équivaut à exiger de chaque maçon qu’il ait un diplôme d’architecture.

5403d43610e45

Carson, cofondateur de « Treehouse », estime que le diplôme en informatique qu'il a obtenu il y a plus de dix ans est totalement inutile. La technologie Internet, qui évolue à un rythme vertigineux, oblige les ingénieurs à apprendre en continu de nouveaux modèles et langages, ce qui permet à de nombreuses personnes qui ont changé de carrière en cours de route de parfois se retrouver sur la même ligne de départ, tant qu'elles sont prêtes à consacrer leur vie à perfectionner cette compétence.

« Presque tout ce que nous pouvons toucher aujourd'hui peut être relié à un logiciel — c'est la première fois dans l'histoire de l'humanité », a déclaré Carson. C'est comme le dicton le plus populaire de la Silicon Valley : « À l'avenir, il n'y aura que deux types de personnes : celles qui savent programmer et celles qui ne peuvent que suivre les instructions des machines. »

Comme la technologie Internet est destinée à continuer de pénétrer chaque aspect de la société humaine, les postes de programmation, comme les autres divisions du travail qu'elle a remplacées, deviendront de plus en plus diversifiés.

La Maison-Blanche autorise les programmeurs à porter des chemises au travail.

selonThe Washington Post, selon les rapports, la Maison-Blanche a créé le U.S. Digital Service. Le chef de l'équipe n'est pas Obama, mais Mikey Dickerson, un ancien ingénieur senior de Google, venu à Washington depuis la Silicon Valley à la fin de l'année dernière pour réparer Healthcare.gov en panne.

5403d41ed3cf9

Une semaine plus tard, le blog officiel de la Maison-Blanche a publié une vidéo de 5 minutes documentant une journée de travail de Mikey Dickerson à la Maison-Blanche. Les membres de l'équipe de Mikey n'ont pas besoin de porter des costumes. Il estime que porter des costumes peut mettre certains programmeurs mal à l'aise ; après tout, le travail des programmeurs ne consiste pas principalement à traiter avec des personnes extérieures. Ils préfèrent une tenue décontractée, qui leur permet de s'adapter plus rapidement à l'environnement de travail qui les entoure et d'améliorer leur efficacité au travail, même en travaillant à la Maison-Blanche.

Réflexions finales

Les exemples cités ci-dessus ne sont peut-être que des cas isolés, mais nous ne pouvons pas nier que, comparés à l'industrie nationale des programmeurs en Chine, les programmeurs étrangers bénéficient de barrières à l'entrée plus faibles, de meilleures conditions de travail et d'un espace de développement plus large. Auparavant, les médias américains ont même clamé que si une guerre éclatait entre la Chine et les États-Unis, le département de la sécurité de l'information des États-Unis pourrait instantanément ramener les réseaux chinois à l'âge de pierre. C'est peut-être quelque peu exagéré, mais ce n'est pas impossible. Selon des sources proches du dossier, après le conflit d'entraînement militaire au lycée Huangcang du comté de Longshan, les choses ont continué à se dérouler : le site web du gouvernement populaire du comté de Longshan a été piraté, et un hacker nommé « XiaoLan » a laissé un message sur la page d'accueil disant : « Le département de propagande de votre comté ose-t-il avoir un minimum de honte ? »

5403d98f5f3cc

On peut voir que les sites web gouvernementaux chinois sont très fragiles, et que le nombre de sites gouvernementaux piratés n'est pas seulement d'un ou deux. Ce n'est pas nouveau. Peut-on en déduire que c'est précisément parce que l'attention portée à la technologie informatique au niveau national est insuffisante, ou que l'enseignement informatique n'est pas suffisamment ouvert, que de tels incidents se produisent fréquemment ?

Pour être honnête, quiconque éprouve ne serait-ce qu'un peu le sentiment que « la prospérité et le déclin de la nation sont la responsabilité de chaque individu » espérerait des améliorations politiques dans l'éducation en ligne et, au minimum, devrait accorder une grande importance et apporter un soutien vigoureux au développement des systèmes d'exploitation produits localement.