Qui est qui en informatique?



Au stade actuel de développement du développement de logiciels industriels, on peut observer une variété de rôles de production. Leur nombre augmente, la classification se complique chaque année et, bien entendu, les processus de sélection des spécialistes et de travail avec les ressources humaines se compliquent. La technologie de l'information (TI) est un domaine de main-d'œuvre hautement qualifiée et de pénurie de personnel. Ici, le processus de développement du personnel, la nécessité d'un travail systématique avec les ressources humaines sont beaucoup plus efficaces que la sélection directe à l'aide des ressources Internet.

L'article traite des questions pertinentes pour le personnel travaillant avec les entreprises informatiques: les relations causales dans l'évolution des rôles de production, les conséquences d'une mauvaise interprétation du contenu des rôles pour le travail du personnel en général, ainsi que les options possibles pour accroître l'efficacité de la sélection des spécialistes.

Production informatique pour les non-initiés


Qui est qui en informatique est un sujet de discussion à divers endroits. Elle existe autant que l'ensemble de l'industrie informatique, c'est-à-dire depuis l'apparition sur le marché grand public des premières sociétés de développement logiciel au début des années 90 du siècle dernier. Et pendant le même laps de temps, il n'y a pas de point de vue unique sur cette question, ce qui crée des difficultés et réduit l'efficacité du travail du personnel. Essayons de le comprendre.

Pour moi, le sujet des rôles de production dans le secteur informatique est devenu pertinent et intéressant depuis que j'ai rejoint la société informatique. J'ai passé beaucoup de temps et d'énergie nerveuse à essayer de comprendre le processus de production. Ces coûts ont dépassé mes attentes et les coûts d'adaptation aux processus dans d'autres domaines: éducation, production de matériel, petite entreprise. J'avais compris que les processus sont complexes et inhabituels, car, en général, une personne est plus adaptée au monde matériel qu'au monde virtuel. Mais il y avait une résistance intuitive: il semblait que quelque chose n'allait pas ici, il ne devrait pas en être ainsi. Le processus d'adaptation a probablement pris un an, ce qui, à mon avis, est simplement une quantité cosmique. En conséquence, j'avais une idée assez claire des rôles clés dans la production informatique.

Actuellement, je continue de travailler sur ce sujet, mais à un niveau différent. En tant que responsable du centre de développement d'une entreprise informatique, je dois souvent communiquer avec des étudiants, des professeurs d'université, des candidats, des écoliers et d'autres personnes qui souhaitent participer à la création d'un produit informatique afin de promouvoir la marque de l'employeur sur le marché du travail d'un nouveau territoire (Yaroslavl). Cette communication n'est pas aisée en raison de la faible prise de conscience des interlocuteurs sur l'organisation du processus de développement logiciel (logiciel) et, par conséquent, de leur méconnaissance du sujet de la conversation. Après 5 à 10 minutes de dialogue, vous arrêtez de recevoir des commentaires et commencez à vous sentir comme un étranger, dont le discours doit être traduit. En règle générale, il y a quelqu'un parmi les interlocuteurs qui trace une ligne dans le dialogue et exprime le mythe populaire des années 90: "Quoi qu'il en soit, tous les informaticiens sont des programmeurs." Les sources du mythe sont les suivantes:

  • L'industrie informatique se développe rapidement, dans ces conditions toutes les significations et principes fondamentaux sont au stade de la formation;
  • face à l'incertitude, il est difficile d'exister, par conséquent, une personne essaie de faciliter sa compréhension de l'inconnu en créant des mythes;
  • une personne est plus habituée à la perception du monde matériel que virtuelle, et il lui est donc difficile de définir des concepts qui dépassent sa perception.

Les tentatives de combattre ce mythe ressemblent parfois à une lutte avec des moulins à vent, car il y a plusieurs aspects du problème qui doivent être abordés. Le spécialiste des ressources humaines doit, premièrement, avoir une image claire des rôles de production dans l'entreprise informatique dans un mode de réalisation idéal et réel, deuxièmement, comprendre comment et quand les ressources internes de l'entreprise peuvent être utilisées le plus efficacement possible, et troisièmement, quelles méthodes réelles aideront à augmenter sensibilisation des acteurs du marché du travail et contribuera au développement de la marque employeur. Examinons ces aspects plus en détail.

Cycle de vie du logiciel comme base des rôles de production


Ce n'est un secret pour personne qu'en général, tous les rôles de production d'une entreprise informatique ont pour source le cycle de vie du logiciel. Par conséquent, si nous fixons la tâche conceptuelle de s'entendre sur une perception commune de ce problème dans l'ensemble de l'industrie informatique, nous devons nous en remettre au cycle de vie du logiciel comme base sémantique acceptée et comprise sans ambiguïté. La discussion des options spécifiques pour la mise en œuvre de la question des rôles de production se situe dans le plan de notre attitude créative à l'égard du cycle de vie du logiciel.

