{"id":94520,"date":"2020-09-18T07:42:20","date_gmt":"2020-09-18T05:42:20","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/chto-pomoglo-nam-bystro-perestroitsya-na-onlajn-torgovlyu-v-novyh-usloviyah"},"modified":"2020-09-18T07:42:20","modified_gmt":"2020-09-18T05:42:20","slug":"chto-pomoglo-nam-bystro-perestroitsya-na-onlajn-torgovlyu-v-novyh-usloviyah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/chto-pomoglo-nam-bystro-perestroitsya-na-onlajn-torgovlyu-v-novyh-usloviyah","title":{"rendered":"Ce qui nous a aid\u00e9s \u00e0 passer rapidement au commerce en ligne dans les nouvelles conditions","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Bonjour !<\/p>\n<p>Je m'appelle Mikha\u00efl, je suis le directeur adjoint des technologies de l'information chez \u00ab Sportmaster \u00bb. Je veux partager une histoire sur la fa\u00e7on dont nous avons surmont\u00e9 les difficult\u00e9s survenues pendant la pand\u00e9mie.<\/p>\n<p>Dans les premiers jours de la nouvelle r\u00e9alit\u00e9, le format traditionnel de vente hors ligne de \u00ab Sportmaster \u00bb s'est fig\u00e9, et la charge sur notre canal en ligne, en particulier en ce qui concerne la livraison \u00e0 l'adresse des clients, a augment\u00e9 dix fois. En quelques semaines, nous avons transform\u00e9 un immense volume d'affaires hors ligne en ligne, adaptant le service aux besoins de nos clients.<\/p>\n<p>En gros, ce qui \u00e9tait essentiellement notre op\u00e9ration secondaire est devenu notre activit\u00e9 principale. L'importance de chaque commande en ligne a consid\u00e9rablement augment\u00e9. Nous devions sauvegarder chaque rouble que le client apportait \u00e0 l'entreprise.&nbsp;<\/p>\n<p><img decoding=\"async\" alt=\"Ce qui nous a aid\u00e9s \u00e0 passer rapidement au commerce en ligne dans les nouvelles conditions\" src=\"\/wp-content\/uploads\/2020\/09\/3e1dfc21636b29259fd29143e4a53f78.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Pour r\u00e9agir rapidement aux demandes des clients, nous avons ouvert un centre de contact suppl\u00e9mentaire dans le bureau principal de l'entreprise, et nous pouvons d\u00e9sormais traiter environ 285 000 appels par semaine. En m\u00eame temps, nous avons transform\u00e9 270 magasins en un nouveau format de travail sans contact et s\u00e9curis\u00e9, ce qui a permis aux clients de recevoir leurs commandes et aux employ\u00e9s de conserver leurs emplois.<\/p>\n<p>Au cours de la transformation, nous avons rencontr\u00e9 deux probl\u00e8mes majeurs. D'une part, la charge sur nos ressources en ligne a consid\u00e9rablement augment\u00e9 (Sergue\u00ef expliquera comment nous y avons fait face). D'autre part, le flux d'op\u00e9rations rares (avant COVID) a augment\u00e9 de mani\u00e8re exponentielle, ce qui a n\u00e9cessit\u00e9 un volume substantiel d'automatisation rapide. Pour r\u00e9soudre ce probl\u00e8me, nous avons d\u00fb red\u00e9ployer rapidement des ressources depuis des domaines qui \u00e9taient auparavant principaux. Elena expliquera comment nous avons g\u00e9r\u00e9 cela.<\/p>\n<h2>Exploitation des services en ligne<\/h2>\n<p><em>Kolessnikov Sergue\u00ef, responsable de l'exploitation de la boutique en ligne et des microservices<\/em><\/p>\n<p>Depuis le moment o\u00f9 nos magasins physiques ont commenc\u00e9 \u00e0 fermer leurs portes aux visiteurs, nous avons commenc\u00e9 \u00e0 constater une augmentation de m\u00e9triques telles que le nombre d'utilisateurs, le nombre de commandes pass\u00e9es dans notre application, le nombre de requ\u00eates aux applications.&nbsp;<\/p>\n<p><img decoding=\"async\" alt=\"Ce qui nous a aid\u00e9s \u00e0 passer rapidement au commerce en ligne dans les nouvelles conditions\" src=\"\/wp-content\/uploads\/2020\/09\/5094662d75314169328e124d0ae9f5b5.jpg\" style=\"display:block;margin: 0 auto;\" \/>Nombre de commandes du 18 au 31 mars<img decoding=\"async\" alt=\"Ce qui nous a aid\u00e9s \u00e0 passer rapidement au commerce en ligne dans les nouvelles conditions\" src=\"\/wp-content\/uploads\/2020\/09\/4714a5d5595042b66b33f5f93b002734.jpg\" style=\"display:block;margin: 0 auto;\" \/>Nombre de requ\u00eates aux microservices de paiement en ligne<img decoding=\"async\" alt=\"Ce qui nous a aid\u00e9s \u00e0 passer rapidement au commerce en ligne dans les nouvelles conditions\" src=\"\/wp-content\/uploads\/2020\/09\/9145afe051f8d4d4da0e00a69d469b92.jpg\" style=\"display:block;margin: 0 auto;\" \/>Nombre de commandes pass\u00e9es sur le site<\/p>\n<p>Dans le premier graphique, nous voyons que l'augmentation est d'environ 14 fois, dans le second \u2014 4 fois. Nous consid\u00e9rons que la m\u00e9trique du temps de r\u00e9ponse de nos applications est la plus r\u00e9v\u00e9latrice \u00e0 cet \u00e9gard.&nbsp;<\/p>\n<p><img decoding=\"async\" alt=\"Ce qui nous a aid\u00e9s \u00e0 passer rapidement au commerce en ligne dans les nouvelles conditions\" src=\"\/wp-content\/uploads\/2020\/09\/bfe187bea02c83ce9d9e3286c486f85b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Sur ce graphique, nous voyons la r\u00e9ponse des fronts et des applications, et pour nous, nous avons d\u00e9termin\u00e9 qu'il n'y avait pas eu de croissance significative.<\/p>\n<p>Tout d'abord, cela est li\u00e9 au fait que nous avons commenc\u00e9 les travaux pr\u00e9paratoires \u00e0 la fin de 2019. Actuellement, nos services sont r\u00e9serv\u00e9s, offrant une tol\u00e9rance aux pannes au niveau des serveurs physiques, des syst\u00e8mes de virtualisation, des conteneurs, ainsi que des services qui en d\u00e9pendent. De plus, la capacit\u00e9 de nos ressources serveur permet de supporter une charge multiple.<\/p>\n<p>L'outil principal qui nous a aid\u00e9s dans toute cette histoire a \u00e9t\u00e9 notre syst\u00e8me de surveillance. Cependant, il n'y a pas si longtemps, nous n'avions pas de syst\u00e8me uniforme capable de collecter des m\u00e9triques \u00e0 tous les niveaux, de l'\u00e9quipement physique et mat\u00e9riel aux m\u00e9triques commerciales.&nbsp;<\/p>\n<p>Formellement, la surveillance existait dans l'entreprise, mais en r\u00e8gle g\u00e9n\u00e9rale, elle \u00e9tait dispers\u00e9e et sous la responsabilit\u00e9 de d\u00e9partements sp\u00e9cifiques. En fait, lorsque survenait un incident, nous n'avions presque jamais une compr\u00e9hension unique de ce qui s'\u00e9tait pass\u00e9, il n'y avait pas d'information, ce qui entra\u00eenait souvent une course en rond pour trouver et localiser le probl\u00e8me afin de le r\u00e9soudre.<\/p>\n<p>\u00c0 un moment donn\u00e9, nous avons pens\u00e9 et d\u00e9cid\u00e9 qu'il \u00e9tait temps d'arr\u00eater cela \u2014 nous avions besoin d'un syst\u00e8me unique pour voir l'ensemble du tableau. Les principales technologies de notre pile incluent Zabbix comme centre d'alerte et de stockage des m\u00e9triques, Prometheus pour la collecte et le stockage des m\u00e9triques des applications, la stack ELK pour la journalisation et le stockage des donn\u00e9es de tout le syst\u00e8me de surveillance, ainsi que Grafana pour la visualisation, Swagger, Docker et d'autres outils utiles et d\u00e9j\u00e0 connus de vous.<\/p>\n<p>Nous n'utilisons pas seulement les technologies disponibles sur le march\u00e9, mais nous d\u00e9veloppons aussi certaines choses nous-m\u00eames. Par exemple, nous cr\u00e9ons des services pour int\u00e9grer les syst\u00e8mes entre eux, \u00e0 savoir une sorte d'API pour la collecte de m\u00e9triques. De plus, nous travaillons sur nos propres syst\u00e8mes de surveillance \u2014 au niveau des m\u00e9triques commerciales, nous utilisons des tests d'interface utilisateur. Nous avons \u00e9galement un bot sur Telegram pour notifier les \u00e9quipes.<\/p>\n<p>De plus, nous essayons de rendre le syst\u00e8me de surveillance accessible aux \u00e9quipes, afin qu'elles puissent stocker leurs m\u00e9triques et travailler avec elles de mani\u00e8re autonome, y compris configurer des alertes sur certaines m\u00e9triques sp\u00e9cifiques ayant une utilit\u00e9 limit\u00e9e.&nbsp;<\/p>\n<p>Au sein de tout le syst\u00e8me, nous visons la proactivit\u00e9 et une localisation rapide des incidents. De plus, le nombre de nos microservices et syst\u00e8mes a consid\u00e9rablement augment\u00e9 ces derniers temps, ce qui accro\u00eet \u00e9galement le nombre d'int\u00e9grations. Dans le cadre de l'optimisation du processus de diagnostic des incidents au niveau de l'int\u00e9gration, nous d\u00e9veloppons un syst\u00e8me permettant d'effectuer des v\u00e9rifications crois\u00e9es entre syst\u00e8mes et de fournir des r\u00e9sultats, ce qui permet d'identifier les principaux probl\u00e8mes li\u00e9s aux imports et \u00e0 l'interaction entre les syst\u00e8mes.&nbsp;<\/p>\n<p>Naturellement, il nous reste encore des progr\u00e8s \u00e0 faire et \u00e0 d\u00e9velopper en mati\u00e8re d'exploitation des syst\u00e8mes, et nous travaillons activement l\u00e0-dessus. Vous pouvez en savoir plus sur notre syst\u00e8me de surveillance. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/sportmaster_lab\/blog\/517678\/\"><u>ici<\/u><\/a><\/noindex>.&nbsp;<\/p>\n<h2>Essais techniques&nbsp;<\/h2>\n<p><em>Sergue\u00ef Orlov, dirige le centre de comp\u00e9tence en d\u00e9veloppement web et mobile<\/em><\/p>\n<p>Depuis la fermeture des magasins physiques, nous avons d\u00fb faire face \u00e0 divers d\u00e9fis en mati\u00e8re de d\u00e9veloppement. En premier lieu, l'augmentation de la charge elle-m\u00eame. Il est \u00e9vident que si des mesures appropri\u00e9es ne sont pas prises, sous une forte charge, le syst\u00e8me peut se transformer tristement en citrouille, soit en d\u00e9gringolant en performance, soit en perdant compl\u00e8tement son efficacit\u00e9.<\/p>\n<p>Le deuxi\u00e8me aspect, un peu moins \u00e9vident, est que le syst\u00e8me devait \u00eatre modifi\u00e9 tr\u00e8s rapidement sous une forte charge, en s'adaptant aux changements des processus d'affaires. Parfois plusieurs fois par jour. Dans de nombreuses entreprises, il existe une r\u00e8gle selon laquelle, lors de grandes activit\u00e9s marketing, il ne faut apporter aucune modification au syst\u00e8me. Absolute aucune, laissez-le fonctionner, tant qu'il fonctionne.<\/p>\n<p>Et pour nous, c'\u00e9tait en quelque sorte un Black Friday sans fin, pendant lequel il fallait changer le syst\u00e8me. Et chaque erreur, probl\u00e8me, ou \u00e9chec dans le syst\u00e8me aurait co\u00fbt\u00e9 cher \u00e0 l'entreprise.<\/p>\n<p>Pour devancer, je dirai que nous avons r\u00e9ussi \u00e0 faire face \u00e0 ces d\u00e9fis, tous les syst\u00e8mes ont support\u00e9 la charge, se sont facilement redimensionn\u00e9s et nous n'avons pas eu de pannes techniques majeures.<\/p>\n<p>Il existe quatre piliers sur lesquels repose la capacit\u00e9 d'un syst\u00e8me \u00e0 supporter une charge \u00e9lev\u00e9e et soudaine. Le premier d'entre eux est la surveillance, dont vous avez lu pr\u00e9c\u00e9demment. Sans un syst\u00e8me de surveillance bien \u00e9tabli, il est presque impossible de trouver les goulets d'\u00e9tranglement du syst\u00e8me. Un bon syst\u00e8me de surveillance est comme des v\u00eatements de maison, il doit \u00eatre confortable et adapt\u00e9 \u00e0 vos besoins.<\/p>\n<p>Le deuxi\u00e8me aspect est le test. Nous prenons ce point tr\u00e8s au s\u00e9rieux : nous \u00e9crivons \u00e0 la fois des tests unitaires classiques, des tests d'int\u00e9gration, des tests de charge et bien d'autres pour chaque syst\u00e8me. Nous r\u00e9digeons \u00e9galement une strat\u00e9gie de test et nous nous effor\u00e7ons d'atteindre un niveau de test tel que les contr\u00f4les manuels ne soient plus n\u00e9cessaires.<\/p>\n<p>Le troisi\u00e8me pilier est le pipeline CI\/CD. Les processus de construction, de test et de d\u00e9ploiement de l'application doivent \u00eatre le plus automatis\u00e9s possible, sans aucune intervention manuelle. La th\u00e9matique du pipeline CI\/CD est assez vaste, et je ne vais l'aborder qu'en surface. Il suffit de mentionner que nous avons une liste de contr\u00f4le pour le pipeline CI\/CD, par laquelle chaque \u00e9quipe produit passe avec l'aide de centres de comp\u00e9tence.<\/p>\n<p><img decoding=\"async\" alt=\"Ce qui nous a aid\u00e9s \u00e0 passer rapidement au commerce en ligne dans les nouvelles conditions\" src=\"\/wp-content\/uploads\/2020\/09\/fabee1de52c10790c33bb2d08935a657.jpg\" style=\"display:block;margin: 0 auto;\" \/>Voici la liste de contr\u00f4le<\/p>\n<p>Cela permet d'atteindre de nombreux objectifs. Il s'agit de la version API, des fonctionnalit\u00e9s de commutation pour \u00e9viter les lancements en s\u00e9rie, et de la couverture des diff\u00e9rents tests \u00e0 un niveau o\u00f9 les tests sont enti\u00e8rement automatis\u00e9s, rendant les d\u00e9ploiements transparents, et bien plus encore.<\/p>\n<p>Le quatri\u00e8me pilier est constitu\u00e9 des principes architecturaux et des solutions techniques. On peut parler longuement de l'architecture, mais je souhaite souligner quelques principes sur lesquels j'aimerais attirer votre attention.<\/p>\n<p>Tout d'abord, il est essentiel de choisir des outils sp\u00e9cialis\u00e9s en fonction des t\u00e2ches sp\u00e9cifiques. Cela semble \u00e9vident, et il est clair que pour enfoncer des clous, il faut un marteau, et pour d\u00e9monter une montre, des tournevis sp\u00e9cialis\u00e9s. Cependant, dans notre \u00e9poque actuelle, de nombreux outils tendent vers l'universalit\u00e9, afin de toucher un maximum d'utilisateurs : bases de donn\u00e9es, caches, frameworks, et autres. Prenons par exemple la base de donn\u00e9es MongoDB qui fonctionne avec des transactions multi-documents, alors que la base de donn\u00e9es Oracle travaille avec des JSON. On pourrait penser que tout peut \u00eatre utilis\u00e9 pour tout. Mais si nous pr\u00f4nons la performance, il est crucial de comprendre clairement les forces et les faiblesses de chaque outil, et de n'utiliser que ceux qui conviennent \u00e0 notre classe de t\u00e2ches.&nbsp;<\/p>\n<p>Deuxi\u00e8mement, lors de la conception des syst\u00e8mes, chaque augmentation de la complexit\u00e9 doit \u00eatre justifi\u00e9e. Nous devons toujours garder cela \u00e0 l'esprit, le principe du faible couplage est bien connu. Je pense qu'il doit \u00eatre appliqu\u00e9 \u00e0 la fois au niveau de chaque service, au niveau de l'ensemble du syst\u00e8me et au niveau de l'architecture globale. Il est \u00e9galement important que chaque composant du syst\u00e8me puisse se mettre \u00e0 l'\u00e9chelle horizontalement face \u00e0 la charge. Disposer de cette capacit\u00e9 rendra le processus d'escalade beaucoup plus simple.<\/p>\n<p>Concernant les solutions techniques, nous avons demand\u00e9 aux \u00e9quipes produit de pr\u00e9parer un nouvel ensemble de recommandations, d'id\u00e9es et de solutions qu'elles ont mises en \u0153uvre dans le cadre de la pr\u00e9paration de la prochaine vague de charge.<\/p>\n<h2>Caches<\/h2>\n<p>Il est n\u00e9cessaire d'aborder consciemment le choix entre caches locaux et r\u00e9partis. Parfois, il peut \u00eatre judicieux d'utiliser les deux dans un m\u00eame syst\u00e8me. Par exemple, nous avons des syst\u00e8mes o\u00f9 une partie des donn\u00e9es est essentiellement un cache d'affichage, c'est-\u00e0-dire que la source de mises \u00e0 jour se trouve en dehors du syst\u00e8me lui-m\u00eame, et ces donn\u00e9es ne sont pas modifi\u00e9es par le syst\u00e8me. Pour cette approche, nous utilisons un cache local Caffeine.&nbsp;<\/p>\n<p>Il existe \u00e9galement des donn\u00e9es que le syst\u00e8me modifie activement pendant son fonctionnement, et c'est ici que nous appliquons un cache distribu\u00e9 avec Hazelcast. Cette approche nous permet de tirer parti des avantages d'un cache distribu\u00e9 l\u00e0 o\u00f9 ils sont r\u00e9ellement n\u00e9cessaires, tout en minimisant les frais de service li\u00e9s \u00e0 la circulation des donn\u00e9es du cluster Hazelcast quand nous pouvons faire sans. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/sportmaster_lab\/blog\/490912\/\"><u>ici <\/u><\/a><\/noindex>et <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/sportmaster_lab\/blog\/504400\/\"><u>ici<\/u><\/a><\/noindex>.<\/p>\n<p>De plus, le changement de s\u00e9rialiseur pour Kryo dans Hazelcast nous a donn\u00e9 un bon gain. Le passage de ReplicatedMap \u00e0 IMap + Near Cache dans Hazelcast nous a permis de minimiser le mouvement des donn\u00e9es dans le cluster.&nbsp;<\/p>\n<p>Un petit conseil : lors d'une invalidation massive du cache, il est parfois utile d'appliquer une strat\u00e9gie de pr\u00e9chauffage d'un deuxi\u00e8me cache avant de basculer vers celui-ci. Il semblerait que cette approche entra\u00eene une double consommation de m\u00e9moire, mais en pratique, dans les syst\u00e8mes o\u00f9 cela a \u00e9t\u00e9 exp\u00e9riment\u00e9, la consommation de m\u00e9moire a diminu\u00e9.<\/p>\n<h2>Stack r\u00e9actif<\/h2>\n<p>Nous utilisons le stack r\u00e9actif d\u00e9j\u00e0 dans un nombre assez important de syst\u00e8mes. Dans notre cas, il s'agit de Webflux ou de Kotlin avec des coroutines. Le stack r\u00e9actif s'av\u00e8re particuli\u00e8rement utile lorsque nous attendons des op\u00e9rations d'input-output lentes. Par exemple, lors des appels de services lents, le travail avec le syst\u00e8me de fichiers ou les syst\u00e8mes de stockage.<\/p>\n<p>Le principe le plus important est d'\u00e9viter les appels bloquants. Sous le capot des frameworks r\u00e9actifs, il y a un nombre r\u00e9duit de threads de service actifs. Si nous faisons un appel bloquant direct non prudent comme avec un pilote JDBC, le syst\u00e8me s'arr\u00eate simplement.&nbsp;<\/p>\n<p>Essayez de transformer les erreurs en vos propres exceptions d'ex\u00e9cution. Le fil d'ex\u00e9cution r\u00e9el du programme se d\u00e9place vers des frameworks r\u00e9actifs, ce qui rend l'ex\u00e9cution du code non lin\u00e9aire. En cons\u00e9quence, il est tr\u00e8s difficile de diagnostiquer les probl\u00e8mes en se basant sur les traces de pile. Une solution serait de cr\u00e9er des exceptions d'ex\u00e9cution claires et objectives pour chaque erreur.<\/p>\n<h2>Elasticsearch<\/h2>\n<p>Lors de l'utilisation d'Elasticsearch, ne s\u00e9lectionnez pas de donn\u00e9es non utilis\u00e9es. C'est, en th\u00e9orie, un conseil tr\u00e8s simple, mais c'est souvent ce que l'on oublie. Si vous devez s\u00e9lectionner plus de 10 000 enregistrements \u00e0 la fois, vous devez utiliser Scroll. Pour faire une analogie, cela ressemble un peu \u00e0 un curseur dans une base de donn\u00e9es relationnelle.&nbsp;<\/p>\n<p>N'utilisez pas postfilter sans n\u00e9cessit\u00e9. Lors de la gestion de grandes quantit\u00e9s de donn\u00e9es dans la s\u00e9lection principale, cette op\u00e9ration surcharge fortement la base de donn\u00e9es.&nbsp;<\/p>\n<p>Utilisez des op\u00e9rations bulk l\u00e0 o\u00f9 c'est applicable.<\/p>\n<h2>API<\/h2>\n<p>Lors de la conception d'API, prenez en compte les exigences de minimisation des donn\u00e9es transmises. Cela est particuli\u00e8rement pertinent lors de l'interfa\u00e7age avec le front : c'est pr\u00e9cis\u00e9ment \u00e0 cette jonction que nous sortons des canaux de nos centres de donn\u00e9es et travaillons sur le canal reliant le client \u00e0 nous. Si des probl\u00e8mes mineurs surviennent, un trafic trop \u00e9lev\u00e9 entra\u00eene une exp\u00e9rience utilisateur n\u00e9gative.<\/p>\n<p>Et enfin, ne d\u00e9versez pas toutes vos donn\u00e9es, abordez clairement le contrat entre les consommateurs et les fournisseurs.<\/p>\n<h2>Transformation organisationnelle<\/h2>\n<p><em>Elena Erochkina, directrice adjointe des TI<\/em><\/p>\n<p>Au moment o\u00f9 le confinement a eu lieu et qu'il est devenu n\u00e9cessaire d'acc\u00e9l\u00e9rer le d\u00e9veloppement en ligne et d'impl\u00e9menter des services omnicanaux, nous \u00e9tions d\u00e9j\u00e0 en cours de transformation organisationnelle.&nbsp;<\/p>\n<p>Une partie de notre structure a \u00e9t\u00e9 transf\u00e9r\u00e9e \u00e0 un fonctionnement bas\u00e9 sur des principes et des pratiques ax\u00e9s sur le produit. Des \u00e9quipes se sont form\u00e9es pour \u00eatre responsables du fonctionnement et du d\u00e9veloppement de chaque produit. Les employ\u00e9s de ces \u00e9quipes sont pleinement impliqu\u00e9s \u00e0 100% et organisent leur travail selon Scrum ou Kanban, selon ce qui leur convient le mieux, configurent le pipeline de d\u00e9ploiement, mettent en \u0153uvre des pratiques techniques, des pratiques d'assurance qualit\u00e9 et bien d'autres choses.<\/p>\n<p>Par chance, la majorit\u00e9 de ces \u00e9quipes produit \u00e9taient d\u00e9j\u00e0 dans le domaine des services en ligne et omnicanaux. Cela nous a permis de passer en mode de t\u00e9l\u00e9travail en un temps record (s\u00e9rieusement, litt\u00e9ralement en deux jours) sans perte d'efficacit\u00e9. Le processus mis en place nous a permis de nous adapter rapidement aux nouvelles conditions de travail et de maintenir un rythme \u00e9lev\u00e9 de livraison de nouvelles fonctionnalit\u00e9s.<\/p>\n<p>De plus, nous avons ressenti le besoin de renforcer les \u00e9quipes qui sont \u00e0 l'avant-garde du commerce en ligne. \u00c0 ce moment-l\u00e0, il est devenu clair que nous pouvions le faire uniquement avec des ressources internes. Environ 50 personnes ont chang\u00e9 de domaine de travail en deux semaines et se sont int\u00e9gr\u00e9es au travail sur un nouveau produit pour elles.&nbsp;<\/p>\n<p>Pour cela, aucun effort de gestion sp\u00e9cial n'\u00e9tait n\u00e9cessaire, car en plus de l'organisation de notre propre processus, de l'am\u00e9lioration technique du produit, de la mise en \u0153uvre de pratiques d'assurance qualit\u00e9, nous enseignons \u00e0 nos \u00e9quipes l'auto-organisation \u2014 g\u00e9rer leur propre processus de production sans avoir recours \u00e0 des ressources administratives.<\/p>\n<p>Nous avons pu concentrer notre ressource de gestion exactement l\u00e0 o\u00f9 cela \u00e9tait n\u00e9cessaire \u00e0 ce moment-l\u00e0, - sur la coordination avec les affaires : Qu'est-ce qui est important pour notre client en ce moment, quelle fonctionnalit\u00e9 doit \u00eatre mise en \u0153uvre en premier, que devons-nous faire pour augmenter notre capacit\u00e9 en mati\u00e8re de livraison et de traitement des commandes. Tout cela, ainsi qu'un mod\u00e8le de r\u00f4le clair, nous a permis, durant cette p\u00e9riode, de charger nos flux de production de cr\u00e9ation de valeur avec ce qui est vraiment important et n\u00e9cessaire.&nbsp;<\/p>\n<p>Il est \u00e9vident que dans le cadre du travail \u00e0 distance et d'un rythme de changement \u00e9lev\u00e9, o\u00f9 la performance de chaque individu impacte les indicateurs \u00e9conomiques, il n'est pas possible de se fier uniquement \u00e0 des ressentis internes du genre \u00ab Est-ce que tout va bien ? \u00c7a semble aller \u00bb. Des m\u00e9triques objectives du processus de production sont n\u00e9cessaires. Nous en avons, elles sont accessibles \u00e0 tous ceux qui s'int\u00e9ressent aux m\u00e9triques des \u00e9quipes produit. Avant tout, \u00e0 l'\u00e9quipe elle-m\u00eame, aux affaires, aux partenaires et \u00e0 la direction.<\/p>\n<p>Tous les quinze jours, un statut est organis\u00e9 avec chaque \u00e9quipe, o\u00f9 pendant 10 minutes, les m\u00e9triques sont analys\u00e9es, les goulets d'\u00e9tranglement du processus de production identifi\u00e9s et une solution collective est \u00e9labor\u00e9e : que peut-on faire pour \u00e9liminer ces goulets d'\u00e9tranglement. C'est \u00e9galement l'occasion de demander de l'aide \u00e0 la direction si un probl\u00e8me identifi\u00e9 \u00e9chappe \u00e0 l'influence des \u00e9quipes ou n\u00e9cessite l'expertise de coll\u00e8gues qui ont peut-\u00eatre d\u00e9j\u00e0 rencontr\u00e9 un probl\u00e8me similaire.<\/p>\n<p>N\u00e9anmoins, nous comprenons que pour r\u00e9aliser des acc\u00e9l\u00e9rations significatives (exactement tel est notre objectif), nous devons encore apprendre et mettre en \u0153uvre beaucoup de choses dans notre travail quotidien. Actuellement, nous continuons \u00e0 \u00e9tendre notre approche produit \u00e0 d'autres \u00e9quipes et \u00e0 de nouveaux produits. Pour cela, nous avons d\u00fb adopter un nouveau format pour nous : une \u00e9cole en ligne pour m\u00e9thodologistes.<\/p>\n<p>Les m\u00e9thodologistes, ces personnes qui aident les \u00e9quipes \u00e0 structurer le processus, \u00e0 \u00e9tablir des communications et \u00e0 am\u00e9liorer l'efficacit\u00e9 du travail, sont en r\u00e9alit\u00e9 des agents de changement. En ce moment, les dipl\u00f4m\u00e9s de notre premi\u00e8re promotion travaillent avec des \u00e9quipes et les aident \u00e0 r\u00e9ussir.&nbsp;<\/p>\n<p>Je pense que la situation actuelle ouvre pour nous des opportunit\u00e9s et des perspectives que nous ne r\u00e9alisons peut-\u00eatre pas encore pleinement. Mais l'exp\u00e9rience et la pratique que nous acqu\u00e9rons en ce moment confirment que nous avons choisi la bonne voie de d\u00e9veloppement, et nous ne manquerons pas \u00e0 l'avenir ces nouvelles opportunit\u00e9s, ce qui nous permettra de r\u00e9pondre efficacement aux d\u00e9fis qui se pr\u00e9senteront \u00e0 \u2018Sportmaster\u2019.<\/p>\n<h3>Conclusions<\/h3>\n<p>Pendant cette p\u00e9riode difficile, nous avons formul\u00e9 les principaux principes sur lesquels repose le d\u00e9veloppement de logiciels, qui, je pense, seront pertinents pour chaque entreprise qui s\u2019y consacre.<\/p>\n<p><strong>Les gens<\/strong>. C'est l\u00e0-dessus que tout repose. Les employ\u00e9s doivent prendre plaisir \u00e0 travailler, comprendre les objectifs de l'entreprise et des produits sur lesquels ils travaillent. Et, bien s\u00fbr, pouvoir se d\u00e9velopper professionnellement.&nbsp;<\/p>\n<p><strong>Technologie<\/strong>. Il est essentiel que l'entreprise approche de mani\u00e8re m\u00fbre travail avec sa pile technologique et d\u00e9veloppe des comp\u00e9tences l\u00e0 o\u00f9 cela est vraiment n\u00e9cessaire. Cela semble tr\u00e8s simple et \u00e9vident. Et cela est souvent ignor\u00e9.<\/p>\n<p><strong>Processus<\/strong>. Il est important de bien structurer le travail des \u00e9quipes produit et des centres de comp\u00e9tences, d'\u00e9tablir des interactions avec les affaires afin de travailler avec elles en tant que partenaires.<\/p>\n<\/p>\n<p>En gros, c'est ainsi que nous avons surv\u00e9cu. Le principal postulat de notre \u00e9poque a \u00e9t\u00e9 confirm\u00e9 une fois de plus, en frappant sur le front.<\/p>\n<p>M\u00eame si vous \u00eates une grande entreprise physique avec de nombreux magasins et une multitude de villes pr\u00e9sentes, d\u00e9veloppez votre pr\u00e9sence en ligne. Ce n'est pas seulement un canal de vente suppl\u00e9mentaire ou une belle application par laquelle vous pouvez acheter quelque chose (et aussi parce que les concurrents en ont une belle aussi). Ce n'est pas une roue de secours pour les jours de temp\u00eate.<\/p>\n<p>C'est une n\u00e9cessit\u00e9 absolue. \u00c0 laquelle non seulement vos capacit\u00e9s techniques et votre infrastructure doivent \u00eatre pr\u00eates, mais aussi vos personnes et vos processus. Apr\u00e8s tout, il est possible d'acheter rapidement de la m\u00e9moire, de l'espace, de d\u00e9ployer de nouvelles instances et autres en quelques heures. Mais les personnes et les processus doivent \u00eatre pr\u00e9par\u00e9s \u00e0 cela \u00e0 l'avance.<\/p>\n<\/p>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/sportmaster_lab\/blog\/519376\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442! \u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u041c\u0438\u0445\u0430\u0438\u043b, \u044f \u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u043e \u0418\u0422 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u00ab\u0421\u043f\u043e\u0440\u0442\u043c\u0430\u0441\u0442\u0435\u0440\u00bb. \u042f \u0445\u043e\u0447\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u0435\u0439 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u044b \u0441\u043f\u0440\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u0441 \u0442\u0440\u0443\u0434\u043d\u043e\u0441\u0442\u044f\u043c\u0438, \u0432\u043e\u0437\u043d\u0438\u043a\u0448\u0438\u043c\u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0430\u043d\u0434\u0435\u043c\u0438\u0438. \u0412 \u043f\u0435\u0440\u0432\u044b\u0435 \u0434\u043d\u0438 \u043d\u043e\u0432\u044b\u0445 \u0440\u0435\u0430\u043b\u0438\u0439 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u043e\u0444\u043b\u0430\u0439\u043d-\u0442\u043e\u0440\u0433\u043e\u0432\u043b\u0438 \u00ab\u0421\u043f\u043e\u0440\u0442\u043c\u0430\u0441\u0442\u0435\u0440\u0430\u00bb \u0437\u0430\u043c\u0435\u0440, \u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u043d\u0430\u0448 \u043e\u043d\u043b\u0430\u0439\u043d-\u043a\u0430\u043d\u0430\u043b, \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0432 \u0447\u0430\u0441\u0442\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0443, \u0432\u043e\u0437\u0440\u043e\u0441\u043b\u0430 \u0432 10 \u0440\u0430\u0437. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":94521,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-94520","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442!\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u041c\u0438\u0445\u0430\u0438\u043b, \u044f \u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u043e \u0418\u0422 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u00ab\u0421\u043f\u043e\u0440\u0442\u043c\u0430\u0441\u0442\u0435\u0440\u00bb.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/chto-pomoglo-nam-bystro-perestroitsya-na-onlajn-torgovlyu-v-novyh-usloviyah\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0427\u0442\u043e \u043f\u043e\u043c\u043e\u0433\u043b\u043e \u043d\u0430\u043c \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0435\u0440\u0435\u0441\u0442\u0440\u043e\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043e\u043d\u043b\u0430\u0439\u043d-\u0442\u043e\u0440\u0433\u043e\u0432\u043b\u044e \u0432 \u043d\u043e\u0432\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442!\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u041c\u0438\u0445\u0430\u0438\u043b, \u044f \u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u043e \u0418\u0422 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u00ab\u0421\u043f\u043e\u0440\u0442\u043c\u0430\u0441\u0442\u0435\u0440\u00bb.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/chto-pomoglo-nam-bystro-perestroitsya-na-onlajn-torgovlyu-v-novyh-usloviyah\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-09-18T05:42:20+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-18T05:42:20+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Ce qui nous a permis de nous r\u00e9organiser rapidement pour le commerce en ligne dans les nouvelles conditions | ProHoster","description":"Bonjour ! Je m'appelle Mikha\u00efl, je suis directeur adjoint des TI chez \"Sportmaster\".","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/chto-pomoglo-nam-bystro-perestroitsya-na-onlajn-torgovlyu-v-novyh-usloviyah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0427\u0442\u043e \u043f\u043e\u043c\u043e\u0433\u043b\u043e \u043d\u0430\u043c \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0435\u0440\u0435\u0441\u0442\u0440\u043e\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043e\u043d\u043b\u0430\u0439\u043d-\u0442\u043e\u0440\u0433\u043e\u0432\u043b\u044e \u0432 \u043d\u043e\u0432\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445 | ProHoster","og:description":"\u041f\u0440\u0438\u0432\u0435\u0442!\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u041c\u0438\u0445\u0430\u0438\u043b, \u044f \u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u0435\u043b\u044c \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u043e \u0418\u0422 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u00ab\u0421\u043f\u043e\u0440\u0442\u043c\u0430\u0441\u0442\u0435\u0440\u00bb.","og:url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/chto-pomoglo-nam-bystro-perestroitsya-na-onlajn-torgovlyu-v-novyh-usloviyah","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-09-18T05:42:20+00:00","article:modified_time":"2020-09-18T05:42:20+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"94520","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:25:23","updated":"2022-09-29 04:36:15","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/94520","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=94520"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/94520\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/94521"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=94520"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=94520"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=94520"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}