De quelles compétences générales les développeurs ont-ils besoin? L'avis de Yandex

Bientôt la grande Olympiade étudiante «Je suis un professionnel» va commencer. Il est en ligne depuis plusieurs années maintenant. Les étudiants de différentes spécialités, y compris techniques, peuvent participer. Le concours est organisé par 26 universités de premier plan: HSE, Moscow State University, MSTU, Moscow Institute of Physics and Technology, Moscow Engineering Physics Institute, St. Petersburg State University, ITMO University et d'autres.

Yandex est un partenaire technique du projet. Pour nous, «je suis un professionnel» pour la deuxième année consécutive devient une bonne raison de parler de l'importance des compétences non techniques (compétences flexibles) dans le travail des développeurs et autres spécialistes. Il y a un an, dans notre bureau de Moscou, une réunion a été organisée pour les participants à l'Olympiade, consacrée aux compétences générales. Sergey Brazhnik, chef du bureau de développement Yandex à Novossibirsk, en a parlé, s'exprimant lors d'une formation incluse dans le programme «Je suis un professionnel». Aujourd'hui, Sergey et deux autres cadres de Yandex - Anna Fedosova et Oleg Mokhov Olegbl4 - parleront à Habr des compétences flexibles: quels types de compétences existe-t-il, lesquelles sont nécessaires au développeur, où les obtenir et comment leur présence affecte la croissance de l'entreprise.

Sergey Brazhnik, chef du bureau de développement à Novossibirsk, directeur pour le développement de projets éducatifs régionaux




- Pour le développeur, «4K» est important: pensée critique, créativité, coopération et communication. Il est généralement admis que la communication dans ce métier n'est pas une compétence importante, mais si vous y réfléchissez, elle est nécessaire à la croissance professionnelle: vous devez pouvoir poser des questions, écouter et entendre un interlocuteur, expliquer votre point de vue et accepter celui de quelqu'un d'autre, parler et accepter. Un stagiaire peut ne pas être en mesure de travailler en équipe ou de penser de manière critique - et c'est normal, car il n'a pas encore une telle expérience.

Si un spécialiste déjà mature vient nous voir pour un entretien, nous évaluons toutes ces compétences lors d'une conversation. Nous regardons comment une personne parle d'elle-même. Nous posons des questions directrices en cours de route et clarifions beaucoup. Nous vérifions la pensée critique des tâches. D'une part, il est important pour nous qu'il les résout, d'autre part, nous regardons comment il les résout.

Un développeur qui travaille déjà dans l'entreprise a deux façons de déterminer les compétences qui lui manquent. La première consiste à demander un feedback au manager. Si on ne vous dit rien, cela ne signifie pas que tout va bien. Vous en doutez - redemander. Pour les tâches actuelles et les objectifs commerciaux, les gestionnaires peuvent oublier le domaine du logiciel - il est important de le leur rappeler. La deuxième façon - vous pouvez essayer de vous évaluer par rapport aux autres collègues de l'équipe, par exemple, pendant les remue-méninges, quand tout le monde jette des idées et ensuite en discuter, les critiquer.

Supposons que vous compreniez les compétences qui vous manquent. C'est la première étape et la plus importante - pour réaliser que oui, en effet, quelque chose échoue ici pour moi. De plus, idéalement, trouvez un mentor - au moins un ami qui a développé ces compétences. Vous pouvez simplement regarder l'autre. Et si vous trouvez un mentor, il peut vous conseiller et suivre votre croissance. Le mentor peut être votre collègue (il est immédiatement clair pourquoi il a besoin de supervision - vous travaillez pour le même objectif) ou parfois même un expert externe (mais c'est généralement votre connaissance, sinon sa motivation n'est pas claire). Des livres, des conférences, des formations sont également une option, mais de cette façon, vous ne recevrez que des connaissances. Pour que la connaissance devienne une compétence, une pratique régulière est nécessaire.

Les compétences en communication sont excellemment pompées lors des stand-ups - de courtes réunions de planification quotidiennes, où chaque membre de l'équipe parle de ce sur quoi il travaille actuellement. Tout discours en public est également utile. Et essayez de communiquer davantage avec vos collègues et de partager votre expérience au sein de l'équipe.

Si vous devez choisir un chef d'équipe entre un chef de projet technique et un développeur, il n'y a pas de réponse définitive qui est le meilleur. Dans Yandex, même un projet, en règle générale, peut écrire du code. Par conséquent, je comparerais d'abord le gestionnaire et le développeur de plusieurs manières: comment ils peuvent définir des tâches et contrôler l'exécution, comment ils dirigent l'équipe et, en général, quel type de relation ils entretiennent avec l'équipe. Il arrive qu'une personne définit bien les tâches et surveille les délais, mais en même temps elle s'entend bien avec l'équipe. Tout dépend de qui prend la décision. Quiconque était un développeur lui-même, et non un gestionnaire, est plus susceptible de choisir un autre développeur comme leader.

Sur certaines compétences, vous pouvez devenir chef d'équipe - il y a eu des cas. Mais les dirigeants qui déplacent une telle personne en chefs d'équipe doivent être battus à la main. Parce que lui, apprenant dans le processus, cassera tellement de bois de chauffage que l'équipe sera démotivée. Ensuite, tout dépend de la force des gars. Ou ils attendront qu'une personne grandisse et réalise ce qui se passe. Ou n'attendez pas et commencez à vous disperser.

Si vous faites toujours du développeur hardcore un chef de file, vous devez d'abord le préparer durement, puis vous assurer d'être le mentor pendant les trois à six premiers mois.

Anna Fedosova, responsable de la formation et du développement




- Il est difficile de dresser une liste complète des compétences. Ainsi, le modèle de compétences Lominger comprend 67 postes. Au sein de Yandex, nous divisons les compétences en universelles et celles dont les managers ont besoin.

Les compétences universelles sont liées à l'efficacité personnelle et à l'interaction avec les autres. L'efficacité personnelle est associée, par exemple, à la capacité de se gérer soi-même, son temps, les processus de travail, l'orientation vers les résultats, la pensée critique et la capacité d'apprendre. Ce qui distingue l'économie moderne de celle d'il y a trente ans, c'est qu'il est peu probable que vous fassiez la même chose toute votre vie. Très probablement, quelque chose va changer, et nous devons être préparés à cela.

Un autre groupe de compétences universelles est associé à la communication avec d'autres personnes. Nous ne vivons plus à l'époque de la production sur chaîne de montage. Quoi que vous fassiez, vous devrez très probablement négocier et en discuter avec d'autres personnes. Dans ce cas, le processus de communication devient très important. Dans les entreprises informatiques, où l'horizon de planification est très réduit en raison du développement constant de la technologie, même les spécialistes techniques doivent prendre de nombreuses décisions collectives qui naissent dans le processus de discussion. Et les employés ne peuvent pas laisser les négociations s'arrêter, sinon le travail va simplement augmenter.

Une grande couche distincte est les compétences des leaders . Il s'agit notamment de la capacité de définir et d'évaluer des tâches, de motiver les autres et de se développer, d'être un leader, de constituer votre équipe et d'interagir avec d'autres équipes.

Chez Yandex, des programmes de formation aux compétences flexibles sont conçus pour que les employés puissent gérer diverses situations dans un environnement sûr. Il peut s'agir de situations qu'ils n'ont pas rencontrées auparavant ou de cas spécifiques de leur pratique dans lesquels ils souhaiteraient obtenir le meilleur résultat. Vous pouvez travailler beaucoup, de l'embauche de nouvelles personnes et de la définition d'objectifs aux conflits d'intérêts et aux problèmes de motivation. En règle générale, les situations de malentendu entre un employé et un gestionnaire sont difficiles pour les deux parties, mais vous pouvez apprendre à y faire face.

Vous pouvez appliquer différentes méthodes d'enseignement. Il est donc assez difficile d'apprendre le travail d'équipe. À l'école, on nous apprend à travailler individuellement, des notes placées pour la réussite scolaire personnelle. Mais c'est en équipe que les gens apprennent à prendre leurs responsabilités, à se répartir les rôles et à s'entendre sur des objectifs et des résultats communs. Et il s'avère souvent que cela doit être enseigné dès l'âge adulte au travail. Maintenant, certaines écoles pratiquent notamment la formation au projet et les affectations conjointes. Cela devrait aider à apprendre le travail d'équipe dès l'enfance.

Comment apprendre aux adultes à apprendre et à acquérir des connaissances de manière indépendante? Parfois, l'expérience de l'enseignement supérieur est utile. Les étudiants diplômés et diplômés apprennent à comprendre ce qui est important et ce qui n'a pas d'importance, où chercher les connaissances pertinentes. Mais souvent, cela doit être maîtrisé déjà dans le processus de travail. Sans surprise, l'un des cours les plus populaires sur Coursera s'appelle Apprendre à apprendre .

Il n'y a rien de plus utile pour la formation que de mieux se connaître: se regarder de côté à l'aide des retours d'expérience de ses collègues, réfléchir encore une fois à ce qui fonctionne bien et à ce qui ne va pas, trouver des personnes à qui on veut ressembler, et comparez-vous avec eux.

Il ne faut pas oublier que tout est basé sur la motivation. Si vous comprenez que vous n'êtes pas sociable, mais que vous devez le changer, par exemple, c'est important pour l'équipe, alors la motivation et le besoin de changer apparaîtront. Si au travail, vous n'avez pas besoin de communiquer avec qui que ce soit, alors pourquoi vous dépasser?

Oleg Mokhov, responsable du développement des projets RH et du service Yandex.Contest, qui héberge la partie en ligne de l'Olympiade




- Les développeurs sans les ambitions des compétences générales des chefs d'équipe ne sont pas vraiment nécessaires. Il est important de pouvoir poser des questions, écouter, exprimer ses pensées. Pour pomper ces compétences, vous pouvez faire une présentation à la conférence ou donner des conférences à l'université. Nous avons tous étudié une fois, ce qui signifie que nous pouvons enseigner à quelqu'un nous-mêmes. Élèves, infections, posez les questions les plus secrètes. La capacité d'y répondre rapidement, la pendaison de la langue vous aide à rester calme dans des discussions animées.

Les livres n'aident pas avec les compétences générales. Les formations ne sont utiles que si vous les assistez régulièrement. Mais il est très utile de venir à la conférence et de prendre une position active. Posez simplement des questions à l'orateur.

Lors des entretiens, je remets parfois en question même la bonne réponse du candidat - je regarde comment il pense. Mais cela ne fonctionne que si la personne a confiance en elle. En général, il est préférable d'analyser les compétences générales lors des entretiens finaux. Par exemple, veuillez nous parler de la tâche la plus intéressante que le candidat a effectuée. Ainsi, vous pouvez découvrir ce qui est le plus intéressant pour une personne: coder, rechercher, obtenir un résultat ou communiquer.

Beaucoup de ceux qui ont énormément développé des compétences générales deviennent des cadres de haut rang qui se réunissent toute la journée. Comment maintenir les compétences de codage? Vous vous dites: je programme pendant deux heures. Coupez toutes les notifications, le téléphone, la seule façon. Je connais les dirigeants qui font cela. Eh bien, pour interviewer, effectuer des sections techniques - aide également le cerveau à se développer. Chez Yandex, vous venez de cesser d'être junior et vous serez déjà attiré par une interview. C’est comme une taxe sur le fait que vous travaillez dans une grande entreprise.

Si vous devez choisir un chef d'équipe entre un manager et un développeur, alors tout dépend des futures responsabilités du leader. C’est une chose si le manager était lui-même un développeur. Ensuite, il a plus de chances. Autre, s'il s'agit d'un projet universel. Il interagit avec l'équipe backend, le frontend, les designers, les analystes. Mais il ne sait pas comment fonctionne une bibliothèque particulière dans le frontend, dans le backend il n'est pas familier avec la programmation asynchrone, il n'imagine pas pourquoi c'est difficile. La croissance du développeur est une immersion en profondeur. Et l'essence de la gestion est de collecter la couche superficielle, de comprendre le problème et d'établir des communications, des processus. Par conséquent, je pense que le manager ne sera probablement pas en mesure de pomper les compétences de développement chez les gens.

Une équipe peut détester une personne sur le côté. Je choisirais donc un leader parmi les développeurs eux-mêmes, et je ne choisirais peut-être pas le plus puissant d'entre eux. Supposons qu'une personne ait travaillé pendant cinq ans, maintenant c'est un développeur senior, mais au cours des cinq dernières années, il n'a fait que grandir et les logiciels ne se développent pas. Ensuite, je ne peux pas m'attendre à ce qu'ils augmentent fortement si je lui donne un poste. Mais lorsque le développeur travaille depuis un an, mais je vois que sa langue est bien suspendue, il communique, peut connecter plusieurs personnes, résoudre le conflit entre elles - c'est un chef d'équipe pour moi, même s'il n'est pas développeur senior.

Je ne crois pas à l’histoire quand une personne devient un leader sur certaines compétences. Timlid sans logiciel ne remplit probablement pas sa fonction quelque part. Quand cela peut-il fonctionner? Lorsque les subordonnés sont autosuffisants. Pour les nouveaux dirigeants, j'ai un slogan: les phoques sont faciles à gérer. Les Timlids sont frustrés quand ils ont des cas complexes - un employé veut démissionner, l'autre bouge et devient moins formel, le troisième est un conflit. Je dis cela à leur chef d'équipe - réjouissez-vous, vous devez d'abord travailler en tant que leader. Parce que les phoques - ici ils miaulent, de bonne humeur, drôles - ils sont très faciles à gérer.

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


All Articles