Ainsi, nous considérerons les étapes incluses dans le cycle de vie du logiciel, en utilisant l'exemple de la méthodologie RUP. Ce sont des liens bien formés en termes de contenu et de terminologie. Le processus de production commence toujours et partout par la modélisation commerciale et la formation des exigences, et se termine (conditionnellement, bien sûr) par la consultation des utilisateurs et des améliorations logicielles en fonction des souhaits des utilisateurs.



Si vous faites une excursion historique à la fin du siècle dernier (comme vous le savez, c'était une période d '"automatisation de l'île"), vous pouvez voir que le programmeur était engagé dans tout le processus de création du logiciel. Voici les racines du mythe selon lequel tout informaticien est programmeur.

Avec la complexité des processus de production, l'émergence de plates-formes intégrées et la transition vers l'automatisation intégrée des domaines, avec la réingénierie des processus d'affaires, l'émergence de rôles spécialisés associés aux étapes du cycle de vie devient inévitable. C'est ainsi qu'apparaissent un analyste, un testeur et un spécialiste du support technique.

La diversité des postes comme exemple du rôle de l'analyste


L'analyste (il est également ingénieur-analyste, il est également directeur, méthodologue, analyste d'affaires, analyste de systèmes, etc.) aide à «se faire des amis» avec les tâches commerciales et les technologies pour leur mise en œuvre. Description de l'énoncé du problème pour le développeur - c'est ainsi que la fonction principale d'un analyste abstrait peut être caractérisée. Il sert de lien entre le client et le développeur dans les processus de formation des exigences, d'analyse et de conception de logiciels. En conditions réelles de production, la liste des fonctions d'un analyste est déterminée par le mode d'organisation de la production, la qualification d'un spécialiste et les spécificités d'un domaine simulé.



Certains analystes sont plus proches du client. Ce sont des analystes commerciaux. Ils comprennent en profondeur les processus métier du domaine et sont eux-mêmes experts en processus automatisés. La présence de tels spécialistes dans le personnel de l'entreprise est très importante, en particulier lors de l'automatisation de domaines méthodologiquement complexes. En particulier, pour nous, en tant qu'auteurs du processus budgétaire de l'État, il est simplement nécessaire que parmi les analystes soient des experts en la matière. Ce sont des employés hautement qualifiés avec une bonne éducation financière et économique et une expérience dans les institutions financières, de préférence dans le rôle d'experts de premier plan. Une expérience de travail non pas dans le domaine informatique, mais dans le domaine est extrêmement importante.

Une autre partie des analystes est plus proche des développeurs. Ce sont des analystes système. Leur tâche principale est l'identification, la systématisation et l'analyse des besoins des clients pour la possibilité de leur satisfaction, la préparation des tâches techniques et une description des énoncés de problèmes. Ils comprennent non seulement les processus commerciaux, mais aussi les technologies de l'information, connaissent bien les capacités des logiciels livrés au client, ont des compétences en conception et, en conséquence, comprennent la meilleure façon de transmettre les intérêts du client au développeur. Ces employés doivent avoir une formation en TIC et une mentalité d'ingénierie et technique, de préférence avec une expérience en informatique. Lors de la sélection de ces spécialistes, un atout évident sera la disponibilité de compétences en conception utilisant des outils modernes.



Un autre type d'analyste est le rédacteur technique. Ils sont engagés dans la documentation dans le cadre des processus de développement logiciel, préparent les manuels utilisateurs et administrateurs, les instructions technologiques, les vidéos de formation, etc. Leur tâche principale est de pouvoir transmettre des informations sur le programme aux utilisateurs et aux autres parties intéressées, de décrire de manière concise et claire des choses techniquement complexes. Pour la plupart, les rédacteurs techniques parlent couramment le russe, avec une formation technique et un esprit analytique. Pour ces spécialistes, les plus importants sont les compétences de compilation de textes techniques clairs, compétents et détaillés conformément aux normes, ainsi que la connaissance et la possession d'outils de documentation.

Ainsi, nous voyons le même rôle (et, en passant, une position dans la liste du personnel) - un analyste, mais dans ses diverses incarnations concrètes et appliquées. La recherche de spécialistes pour chacun d'eux a ses propres caractéristiques. Il est important de savoir que ces types d'analystes doivent posséder des compétences et des connaissances souvent incompatibles chez une seule personne. L'un est un humaniste, enclin au travail analytique avec de grands volumes de documents texte, avec une parole et une sociabilité développées, l'autre est un «technicien» avec une pensée d'ingénierie et des intérêts dans le domaine informatique.

Prendre de côté ou grandir?


