Comment Linear a tiré parti d’une attaque DDoS

La plupart du temps, l’équipe de Linear passe ses journées à aider les entreprises à fluidifier la gestion de leurs services d'assistance et la conduite de projets pour les aider à créer de meilleurs logiciels. Mais parfois, tout ne se passe pas comme prévu…
Partager Comment Linear a tiré parti d’une attaque DDoS




Le 13 octobre 2022, le site de Linear a été victime d’une attaque DDoS (ou attaque par déni de service) qui a lui a coûté sa page d’accueil. Grâce à quelques tours de passe-passe et une bonne dose d’inspiration, l’équipe a fait de ce problème une opportunité : elle a recréé sa page d’accueil à partir de fichiers Figma, et a organisé sans le vouloir ce qui restera sans doute une des meilleures Figma parties de tous les temps. Nous avons demandé aux membres de l’équipe comment tout cela s'était déroulé et quels enseignements ils en avaient tirés.

Quelques jours avant le lancement de la nouvelle page d’accueil, j’avais tweeté que nos fichiers Figma étaient quasiment pleins. Cela faisait quelques mois qu’on testait différents designs, et il y avait énormément de frames et d’images en HD, mais aussi toutes nos sources d’inspiration et nos itérations. J’ai donc partagé une image qui montrait le peu de mémoire encore disponible et j’ai identifié Edgar (un des designers de l’équipe) pour essayer de lui faire gagner quelques abonnés Twitter. J’avais aussi envie de donner un aperçu de nos coulisses au moment où on développait ces nouvelles idées.

En général, nous travaillons sur nos redesigns en quelques soirées, mais cette fois-ci, l’équipe était sur le pont depuis plus longtemps. À chaque fois, le tout prenait forme dans les dernières 24 heures. Mais ça valait le coup : la réception était bonne et ça créait l’événement sur les réseaux.
Attaque DDoS
Une attaque DDoS, ou attaque par déni de service distribué, est une tentative malveillante de perturbation du trafic normal d'un serveur, d'un service ou d'un réseau ciblé. L’idée est d’inonder un réseau ou son infrastructure avec de nombreuses connexions Internet.
Hélas, le lendemain nous avons reçu des rapports révélant que le site était en panne. Avec quelques collègues, nous avons essayé de trouver la source du problème. Au début, nous pensions que cela venait du redesign – peut-être qu’un petit changement avait mis le site en panne. À force de chercher, nous avons fini par comprendre ça venait d’une attaque DDoS, ce qui n’est pas rare de nos jours.
La priorité des priorités a été de donner accès à l’application à nos utilisateurs, ce que nous avons pu faire en les redirigeant vers la page de connexion quand ils se retrouvaient sur une de nos pages hub. Sur les réseaux sociaux, les gens parlaient encore de notre nouvelle landing page, mais quand ils cliquaient pour se rendre sur notre site, ils ne la voyaient pas. Ils atterrissaient directement sur notre page de connexion, ce qui était pour le moins décevant.

Jori nous a envoyé ce message : « Et si on mettait en ligne le fichier Figma avec tous nos designs ? » Et j’ai répondu : « OK, on y va ! »

Edgar et Paco hésitaient un peu. Mais je leur ai dit de me faire confiance…

Comme je le disais, il y a eu beaucoup de changements dans les dernières 24 heures avant la mise en ligne du site, et le fichier Figma ne les reflétait pas tous. Avec Edgar, nous avons commencé à mettre le fichier à jour pour qu’il soit fidèle à la dernière version, et nous avons tout copié dans un fichier Figma public. Pendant qu’on y travaillait encore, j’ai partagé le lien avec Jori, qui a fait la redirection alors que je n’avais pas encore terminé. Les gens ont commencé à arriver sur la page alors que j’étais en train d’y copier les frames de notre fichier Figma de base et d’ajouter des titres pour expliquer comment nous avions pris nos décisions et donner un peu de contexte.

Un des premiers commentaires que j’ai ajouté concernait le fait que nous ne nommons pas les calques. Je savais que les gens allaient le remarquer. Je les imaginais en train de se dire « Tiens, ils ne nomment pas leurs calques chez Linear ! » Mais l’objectif était avant tout de montrer comment nous travaillons.

Eh oui, on ne nomme pas les calques chez Linear ! Pour nous, ce n’est pas très important, on préfère se concentrer sur le résultat plutôt que sur la façon d’y arriver.

