Avec ce post, nous répondons à la question de savoir s'il y a une carrière de programmeur (et généralement de travail) après 50 ans. Tatyana Mitina, chef du département de programmation du centre de développement C3D Labs à Nizhny Novgorod, raconte son histoire. Elle a travaillé chez Intel pendant 16 ans et développe actuellement un noyau 3D géométrique.

20 ans: Fortran, Basic et cartes perforées
Je suis diplômé de l'Université de Gorky, Département de mathématiques computationnelles et cybernétique, avec spécialisation en mathématiques appliquées. Nous étions diplômés en tant que mathématiciens, pas programmeurs. Nous avons vu les ordinateurs comme des racks avec des transistors et des fils. Dans le travail de laboratoire, ils ont calculé quelque chose en réarrangeant ces fils et en simulant le processeur. Au lycée, Basic était à un niveau basique. Je n'ai pas rencontré d'ordinateurs personnels depuis longtemps.
Equipe étudiante de construction (1978)Après l'université, elle a travaillé à l'Institut de mathématiques appliquées, où elle a écrit sur Fortran, qui à l'époque était considéré comme le langage le plus approprié pour les calculs scientifiques. Elle a préparé une thèse - développé un complexe pour les opérations de calcul avec des matrices analytiques. Il était censé être utilisé dans l'ONG "Hydromash".
Nous avons travaillé en mode batch. Au début, ils ont écrit le programme sur des formulaires spéciaux, puis des cartes perforées nous ont été perforées, nous les avons vérifiées et les avons données à des opérateurs informatiques. L'ensemble du processus a pris plus d'une journée pour obtenir le résultat de son programme. Par conséquent, ils ont écrit des programmes très soigneusement, vérifiant chaque lettre plusieurs fois, sinon le cycle entier devait être redémarré.
La perestroïka est venue, puis l'URSS s'est effondrée, ils ont cessé de nous payer un salaire et je suis partie. Ma thèse n'a pas eu lieu, ma carrière scientifique s'est terminée. Mais une toute nouvelle a commencé - dans l'informatique.
30 ans: langage CAD et C
Après l'Institut des mathématiques appliquées, je suis venu dans une société d'ingénierie qui a conçu de petits navires hydroptères. Ici, j'ai vu pour la première fois le personnel. J'ai travaillé dans le département informatique, pour l'auto-développement, j'ai commencé à écrire en C, puis j'ai rencontré Pro / Engineer. Notre entreprise a probablement été la première de la ville à acheter un système de CAO de ce niveau. Elle a travaillé sur des postes de travail graphiques sous UNIX. Il n'y avait pas de personnel puissant capable de transformer des CAD lourds.
J'ai maîtrisé Pro / Engineer. Je me souviens comment j'ai simulé une pale d'hélice selon des tableaux de calcul. La section de la lame change constamment de géométrie et cette surface complexe a été créée de manière paramétrique dans Pro / Engineer. Des délégations d'autres entreprises sont venues nous voir comment elles fonctionnent en CAO. Nous étions trois personnes qui ont étudié Pro / Engineer, et nous avons effectué des excursions. Lorsque notre entreprise a commencé à s'effondrer, nous étions tous les trois ravis d'être pris par les entreprises.
Je suis allé au bureau d'études de l'usine Sokol Aviation. Là, ils viennent d'acheter Unigraphics sur les postes de travail, et il fallait administrer l'ensemble du complexe, former les employés. Pour expliquer aux gens à quoi sert l'automatisation, j'ai pris les dessins d'encadrement des concepteurs et fait un modèle en trois dimensions sur eux. Les patrons sont venus regarder: "Oh, le cadre tourne, cool!" Ensuite, j'ai même vu ce modèle 3D du cadre dans du matériel publicitaire. Je peux dire avec fierté que j'ai participé à la conception de l'entraîneur de combat Yak-130. Travaillé avec son concepteur en chef, par exemple, effectué des calculs du niveau de carburant dans les réservoirs pour différents rouleaux de l'avion, bien sûr, pas sur papier. Et les gens du quartier se sont appuyés sur les culmins. Il était important pour moi de me sentir impliqué dans ce qui s'incarne dans le métal, voler dans le ciel.
Yak-13035 ans: C ++ et anglais
Ensuite, il y a eu un court segment - le bureau d'études Vympel pour la construction navale, qui a alors acheté le système de CAO suédois pour la construction navale Tribon. Ils avaient besoin d'un homme pour l'administrer. Dans l'après-midi, j'ai travaillé au bureau d'études et le soir, je suis allé travailler à temps partiel au laboratoire de technologie logicielle de Nijni Novgorod, qui a exécuté les commandes d'Intel et d'autres sociétés étrangères. Ici, j'étais engagé dans la programmation C ++ pure et j'ai travaillé sur un module de système de CAO pour la société belge Brics (maintenant Bricsys). Sur cette vague, je suis arrivé chez Intel lorsque la société a ouvert un bureau à Nizhny Novgorod.
Intel (2001)Grâce au projet avec Brics, j'ai appris l'anglais. La première fois, j'ai été envoyée en Belgique avec deux collègues, et je ne pensais pas qu'une telle langue étrangère. Et j'ai commencé à parler la prochaine fois que je partais en voyage d'affaires pendant deux semaines.
La société a payé pour nous des cours d'anglais, mais vous ne commencerez à parler qu'après être entré dans l'environnement linguistique. J'ai eu un incident curieux. Il fallait discuter de quelque chose avec un collègue australien. Je comprenais toujours les Belges qui parlaient anglais, mais pas cet Australien. En conséquence, nous nous sommes assis tous les trois et un collègue belge a traduit le discours de l'Australien dans mon anglais. Quand j'étais seul en voyage d'affaires, il n'y avait nulle part où aller. Et je me suis tellement habitué à la langue que lorsque je rentrais chez moi, parfois dans la rue ou dans les transports, je répondais en anglais.
40 ans: Intel
Chez Intel, j'ai réussi à travailler sur différents projets et dans des équipes internationales. Ces dernières années, tout a tourné autour des célèbres profileurs et débogueurs: Parallel Inspector, Parallel Advisor, VTune Amplifier. J'ai travaillé au sein d'équipes qui ont développé des logiciels pour le réglage fin des performances des applications, le travail de profilage avec les threads et la mémoire et l'optimisation de l'informatique vectorielle.
Intel VTune Enterprise TeamJe n'ai remarqué aucun préjugé sur l'âge. Les gars avec qui je travaillais ne pensaient même pas à mon âge. On m'a raconté qu'une camarade légendaire de 78 ans travaille dans le bureau américain d'Intel. Chaque année, on lui propose de prendre sa retraite avec une indemnité de départ, mais il refuse. Et il n'y a rien pour le renvoyer, car il fonctionne bien, il passe toutes les certifications.
Intel (2004)Depuis 16 ans, Intel m'a radicalement changé, mon attitude au travail, ma position de vie. Rendu plus proactif, actif, courageux. Si je constate que quelque chose ne va pas, je dirai certainement que je le prendrai pour vous aider. Intel a encouragé la collaboration entre les personnes et les équipes. Même si vous êtes un spécialiste sympa, mais isolé et ne communiquez avec personne, ni vous ni l'entreprise n'en bénéficierez. Plus une personne communique et partage activement son expérience, plus elle influence ses collègues et la prise de décision, plus elle a de possibilités de croissance. Une telle approche des affaires vous sort de votre zone de confort, mais vous accoutume à travailler sur vous-même et vous prépare à une position de vie active. Peut-être était-ce à l'origine proche de mon personnage.
56 ans: le noyau géométrique
Il y a deux ans, la restructuration a commencé chez Intel, et je pensais que c'était peut-être une chance de changer ma vie - après tout, j'ai travaillé pendant 16 ans dans une entreprise, je voulais essayer d'appliquer mon expérience dans un autre domaine. Grâce à GeoS, une entreprise qui développe des systèmes de CAO et utilise le noyau géométrique C3D, j'ai découvert C3D Labs et le fait qu'elle possède une division à Nizhny Novgorod. Pour moi, c'était un retour à mon point de départ, au CAD. De plus, je voulais travailler dans une entreprise russe - c'est un style de travail différent, une atmosphère différente, des relations entre les gens.
J'ai tout de suite aimé l'environnement familial, plus chaleureux, moins formel. Je suis venu ici plus en tant que programmeur que mathématicien, et quand j'ai regardé le code, j'ai été agréablement surpris par certaines choses. Il était évident que les gens connaissent bien le C ++ - comment le langage fonctionne, comment il fonctionne avec différents types de données. Conteneurs auto-écrits compétents et précis, lecture / écriture au format C3D.
Tatyana (centre) dans l'équipe C3D Labs (2016)En tant que première tâche indépendante, j'ai développé un format de données avancé basé sur notre format C3D existant. Le format existant est très compact, le modèle est enregistré dans un petit fichier. Si nous avons enregistré le modèle, nous devons le lire complètement, et c'est la limitation. En effet, parfois, pour lire un grand modèle, cela peut prendre, conditionnellement, une demi-heure au lieu de quelques secondes. Le format avancé vous permet d'écrire un fichier afin de ne pas pouvoir le lire dans son intégralité, mais de lire le titre, de sélectionner des objets et de les lire uniquement. Cela permet, par exemple, de lire rapidement et de montrer la représentation polygonale du modèle, tandis que le grand modèle continue d'être lu. Le format étendu est déjà utilisé dans le visualiseur de modèle 3D de C3D Viewer (plus de détails sur le format de noyau C3D étendu peuvent être trouvés
ici .
57 ans: Scrum Master
Lorsque j'ai rejoint C3D Labs, certaines choses me semblaient inefficaces. Les employés travaillaient chacun dans leur propre bac à sable, parfois ils ne savaient pas ce que faisaient leurs collègues, à quelle étape en était le travail. Mais l'une des principales tâches d'Agile est de rendre le développement transparent.
Chez Intel, j'ai participé à l'organisation du processus de développement, j'étais un maître de mêlée. Sur la base de mon expérience, j'ai écrit un document dans lequel j'ai expliqué étape par étape l'ensemble du processus, ce qui est fait et pourquoi, qui devrait être responsable de quoi. Bien sûr, il y a eu des objections, et c'est compréhensible. Il est difficile de réajuster lorsque vous travaillez dans la même veine depuis des années. Par exemple, les collègues n'ont pas immédiatement accepté qu'après chaque sprint, vous deviez parler de votre travail. À la première étape, Oleg Zykov, directeur de l'entreprise, m'a vraiment soutenu. À mesure que vous avancez, Yuri Kozulin, directeur du développement chez C3D Modeler, a apporté une grande contribution. Il était important pour lui, en tant que chef de l'équipe, d'assurer la transparence du travail et une planification régulière.
Nous avons commencé à discuter de la transition vers Agile il y a un an, à l'été 2017. Tenue de réunions, a fait valoir. Il a été proposé de "ramollir le coup", d'introduire progressivement des innovations. Mais je me suis comporté assez durement: nous passerons immédiatement et intégralement à la nouvelle technologie. En général, dans la vie, je suis une personne douce, mais je peux être persévérant dans le travail si je suis sûr d'avoir raison. C'est peut-être l'école d'Intel.
Scrum Session (Kolomna, 2018)Les deux premiers mois ont été très difficiles. Mais maintenant, beaucoup de choses ont changé. Même ceux qui n'étaient pas d'accord au départ, disent maintenant avec enthousiasme lors des séances de mêlée ce qu'ils font maintenant et ce qu'ils prévoient de faire. Je suis parti en vacances et j'étais sûr que sans moi, la planification irait bien. Le processus est débogué, et je pense à transférer les rênes du gouvernement, le rôle de scrum-master est désormais assez technique.
58 ans: quelle est la prochaine étape?
J'aurai 58 ans le 30 août. Je fais actuellement du multithreading. Nous implémentons le calcul parallèle dans les modules du noyau géométrique C3D, et assurons également la sécurité des threads C3D lorsque nous travaillons dans des applications utilisateur multi-thread. C'est un travail difficile à réaliser, l'étendue des travaux est immense. Jusqu'à présent, je programme principalement en C ++, car je ne suis pas connecté avec des shells, des builds. Mais je peux corriger ou compléter le script en JavaScript ou Python.
Je vois une utilisation plus poussée de mes forces pour améliorer la structure du produit, pour optimiser le code. Je pense à améliorer le système de test, car pendant un certain temps, j'ai été le leader des tests dans l'un des projets d'Intel et j'ai une bonne expérience dans l'organisation du travail dans ce domaine.
Comme j'aime beaucoup voyager, je veux apprendre une deuxième langue étrangère, car avoir l'anglais seul en Europe est parfois difficile. Ce sera peut-être le français.