Pour un grand représentant de l'industrie informatique, l'efficacité de la sélection directe à partir des ressources Internet diminue à mesure que les projets se développent. Cela se produit notamment pour les raisons suivantes: il est impossible de s'adapter rapidement à des processus complexes au sein de l'entreprise, la vitesse de développement d'outils spécifiques est inférieure à la vitesse de développement du projet. Par conséquent, il est important pour un spécialiste des ressources humaines de savoir non seulement qui chercher de l'extérieur, mais aussi comment utiliser les ressources internes de l'entreprise, auprès de qui et comment développer un spécialiste.

L'expérience est très importante pour les analystes d'affaires à l'intérieur des processus réels du domaine, de sorte que leur sélection «de l'extérieur» est plus efficace que de se développer à l'intérieur de l'entreprise. Dans le même temps, il est important pour le spécialiste des ressources humaines de connaître la liste des organisations qui peuvent être les sources de cette ressource en personnel et, lors de la sélection, de se concentrer sur la recherche d'un curriculum vitae.

Pour combler des postes vacants en tant qu'analyste de systèmes et architecte logiciel, au contraire, le processus de formation au sein de l'entreprise est d'une grande importance. Ces spécialistes doivent être formés dans l'environnement de travail actuel et les spécificités d'une organisation particulière. Les analystes système sont développés à partir d'analystes commerciaux, de rédacteurs techniques et d'ingénieurs de support technique. Architecte logiciel (architecte système) - des concepteurs (concepteur système) et des développeurs logiciel (développeur logiciel) à mesure qu'ils acquièrent de l'expérience et élargissent leurs horizons. Cette circonstance permet au spécialiste des ressources humaines d'utiliser efficacement les ressources internes de l'entreprise.

L'intersection, l'unification et l'évolution des rôles de production


Il y a une autre question difficile du point de vue de la mise en œuvre dans le processus de production - l'établissement de limites claires entre les rôles. À première vue, il peut sembler que tout est évident: la mise en œuvre est terminée, ils ont signé des documents sur la mise en service du logiciel et transféré le tout au support technique. C'est vrai, mais il y a souvent des situations où le client, par habitude, étant en contact étroit avec l'analyste et voyant une bouée de sauvetage en lui, continue de communiquer activement avec lui, malgré le fait que le système ait déjà été mis en place et que la phase de soutien soit formellement . Cependant, du point de vue du client, qui est meilleur et plus rapide que l'analyste qui a défini la tâche avec lui, répondra aux questions sur l'utilisation du système. Et ici se pose la question de la duplication partielle des rôles d'ingénieur support technique et d'analyste. Au fil du temps, tout s'améliore, le client s'habitue à communiquer avec le service d'assistance technique, mais au tout début du fonctionnement du logiciel, une telle «transition interne» n'est pas toujours possible sans stress des deux côtés.



L'intersection des rôles de l'analyste et de l'ingénieur du support technique se produit également lorsque le flux des exigences de développement se situe dans le cadre de la phase de support. En revenant au cycle de vie du logiciel, nous voyons un écart entre les conditions de production réelles et les paramètres formels selon lesquels l'analyse des besoins et l'énoncé du problème peuvent être effectués exclusivement par l'analyste. Le spécialiste des RH doit certainement comprendre l'image idéale des rôles dans le cycle de vie du logiciel, ils ont des limites claires. Mais en même temps, il ne faut pas oublier que l'intersection est possible. Lors de l'évaluation des connaissances et des compétences du candidat, vous devez prêter attention à la présence d'une expérience connexe, c'est-à-dire que lors de la recherche d'ingénieurs de support technique, des candidats ayant l'expérience d'un analyste et vice versa peuvent être pris en considération.

En plus de l'intersection, une combinaison de rôles de production est souvent observée. Par exemple, un analyste commercial et un rédacteur technique peuvent exister en une seule personne. La présence d'un architecte logiciel (Software Architect) est obligatoire dans les grands développements industriels, alors que les très petits projets peuvent se passer de ce rôle: les fonctions de l'architecte sont assurées par les développeurs (Software Developer).

Le changement des périodes historiques dans les approches et technologies de développement conduit inévitablement au fait que le cycle de vie des logiciels évolue également. À l'échelle mondiale, bien sûr, ses principales étapes restent inchangées, mais elles sont en cours de détail. Par exemple, avec le passage aux solutions Web et la croissance des capacités de configuration à distance, le rôle d'un spécialiste de la configuration logicielle est apparu. À un stade historique précoce, il s'agissait d'implémenteurs, c'est-à-dire d'ingénieurs qui passaient la plupart de leur temps à travailler sur les lieux de travail des clients. L'augmentation du volume et de la complexité des logiciels a conduit au rôle d'architecte logiciel. Les exigences pour accélérer la sortie des versions et améliorer la qualité des logiciels ont contribué au développement des tests automatisés et à l'émergence d'un nouveau rôle - Ingénieur QA (Ingénieur Assurance Qualité), etc. L'évolution des rôles à toutes les étapes de l'organisation du processus de production est fortement associée au développement de méthodes, technologies et outils.