C’est la première fois que je vois une entreprise partager son fichier de design et laisser les gens voir quelles polices et quelles tailles elle utilise. J’avais très peur qu’on puisse accéder à notre bibliothèque de composants ou à notre design system, mais il a suffit de modifier les accès.
Et j’ai dépassé les 1000 followers, pas mal pour quelqu’un qui ne tweete jamais !
Transformer une attaque DDoS en opportunité

Au départ, partager le fichier Figma visait à pallier l’absence de page d’accueil et rediriger les utilisateurs vers sa nouvelle version. Mais le fichier Figma a commencé à prendre vie : les gens postaient des tweets sur la Figma Party de Linear et partageaient des captures d’écran du fichier avec des centaines de curseurs. À un moment donné, 300 personnes étaient sur le fichier en même temps.

Comme le fichier n’était partagé qu’en mode visionnage, les gens ne pouvaient pas le modifier. Donc ils se sont servis du curseur de tchat pour me poser des questions. Je les ai copiées dans le fichier, suivies de mes réponses. C’était l’occasion de faire un questions-réponses en direct, pour vraiment donner aux gens un aperçu de ce qui se passe en coulisses, comme on voulait le faire au départ. Avec le recul, c’était la bonne décision : au moment où nous parlons, il y a encore quatre personnes qui consultent l’archive. Nous avons tout conservé.
Le questions-réponses nous a permis d’ajouter du contexte. Les gens nous demandaient pourquoi nous avions choisi de développer une version plutôt qu’une autre, donc nous avons ajouté certaines variations qui avaient été explorées mais que nous avions fini par ne pas utiliser. Notre CEO, Karri, en a profité pour montrer ce qui lui plaisait ou faire part des axes qu’il envisageait d’explorer à l’avenir.

Il y a eu pas mal de questions sur le processus de design, et surtout à propos de l’équipe. Les gens ont été surpris quand ils ont réalisé que l’équipe web n’était composée que de trois personnes, Julian, Edgar et moi. Julian travaille sur le parcours et la structure, Edgar s’occupe du design, et je transforme tout ça en code. Les petites équipes peuvent être très efficaces, ça fait partie de la culture chez Linear. C’est une entreprise qui ne compte que 30 personnes, mais dont les résultats sont comparativement impressionnants.
J’ai passé deux heures et demi à discuter avec les gens. Certains passaient une heure et demi à deux heures à lire ce qu’on avait écrit, à explorer le fichier, et à jouer avec nos designs dans des fichiers séparés.
Ne garder que l’essentiel

Les gens étaient très compréhensifs. En général, ils avaient l’air de penser que les attaques DDoS pouvaient faire beaucoup de dégâts, et que nous avions bien réagi. À l’avenir, nous devrions être en mesure de réagir encore plus vite. Remettre le service à disposition de nos utilisateurs reste ce qu’il y a de plus important à nos yeux, car Linear est essentiel à leurs workflows. Par ailleurs, nous voulons rester transparents et renforcer les liens de confiance que nous avons créés avec notre communauté. Ainsi, les gens comprendront mieux ce que nous avons à gérer et pourront compatir avec nous. Mieux vaut cela que de leur envoyer du blabla marketing.

Le fichier et le questions-réponses étaient très bruts, c’était assez frappant. Si nous avions eu une personne chargée des relations publiques dans l’équipe, 90% de ce que nous avons écrit n’aurait pas été publié. On nous aurait dit : « Non, on ne peut pas dire ça. » ou encore « Cette phrase est à reformuler. » Ce qui me plaît, c’est que nous avons dit la vérité. Les choses se sont passées exactement comme ça ! Et le comble, c’est que certaines personnes pensent que nous avons prétendu être victimes d’une attaque DDoS pour pouvoir partager notre fichier Figma. Tout s’est tellement bien passé que les gens ont pu croire que c’était un coup marketing.
Le comble, c’est que quelques personnes pensent que nous avons prétendu être victimes d’une attaque DDoS pour pouvoir partager notre fichier Figma. Tout s’est tellement bien passé que les gens ont pu croire que c’était un coup marketing.
Répartir la charge au niveau mondial

Notre équipe est surtout localisée en Europe et aux États-Unis. C’est donc nos collègues des US qui ont gardé l’attaque sous contrôle jusqu’à minuit, heure à laquelle l’Europe s’est connectée. Ensuite, l’autre équipe a pris le relais et a consolidé ce qui avait déjà été fait. À ce moment-là, l’urgence était moindre car tout le monde avait à nouveau accès à l’appli.

Nous avons eu de la chance au niveau du timing. Quand l’attaque est arrivée, la journée de travail se terminait aux États-Unis, donc les utilisateurs américains n’ont pas été trop touchés. C’était un peu comme un after work. Une fois les réseaux de pare-feu en place, les gros pics de connexion ont commencé à baisser automatiquement, ce qui a laissé au reste de l’équipe le temps de travailler sur le fichier Figma. À la fin, le service était rétabli partout, sauf pour la page d’accueil, et nous avons laissé la redirection vers le fichier Figma – c’était plus drôle !

J’ai raté tout ça. Je suis à Berlin, donc quand la panne est arrivée, il était 23 heures chez moi. Mais heureusement, quand je me suis réveillé à 7 heures, la fête n’était pas encore terminée – à la berlinoise ! Il y avait encore 80 ou 90 personnes dans le fichier, donc j’ai pu rattraper le temps perdu.

Ça m’a surpris : je pensais qu’il y aurait un gros pic de fréquentation puis une diminution rapide, mais ça a duré des jours, pas juste quelques heures. J’ai toujours de nouvelles notifications de ce fichier Figma quand j’ouvre ma boîte mail le matin.
S’inspirer de cette expérience pour la prochaine itération

Chez Linear, la façon de penser et de concevoir les produits n’a rien d’un secret. Ce qui nous plaît, c’est de construire nos produits avec notre communauté, et c’est ce que nous faisons depuis le début. On publiait nos changelogs avant même que Linear soit ouvert au public. Le but était de partager notre travail avec d’autres, surtout des développeurs, mais jusqu’à présent, on n’avait pas vraiment trouvé un moyen de le faire avec des designers.

Quelques jours plus tard, on s’est dit que l’expérience avait été tellement intéressante qu’on avait envie de la continuer. Quelle allait être la prochaine étape ? Pourquoi partager notre fichier Figma nous avait tant apporté, bien plus qu’une mise à jour classique de notre site ? Quand nous avions travaillé sur la refonte de notre page d’accueil, nous avons beaucoup réfléchi à comment créer un site d’une façon totalement inédite, quelque chose qui soit différent et novateur, d’une manière ou d’une autre.
À mon sens, parcourir notre site en compagnie de centaines d’autres personnes a rendu l’expérience vraiment intéressante. Pourquoi les navigateurs ne fonctionnent-ils pas comme ça ? C’est quelque chose qui m’a inspiré. Est-ce que la collaboration pourrait être intégrée à notre site ? Peut-être que notre prochain site ne devrait pas être un site classique, mais un fichier Figma. Pourquoi s’en tenir au scroll et au clic ? Pourquoi ne peut-on pas bouger en deux ou trois dimensions pour explorer un site ? Que peut-on retirer d’autre de cette expérience ?
À mon sens, parcourir notre site en compagnie de centaines d’autres personnes a rendu l’expérience vraiment intéressante.

Ce qu’on veut quand on conçoit nos logiciels, c’est de continuer à s’amuser. C’est pour ça qu’on a pris cette voie. Chez Linear, on essaye de ne pas se prendre trop au sérieux. La pression et les deadlines n’aident pas la créativité. Pour obtenir un travail de qualité, il faut des gens passionnés qui sont capables de penser par eux-mêmes. Mais je ne crois pas que nous allons réitérer l’expérience. On ne veut pas être trop prévisibles, donc on fera quelque chose de nouveau.

La Polishing Season 2022 de Linear ✨
Plutôt que de travailler sur de nouvelles fonctionnalités, l’équipe dédie la fin de l’année à des tâches qui visent à parfaire ses produits : correction de bugs, amélioration des performances, suppression des petits défauts.

En décembre 2022, nous avons lancé notre Polishing Season 2022, pour que notre communauté puisse nous voir traiter les tâches de notre backlog en direct, qu’il s’agisse de bugs persistants ou de problèmes de performance. Inspirés par notre page d’accueil Figma, nous avons eu envie de travailler plus directement avec notre communauté. Nous avons donc invité nos utilisateurs à envoyer leurs demandes et à suivre leur complétion en temps réel.


