Recherche de site Web

4 questions que les ingénieurs open source devraient poser pour atténuer les risques à grande échelle


Que faire avec un temps limité pour faire face à un nombre infini de choses qui peuvent mal tourner ? 

Chez Shopify, nous utilisons et maintenons de nombreux projets open source, et chaque année nous préparons le Black Friday Cyber Monday (BFCM) et d'autres événements à fort trafic pour nous assurer que nos commerçants peuvent vendre à leurs acheteurs. Pour ce faire, nous avons construit une plateforme d'infrastructure à grande échelle très complexe, interconnectée et distribuée à l'échelle mondiale, nécessitant des investissements technologiques réfléchis de la part d'un réseau d'équipes. Nous modifions le fonctionnement d’Internet, où aucune personne ne peut superviser l’intégralité de la conception et des détails à notre échelle.

Au cours de la BFCM 2022, nous avons traité 75,98 millions de requêtes par minute sur notre plateforme de commerce au maximum. Cela représente 1,27 million de requêtes par seconde. En travaillant à cette échelle dans un système complexe et interdépendant, il serait impossible d’identifier et d’atténuer tous les risques possibles. Cet article décompose un processus d'atténuation des risques de haut niveau en quatre questions qui peuvent être appliquées à presque tous les scénarios pour vous aider à tirer le meilleur parti de votre temps et de vos ressources disponibles.

1. Quels sont les risques ?

Pour éclairer les décisions d’atténuation, vous devez d’abord comprendre l’état actuel des choses. Nous élargissons notre éventail de connaissances en apprenant auprès de personnes de tous les coins de la plateforme. Nous organisons des exercices « ce qui pourrait mal se passer » (WCGW) dans le cadre desquels toute personne construisant une infrastructure ou intéressée par une infrastructure peut mettre en évidence un risque. Il peut s’agir de risques technologiques, de risques opérationnels ou autre chose. Disposer de cette liste non filtrée est un excellent moyen d'avoir une compréhension globale de ce qui pourrait arriver.

L'objectif ici est la visibilité.

2. Qu’est-ce qui mérite d’être atténué ?

Un bon brainstorming nous laisse avec une liste longue et intimidante de risques. Avec peu de temps pour régler les problèmes, la clé est de donner la priorité à ce qui est le plus important pour notre entreprise. Pour ce faire, nous votons sur les risques, puis réunissons des experts techniques pour discuter plus en détail des risques les plus élevés, y compris leur probabilité et leur gravité. Nous prenons des décisions sur ce qui doit être atténué et comment, et sur quelle équipe sera responsable de chaque élément d'action.

L'objectif ici est d'optimiser la façon dont nous passons notre temps.

3. Qui prend quelles décisions ?

Dans toute organisation, il y a des moments où attendre un consensus parfait n’est pas possible ou n’est pas efficace. Shopify évolue extrêmement rapidement car nous veillons à identifier les décideurs, puis leur donnons les moyens de recueillir des commentaires, de peser les risques/récompenses et de prendre une décision. Souvent, la décision est mieux prise par l'expert en la matière ou par celui qui supporte le plus d'avantages ou de répercussions, quelle que soit la direction que nous choisissons.

L'objectif ici est d'aligner les incitations et la responsabilité.

4. Comment communiquez-vous ?

Nous avançons rapidement, mais nous devons néanmoins tenir les parties prenantes et les proches collaborateurs informés. Nous résumons les principales conclusions et risques de nos exercices WCGW afin que nous soyons tous sur la même longueur d'onde concernant notre profil de risque. Cela peut inclure des risques clés ou des points de défaillance uniques. Nous communiquons excessivement afin d’être alignés et conscients et que les parties prenantes aient la possibilité d’intervenir.

L’objectif ici est l’alignement et la prise de conscience.

Résoudre les bonnes choses en cas d'incertitude

À la base de toutes ces questions se trouve l’incertitude qui règne dans notre environnement de travail. Vous ne disposez jamais de tous les faits ni ne savez exactement quels composants tomberont en panne, quand et comment. La meilleure façon de gérer l’incertitude est d’utiliser la probabilité.

Les joueurs de poker experts savent que les bons paris ne donnent pas toujours de bons résultats, et que les mauvais paris ne donnent pas toujours de mauvais résultats. Ce qui est important est de parier sur la probabilité des résultats, où, sur suffisamment de tours, vos résultats convergeront vers les attentes. Il en va de même en ingénierie, où nous faisons constamment des paris et en tirons des leçons. Les bons paris nécessitent de distinguer clairement la qualité de vos décisions par rapport aux résultats. Cela signifie ne pas surindexer les mauvaises décisions qui ont conduit à des résultats heureux ou les bonnes décisions qui se heurtent à des scénarios très malchanceux.

Savoir que nous ne pouvons pas tout contrôler nous aide également à rester calme, ce qui est essentiel pour faire preuve de bon jugement dans des situations de forte pression.

En matière de BFCM (et de vie en général), personne ne peut prédire l’avenir ni se protéger pleinement contre tous les risques. La question est : que changeriez-vous avec le recul ? Avec le recul, seriez-vous sûr d’avoir donné la priorité aux choses les plus importantes et d’avoir fait des paris réfléchis en utilisant les informations disponibles ? Avez-vous facilité des discussions significatives avec les bonnes personnes ? Pourriez-vous justifier vos actions auprès de vos clients et de leurs clients ?

Cet article a été initialement publié dans Planning in Bets : Risk Mitigation at Scale et est republié avec autorisation.

Articles connexes: