Comment organiser le travail efficace d'une équipe de mise en page distribuée

Bonjour à tous! Je m'appelle Roman et aujourd'hui je partagerai mon expérience au sein d'une équipe de mise en page distribuée. Je vais vous parler des processus que nous avons construits et de la façon dont une équipe de quatre personnes couvre les besoins de mise en page d'une unité entière composée de plus de 30 produits et de plus de 20 équipes de produits.


Comment organiser le travail efficace d'une équipe de mise en page distribuée

Je vais Ă©galement vous expliquer comment:


  • Suivre le travail d'une Ă©quipe rĂ©partie;
  • Pour atteindre la cohĂ©rence du code dans diffĂ©rents projets;
  • RĂ©partissez les tâches Ă©quitablement;
  • Maintenir un travail de haute qualitĂ©;
  • N'accumulez pas de tâches inachevĂ©es;
  • Pour Ă©viter l'Ă©puisement professionnel et dĂ©velopper les employĂ©s.

Au lieu de rejoindre


Je pense que cela vaut la peine de dire immédiatement pourquoi nous avons des concepteurs de mise en page dédiés dans Tinkoff Business. Après tout, il y a une opinion que tout développeur Web devrait être en mesure de bien se maquiller.


Dans de nombreuses entreprises, les développeurs se composent tous. Mais, tout d'abord, tous les développeurs n'aiment pas composer et le font assez bien. Deuxièmement, pour le développeur, la mise en page est loin d'être toujours prioritaire, l'accent est mis sur le code. Et quand il n'y a pas de concentration, la qualité et l'attitude envers les détails en souffrent.


Par conséquent, nous avons des concepteurs de mise en page dédiés, mais ils ne sont pas associés à un projet spécifique, car tous les projets ne peuvent pas toujours fournir des tâches de mise en page.


Comment c'Ă©tait avant?


Auparavant, le processus Ă©tait assez simple.


Dans mon unité, il y avait quatre typographes et une salle de discussion spéciale où toutes les personnes intéressées ont jeté des puzzles pour la mise en page, et nous les avons triés lentement. En général, le système fonctionnait, mais il y avait bien sûr ses inconvénients.


Par exemple, une tâche peut être lancée, mais aucun des compositeurs n'a répondu au message. L'auteur de la tâche a recommencé à écrire dans le salon de discussion - disent-ils, qui prendra la tâche? De plus, il n'y avait aucune planification ni compréhension de qui faisait quoi, quand il avait été libéré et dans quels projets il était plongé.


Pour que les messages des auteurs ne restent pas sans réponse, même lorsque tout le monde est occupé, j'ai commencé à répondre à tous les messages et je me demande qui pourra prendre telle ou telle tâche quand. Dans le même temps, il a déterminé qui a participé à quels projets, qui sait quelles tâches sont les meilleures. Cela a duré environ un mois, le système a commencé à mieux fonctionner - une réaction instantanée aux tâches des clients complètement satisfaits.


Certes, cette approche n'a toujours pas apporté de réponses à de nombreuses questions. Par exemple, il était difficile de prévoir la charge, il n'y avait pas d'unité dans les approches, il n'y avait aucun type de planification, chacune était autonome et résolvait indépendamment son problème. En plus du chat, il n'y avait pas de point d'entrée unique dans la mise en page, il n'y avait personne pour discuter avec le nouveau projet, pour évaluer la conception, car il n'est pas clair qui travaillera dessus et quand.


Et lors d'une des réunions avec le leader, nous avons décidé d'organiser une nouvelle équipe de mise en page de tous les concepteurs de mise en page, avec qui nous avons partagé des tâches afin de construire des processus et de fournir la mise en page pour tous les projets.


Voici ce qui en est ressorti.


Construire une Ă©quipe


Éléments fournis: quatre typographes de différentes villes et même de pays. Plus de 30 projets sur la même pile, mais en raison de la nature des projets, souvent avec des architectures différentes, des versions différentes de la conception et des composants, différentes équipes de développement qui pratiquent parfois leurs approches.


Tout d'abord, nous avons créé un chat privé uniquement avec des concepteurs de mise en page. Cela vous permet de résoudre rapidement les problèmes d'équipe lorsque vous n'avez pas besoin de beaucoup d'urgence, et vous pouvez toujours poser une question, demander de l'aide à vos collègues ou revoir votre travail.


ContrĂ´le


Comment contrôler le travail des employés, s'ils ne sont pas assis à côté?


En général, il existe différents types de contrôle selon le niveau de compétences et le niveau de confiance envers l'employé. Je ne m'attarderai pas sur eux en détail, vous apprendrez tout vous-même.


J'ai eu de la chance - tous les gars étaient également bons et avaient par défaut une confiance de 100%. Par conséquent, le système était nécessaire non pas tant pour le contrôle que pour la synchronisation des actions et pour comprendre la situation dans son ensemble. Pour ce faire, nous avons introduit des appels quotidiens du matin d'une durée maximale de 10 minutes, au cours desquels chacun a dit ce qu'il avait fait hier et ce qu'il allait faire aujourd'hui.


Ces phrases ne servent qu'à la synchronisation par tâches et projets, elles n'impliquent pas une analyse des problèmes, des difficultés, des holivars ou d'autres problèmes - tout cela, si nécessaire, est soumis dans des phrases ou des discussions distinctes dans le chat. Il est très important de surveiller cela et d'arrêter toutes les tentatives de transfert de l'appel vers une conversation d'une heure sur la météo.


Cohérence du code


Nous recevons des tâches de projets complètement différents avec un code et une qualité différents, il était donc nécessaire de réaliser la livraison d'une mise en page unique de haut niveau pour tous les projets, quelles que soient les données source. Pour ce faire, à travers des discussions générales et des votes, nous avons développé des règles et des lignes directrices pour la mise en page, que nous respectons strictement au sein de notre équipe, et recommandons également à toutes les autres. Même l'ordre des propriétés est enregistré.


Oui, si vous écrivez une propriété CSS de couleur au-dessus de la largeur, vous obtiendrez un commentaire et votre PR ne sera pas grisé. Cela peut sembler étrange, car dans la plupart des cas, l'ordre des propriétés n'affectera pas le résultat final, mais nous nous souvenons: de nombreux projets, un seul niveau de qualité élevé. Par conséquent, nous devons avoir la commande maximale. Partout. Même l'ordre est dans l'ordre des propriétés.


Je dois dire tout de suite que c'était une bonne idée de fixer la commande. Il vous permet d'écrire des CSS plus structurés et réfléchis. Par exemple, il existe une règle pour regrouper les propriétés. Si vous écrivez display: flex, toutes les propriétés connexes (align-items, justification-content) doivent être décrites côte à côte pour faciliter la compréhension de ce qui se passe.


Maintenant, nous arrivons progressivement à la conclusion que nous mettons toutes les règles dans les linters pour réduire le nombre de commentaires non critiques sur l'examen, ainsi que pour permettre aux examinateurs de se concentrer sur des choses vraiment importantes, par exemple, l'architecture.


Au fait, nos configurations de linter sont dans le domaine public, peut-être vous seront-elles utiles. Téléchargez les configs .


Répartition des tâches


Donc, la communication est établie, les règles du jeu sont fixes, mais comment jouer? Pourquoi Vanya ne fait que des tâches simples, et Pete se complique, et même à partir d'un projet auquel personne n'a été impliqué depuis longtemps?


En effet, il existe des projets qui:


  • besoin constamment de mise en page;
  • ont constamment besoin de mise en page et tout change constamment;
  • qui ont Ă©tĂ© Ă©crits il y a longtemps et recommencent Ă  se dĂ©velopper.

Cela soulève une autre question: comment répartir les tâches de manière égale et équitable?


La justice est-elle nécessaire?


Vous pouvez utiliser la ressource administrative et dire de manière rigide: "Petya, vous faites ces tâches, personne ne les aime, mais pour l'instant nous allons prendre ces tâches intéressantes avec Vanya."


Bien sûr, cela peut être fait, et pendant un certain temps, cela fonctionnera même. Mais cela présente plusieurs inconvénients:


  1. Petya commence à nous détester un peu, ce qui signifie qu'il est moins impliqué dans le travail d'équipe;
  2. Petya peut un jour brûler et cesser de fumer, sans même prévenir à l'avance, et nous aurons un trou dans nos ressources;
  3. Petya avait la plus grande expertise dans les projets complexes, et maintenant chacun des autres aura besoin de beaucoup de temps pour comprendre les projets de Petit.

Il semble que vous ne devriez pas le faire. Mais que faire?


Vous devez d'abord sélectionner plusieurs groupes par lesquels vous pouvez interrompre toutes les tâches entrantes.


Cela ressemble Ă  ceci pour nous.


Les projets A, B et C génèrent constamment des centaines de tâches et sont prêts à nous fournir du travail pour l'année à venir. Et il y a d'autres projets qui viennent avec une ou deux tâches toutes les quelques semaines. En raison de ressources limitées, nous convenons qu'une personne travaille constamment sur les projets A, B et C, et la quatrième assume toutes les tâches des autres projets. Il semble que toutes les ressources soient distribuées, vous pouvez travailler.


Mais encore une fois, nous rencontrons un problème lorsqu'une personne qui travaille constamment sur le projet A n'a aucune idée de ce qui se passe dans le projet C.


Pour résoudre ce problème, nous avons introduit un service de deux semaines.


A partir de lundi et des deux semaines suivantes, Petya travaille sur le projet A, puis passe au projet B, puis C - il change donc régulièrement ses activités.


Cela ressemble Ă  ceci:


VanyaPetyaMishaAndrey
Projet A1ère et 2ème semaine3e et 4e semaine5 et 6 semaines7 et 8 semaines
Projet B3e et 4e semaine5 et 6 semaines7 et 8 semaines1ère et 2ème semaine
Projet C5 et 6 semaines7 et 8 semaines1ère et 2ème semaine3e et 4e semaine
Projet D7 et 8 semaines1ère et 2ème semaine3e et 4e semaine5 et 6 semaines

Qu'est-ce que cela nous donne? Tout d'abord, tous les gars sont également bien informés dans tous les projets et peuvent facilement se remplacer. Deuxièmement, il y a des projets plus intéressants et c'est leur devoir préféré, qui motive en outre, donne de la force et ne permet pas de s'épuiser du même travail.


De plus, afin de supprimer la réglementation manuelle, nous avons convenu que le projet lui-même fixe la priorité des travaux. Autrement dit, nous distinguons la personne et il exécute les tâches que le projet donne. C'est très pratique: nous n'avons pas besoin de prioriser l'équipe et de penser à la commande. Ceci est fait par le projet, son équipe et le chef de produit.


Certes, vous pouvez trouver le problème. Une personne comprend les tâches de tous les projets qui viennent irrégulièrement - celui qui ne travaille sur aucun des grands projets en service actuel.


Il semble qu'il puisse être bombardé de tâches, et les clients seront tirés de tous les côtés et, par conséquent, ne seront pas autorisés à travailler. Pour éliminer ce risque, nous avons une page spéciale avec de telles tâches. Lorsque la tâche suivante apparaît, elle est ajoutée à la fin de la liste.


Voici un exemple d'une telle page:


Page Liste des tâches

Toutes les tâches et leurs statuts y sont visibles. À tout moment, le client peut suivre les progrès et comprendre quand approximativement sa tâche ira au travail.


Bien sûr, tout le monde a les tâches les plus urgentes et tout le monde veut sortir de son tour. Surtout pour de telles situations, le mécanisme suivant a été inventé: si le client est "en feu" et qu'il veut donner sa tâche pour travailler plus vite, il doit s'entendre avec quelqu'un qui est sur la liste au dessus de lui. S'il est prêt à donner sa place - pas de problème, échangez les tâches de la liste.


Vous pensez peut-être que c'est un point plutôt faible qui devrait nous combler, mais cela fait maintenant six mois que ça marche.