Nous avons donc examiné quelques points intéressants concernant la répartition des rôles de production au sein de la société de logiciels dans le contexte du cycle de vie des logiciels. De toute évidence, il s'agit d'un regard intérieur spécifique à chaque entreprise. Pour nous tous, en tant que participants au marché du travail de l'industrie informatique et responsables de la promotion de la marque de l'employeur, un regard extérieur sera particulièrement important. Et ici, il y a un gros problème non seulement dans la recherche de significations, mais aussi dans la transmission de ces informations au public cible.

Quel est le problème du zoo des postes informatiques?


La confusion dans l'esprit des spécialistes RH, des organisateurs de production et la variété des approches conduisent à une très grande variété, directement au «zoo» des postes informatiques. L'expérience des entretiens et des contacts professionnels montre que, souvent, les gens n'ont pas une compréhension sans équivoque de la charge sémantique qui devrait découler du titre du poste. Par exemple, dans notre organisation, les postes qui incluent le concept d '«ingénieur-analyste» suggèrent qu'il s'agit d'un gestionnaire de tâches. Cependant, il s'avère que ce n'est pas toujours le cas: il existe des organisations de développement où l'analyste-ingénieur est un implémenteur. Une compréhension complètement différente, d'accord?

Premièrement, le «zoo» des postes informatiques réduit sans aucun doute l'efficacité du recrutement du personnel. Lors du développement et de la promotion de leur marque, chaque employeur souhaite transmettre brièvement toutes les significations qui existent dans sa production. Et si lui-même souvent ne peut pas dire clairement qui est qui, bien sûr, il transmettra l'incertitude dans l'environnement extérieur.

Deuxièmement, le "zoo" des postes informatiques crée d'énormes problèmes dans la formation et le développement du personnel informatique. Toute entreprise informatique sérieuse visant à constituer et développer des ressources humaines, plutôt que de simplement «traire» des chantiers, rencontre tôt ou tard le besoin d'interagir avec les établissements d'enseignement. Pour le personnel informatique hautement qualifié, il s'agit d'un segment des universités, et le meilleur, au moins dans le TOP-100.

Le problème de l'intégration avec les universités dans la mise en place d'un processus continu de formation des informaticiens est environ la moitié du manque de compréhension parmi les universités de qui est qui au sein de l'entreprise informatique. Ils ont une compréhension très superficielle de cela. En règle générale, les universités ont plusieurs spécialités avec le mot «informatique» dans leurs noms, et il arrive souvent que lorsqu'elles mènent une campagne d'admission, elles s'appuient sur la thèse que toutes les spécialités sont essentiellement la même chose. Et cela ressemble à si vous vous fiez au mythe populaire selon lequel tous les informaticiens sont des programmeurs.

L'expérience de notre étroite collaboration avec les universités montre que la spécialité «Informatique appliquée (par industrie)» nous fournit du personnel pour les départements de méthodologie et de support technique, mais pas de développement. Alors que l'informatique fondamentale et le génie logiciel préparent une excellente ressource humaine pour les développeurs. Afin de ne pas orienter initialement le demandeur sur une voie qui ne lui convient pas, il est nécessaire de «dissiper le brouillard» qui entoure la production informatique.

Est-il possible de tout ramener à un dénominateur commun?


Est-il possible d'unifier les rôles de production et d'en arriver à une compréhension commune de l'intérieur et de l'extérieur de l'entreprise?

Bien sûr, cela est possible et nécessaire, car l'expérience collective accumulée de tous les développeurs d'entreprise démontre la présence de concepts communs et unificateurs de l'organisation du processus de production. Ceci est une conséquence du fait qu'il existe un concept interprété sans ambiguïté du cycle de vie du logiciel, et les nouveaux rôles de production qui apparaissent (DataScientist, QA-Engineer, MachineLearning Engineer, etc.) sont le résultat du raffinement et du développement du cycle de vie du logiciel en tant que tel, se produisant avec l'amélioration des technologies et des outils, ainsi que le développement et la consolidation des tâches commerciales.

Dans le même temps, il est difficile d'unifier les rôles de production, car l'informatique est l'une des industries les plus jeunes et en plein essor. En un sens, c'est le chaos dont est issu l'univers. , – , . , – «»- , , «»-, . , , , , . , , , , .

-


, HR- -.

-, - , : , , – .

-, HR- . , . : , , . , , , .

-, : , , , , , .

-, , – , . HR- , , : , , , , , .

, , – , , . , , , -, « », . -, .

, : .

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


All Articles