Bien sûr, les situations peuvent être différentes, mais personne n'a annulé la réglementation manuelle et les ressources administratives;)


Contrôle qualité


Tout le monde fait des erreurs. Je n'ai pas encore vu un seul développeur ou concepteur de mise en page qui ne se soit jamais trompé. Comment minimiser le nombre de ces erreurs?


Pour ce faire, nous appliquons activement la pratique des revues de conception. Que comprend-il?


Lorsque le travail sur la mise en page est terminé, le concepteur de mise en page appelle le concepteur et lui montre le résultat du travail sur son écran. Cela vous permet de résoudre plusieurs problèmes à la fois:


  1. Le concepteur peut voir aussi rapidement que possible l'erreur du concepteur de mise en page et sa propre erreur si une inexactitude s'est glissée dans la mise en page.
  2. Résolvez rapidement les problèmes tels que «comment devrait-il être affiché lorsque vous survolez ou vous concentrez?». À moins, bien sûr, que ces conditions ne soient reflétées dans la conception.
  3. Et un gros plus supplémentaire: le concepteur peut voir que le résultat ne semble pas optimal et apporter des modifications en ligne.

Au tout début de la mise en œuvre de cette pratique, nous avions peur que le travail soit ralenti car:


  • le concepteur n'est pas en place;
  • le designer est malade et personne d'autre n'est au courant;
  • lors de l'examen, le concepteur a dĂ©cidĂ© de changer complètement la mise en page.

Mais dans la pratique, cette approche a bien fonctionné et nous l'avons mise en œuvre sur la plupart des projets.


Revue


Nous avons bien pompé notre équipe de mise en page, vous pouvez aller travailler! Mais non, il y a encore une chose. Nous avons adopté la pratique du contrôle croisé.


Cela signifie que n'importe qui peut revoir vos RP et laisser des commentaires à leur sujet. Seulement, pour être honnête, de nombreux développeurs n'aiment pas se plonger dans l'examen de la mise en page et sont prêts à mettre le «sans regarder» vers le haut - si seulement la mise en page passait le plus tôt possible et pouvait écrire plus de logique.


Pour éviter cela, nous avons une règle: chaque concepteur de mise en page doit ajouter tous les concepteurs de mise en page à toutes ses demandes de pool.


Et PR ne peut pas être gelé si vous n'avez pas reçu au moins un upruv d'un autre typographe. Pas mal, mais il semble qu'il y ait un risque d'embouteillages sous la forme d'un grand nombre de RP, car les employés peuvent voir le code de leurs collègues de manière intempestive, ce qui ralentira le travail.


Afin d'éviter cela, nous avons un rappel sur la nécessité de procéder à un examen de nos collègues deux fois par jour, à 10h00 et 15h00. Et quand vous allez dans la cachette, vous voyez combien de RP attendent votre analyse.


Exemple de rappel d'avis

Nous essayons de garder ce chiffre au minimum. Pour cela, nous avons une autre règle de bonne révision. Si vous avez parcouru le PR jusqu'au bout, il n'y a pas de conflits et il n'a pas le statut «en cours» - cela signifie que vous devez avoir une réaction: «up» ou «for revision». Si vous avez laissé des commentaires, mais n'avez pas indiqué votre position, cela signifie que vous n'avez pas complètement regardé les relations publiques.


De plus, il y a une responsabilité personnelle supplémentaire pour leurs demandes de pool. Qu'est-ce que cela signifie?


Vous avez fait la mise en page, tout est conforme à la mise en page, tout est beau, mais il n'y a pas de fonctionnalité. Et il est impossible de faire rouler un tel produit dans la prod. Donc, vous ne pouvez pas bloquer le développement. Et vous avez des relations publiques ouvertes, il y a des aruvs et il semble que vous ayez fait votre travail. De plus, le développeur vient à vous et dit: "Attendons quelques jours, je vais télécharger la logique directement dans votre branche - et travailler immédiatement la fonctionnalité et elle est relégable?" Mais non! Donc ça ne marche pas. Et ça ne devrait pas.


Le travail n'est pas considéré comme terminé tant que votre PR avec mise en page n'est pas désactivé. Que faire dans une telle situation? Oui, c'est très simple: le développeur crée sa propre branche, où il prévoit d'écrire la logique, et nous imitons la disposition dans sa branche. Bénéfice


Chaque typographe surveille indépendamment ses relations publiques et gère ces situations: lorsqu'il n'y a aucun endroit où geler, les versions ne sont pas collectées, l'entreprise a décidé de reporter la date de lancement, etc. Son travail n'est pas terminé tant que PR n'est pas mort.


De temps en temps, nous organisons une enquête sur les appels téléphoniques: qui a combien de RP ouverts et combien de RP doivent être examinés. Les nombres sont systématiquement inférieurs à 10, nous nous efforçons de devenir inférieurs à 5. De tels sondages confirment que les rappels automatiques dans le chat fonctionnent toujours et que les employés y répondent.


Maintenant, on a le sentiment que le travail est très bien construit, vous pouvez vous asseoir et regarder sans cesse comment les tâches sont transférées d'un statut à un autre (en passant, nous suivons strictement cela), mais qu'en est-il du développement? Composition des tableaux? Je ne sais pas que le Web ne s'arrête pas?


DĂ©veloppement


Afin que l'équipe se développe non seulement en termes d'expertise entre les projets, mais aussi en termes de compétences, nous avons un devoir hebdomadaire spécial appelé Green Flag. Si cette semaine, vous êtes un drapeau vert, vous passez du temps quotidiennement à chercher des informations utiles sur la composition, les approches ou simplement les technologies et jetez des liens vers des articles dans notre chat privé. Cela se fait généralement le matin ou immédiatement après le déjeuner.


Lien d'exemple d'article de chat

Des informations sont prises sur vos ressources préférées, sur le même "Habré" par exemple. C'est assez pratique, car vous savez que votre collègue envoie tous les jours des liens vers les meilleurs articles du chat, et il vous suffit de le lire le soir après le travail.


Il convient de le mentionner tout de suite: malgré le fait que tout le monde soutient cette activité, beaucoup oublient de le faire quotidiennement. Par conséquent, nous avons introduit un autre devoir, également hebdomadaire, qui est conçu pour motiver le drapeau vert à ne pas oublier nos devoirs. Et si vous oubliez toujours le drapeau vert, l'inspecteur peut se débarrasser de l'information. Intéressant, mais cette approche fonctionne sans échecs et parfois les deux participants jettent la validité dans le chat.


Si vous avez peur du nombre de devoirs, alors tout n'est pas si mal. Un employé stable a un devoir - c'est le projet sur lequel il travaille. Et périodiquement, une deuxième montre est ajoutée - le drapeau vert ou le motivateur du drapeau vert - qui, en fait, n'est qu'une formalité.


Résumé


Donc, nous venons de rassembler à partir de zéro une équipe de mise en page distribuée et, surtout, une équipe de travail. Souvenons-nous de ce qui nous a aidés:


  1. Le chat privé vous permet de résoudre rapidement tous les problèmes émergents.
  2. Les transactions quotidiennes vous aident Ă  savoir qui fait quoi et Ă  comprendre la situation dans son ensemble.
  3. Les règles de travail fixes et leur strict respect permettent de maintenir la cohérence du code dans tous les projets.
  4. Des quarts de travail de 24 heures sur 24 vous permettent d'être dans le contexte de tous les projets et d'assurer une répartition automatique et équitable des tâches.
  5. La revue de conception vous permet d'être sûr de la qualité du résultat qui parvient au client.
  6. Nous nous assurons que la revue est effectuée régulièrement et que son travail inachevé ne s'accumule pas.
  7. Chaque jour, le responsable jette de nouveaux articles sur le chat pour le développement, discute de nouvelles approches et pratiques, essaie, applique.

Tout cela nous aide à clore les tâches et à fournir la disposition de l'ensemble de l'unité. Et quelles sont les activités de vos équipes?

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


All Articles