Des tâches spécifiques exigent des solutions spécifiques. C'est ce que recherchent généralement les projets blockchain lorsqu'ils nous contactent. Ce cas est un brillant exemple de l'évolution de la demande d'un client pendant la phase de recherche et de la coopération des équipes face à des défis complexes.
Dans cet article, vous découvrirez comment Dysnix gère les tâches du client, de l'accord aux étapes de support, et quels sont les avantages attendus et supplémentaires que nous générons pour nos clients.
Nansen.ai est une plateforme d'analyse de la blockchain qui aide les traders et les projets de blockchain en les mettant en évidence et en les informant des changements et tendances essentiels qui se produisent dans la blockchain (en particulier en matière de cryptographie). Ils traitent quotidiennement les pétaoctets de données commerciales circulant dans leurs systèmes afin de fournir les informations les plus précieuses à leurs clients 24 heures sur 24, 7 jours sur 7.
Les exigences de Nansen lors de la recherche de fournisseurs de solutions étaient extrêmement élevées en raison de l'expertise technologique de l'entreprise elle-même. Ils ont choisi Dysnix en raison de l'expertise qui peut compléter de manière significative leur équipe interne, de la facilité de partage des connaissances et de l'approche inventive de la résolution des problèmes techniques.
Signe d'un projet prometteur, Nansen nous a contacté avec un objectif principal qui ressemblait davantage à ceci : « Nous pensons que nous avons besoin de ceci et de cela. Qu'en penses-tu ? » Après une brève discussion sur le sujet, les deux parties ont compris que Dysnix pouvait approfondir le problème et le résoudre de la manière la plus optimisée possible.
Tout le monde s'est donc enthousiasmé pour la future communication et les miracles techniques qui se produiront.
Il n'a fallu que deux appels pour établir tous les liens entre les entreprises et convenir des principaux points de coopération. La pandémie de COVID nous a montré comment tous les sujets et défis pouvaient être discutés et résolus avec succès, quelle que soit la distance parcourue par vos collègues. Nous n'avons donc pas perdu trop de temps avant le développement.
Du côté de Dysnix, nous avons sélectionné deux ingénieurs, un architecte cloud et un ingénieur DevOps senior, ayant une expérience de la blockchain. Du côté de Nansen, ils ont préparé l'ensemble des exigences et seuls quelques spécialistes ont été chargés de communiquer avec notre équipe. Notre client nous a délégué 100 % du travail et s'est entièrement fié à nous.
Dysnix était prêt à se lancer.
Dans sa dernière déclaration, Nansen.ai a engagé Dysnix pour développer, implémenter et prendre en charge une infrastructure fiable, autonome et sécurisée répondant aux besoins spécifiques de la plateforme d'analyse blockchain. Un niveau de sécurité élevé était un point essentiel de la demande.
Nansen avait besoin d'un déploiement sûr et hautement sécurisé pour le nœud de validation de la blockchain Ronin avec stockage sécurisé des clés privées.
Le nœud de validation Ronin que Nansen avait prévu d'obtenir ne pouvait pas répondre à leurs besoins. Il s'agissait d'un nœud de validation typique qui était étroitement connecté à l'ensemble du réseau et ne possédait pas toutes les caractéristiques nécessaires. La tâche de Dysnix était de mettre en œuvre un tel environnement de blockchain qui ajouterait de nouvelles fonctionnalités au validateur Ronin sans aucune modification des fonctionnalités du nœud lui-même.
L'équipe Dysnix a prévu une solution qui ressemblera à ceci :
Avant de passer en revue de plus près la solution proposée par les ingénieurs de Dysnix, examinons le niveau supérieur des exigences établies.
La solution répond aux attentes et exigences suivantes du client :
Mais nous avons proposé d'aller encore plus loin et d'ajouter d'autres améliorations dès le départ :
Notre offre est basée sur les normes de travail élevées des ingénieurs de Dysnix et sur leur dévouement aux projets. Comme vous pouvez l'imaginer, Nansen ne pouvait guère être en désaccord avec l'offre que nous leur avons préparée.
Après un accord sur la première partie de la coopération, Dysnix a créé un SoW de haut niveau avec une vue d'ensemble des objectifs et des réalisations futures de la coopération. Au cours de la phase de R&D et après 2 à 3 sessions de clarification, au cours desquelles Nansen a révélé plus d'informations sur l'équipe avec laquelle Dysnix travaillera et d'autres détails, nos ingénieurs ont pris la décision finale en fonction de l'architecture et du SoW détaillé en profondeur.
Avec cette version de SoW, Dysnix a décrit les tâches de bas niveau dans son système de suivi et les a classées par ordre de priorité dans la feuille de route. Les ingénieurs ont estimé l'ensemble du processus de développement à 100 à 120 heures de travail. Il répond parfaitement aux besoins de Nansen.
Nous avions également discuté de la possibilité de modifier le SoW au cours du processus de développement et, comme nous l'avions prévu, cela s'est effectivement produit pendant les étapes de développement. Néanmoins, cela n'a pas eu d'impact négatif sur le résultat final. Au contraire, nous avons obtenu des résultats encore meilleurs dont nous pouvons être fiers.
Comme il ne restait aucun point à discuter davantage, nous nous sommes préparés à l'invasion proprement dite et à un travail acharné sur le projet. Le flux de travail avec l'équipe interne de Nansen s'est naturellement réglé : si l'une des parties avait besoin d'une réponse, elle posait des questions directes et obtenait toutes les explications immédiatement.
Les ingénieurs participant au projet ont été étroitement associés aux travaux de l'équipe interne. En outre, ils ont tout mis en œuvre pour rendre leur activité transparente et compréhensible pour toutes les parties prenantes impliquées. L'équipe Dysnix est réputée pour avoir facilité l'ambiance de travail grâce à trois points principaux :
Tout au long de la phase de développement active, l'ingénieur DevOps senior a organisé des démonstrations, et l'architecte cloud a effectué la R&D interne et le déploiement du PoC pour une meilleure compréhension et des ajustements du SoW.
Nos ingénieurs ont commencé à développer la documentation pour l'équipe interne de Nansen depuis la phase de préparation jusqu'à ce que tout soit nettoyé en production. Grâce à l'approche coopérative des collègues internes, nous avons pu organiser notre travail rapidement, en tenant compte des limites des responsabilités de chaque partie.
Nous avons configuré notre environnement de développement pour cartographier la solution que nous avions prévu de mettre en œuvre. Nous avons créé Tableaux des casques à cette fin et a préparé tout le nécessaire pour tester la connectivité avec le validateur.
De plus, nos ingénieurs ont contrôlé tous les paramètres de configuration et les préparations de l'infrastructure grâce au IaC Approche (Infrastructure en tant que code). Il s'agit de l'un des processus (ou méthodologies, si vous le souhaitez) les plus importants que nous appliquons pour que notre infrastructure reste facilement modifiable et que toutes les modifications ou nouvelles fonctionnalités puissent être mises en œuvre en quelques heures, et non en plusieurs semaines.
Nos ingénieurs ont tout préparé pour création de sauvegardes et de snapshots pour conserver toutes les informations enregistrées et protégées en toute sécurité. Il est essentiel de configurer ces éléments dès le début et de les garder à portée de main, car la blockchain Ronin ne vous fournira aucun instantané. Nous ferions donc mieux de protéger nos clients plutôt que de guérir.
Nous nous sommes concentrés sur la tâche principale du projet : isoler le nœud de validation Ronin tout en restant fonctionnel. Pour atteindre cet objectif, nous avons décidé d'implémenter la couche de nœuds dits sentinelles qui joueraient deux rôles différents dans notre infrastructure :
Ainsi, avec cette couche de nœuds sentinelles, nous avons implémenté le schéma unidirectionnel dans lequel le nœud de validation Ronin peut obtenir des informations sur ce qui se passe dans la blockchain via une connexion p2p aux nœuds sentinelles. Pourtant, rien ne peut connecter un nœud de validation directement depuis Internet.
Cette solution est suffisamment rapide et rentable. Il fonctionne correctement avec l'infrastructure blockchain existante sans délais ni réponses plus longues. Nous vous proposons de passer au niveau de mise en œuvre suivant : préparer l'environnement pour le validateur et le connecter aux nœuds sentinelles.
Après quelques consultations et lors des sessions en direct avec nos ingénieurs, Nansen a configuré l'environnement des nœuds de validation de son côté. Notre équipe a soutenu et contrôlé le déploiement de deux nœuds de validation (le second a servi de nœud de sauvegarde) dans le moteur Google Kubernetes et a appliqué les meilleures pratiques de déploiement sécurisé. Nous avons conseillé de dupliquer le nœud des validateurs pour garantir la fonctionnalité de A à Z en toutes circonstances.
Il semblait que la mission était terminée ! Les nœuds de validation ont été isolés, les nœuds sentinelles ont fonctionné comme sur des roulettes et le système a été vérifié. Il ne restait plus qu'une étape avant la production. Les ingénieurs de Dysnix ont tout de même continué à travailler sur l'IaC et le déploiement en tant qu'implémentation de code afin de garantir :
Grâce à ces bases de code, nous avons pu migrer vers l'environnement de production de manière fluide et en un temps minimal. Et tout s'est passé comme prévu.
Mais alors que nous étions en train de déployer la solution principale en production, Nansen nous a préparé une autre tâche passionnante que nous ne pouvions pas refuser d'entreprendre...
La direction de Nansen était tellement satisfaite des résultats intermédiaires qu'elle a décidé de frapper le fer à repasser alors qu'il faisait chaud. Nous avons reçu une autre demande de déploiement qui n'était pas directement liée à la tâche principale.
Les nœuds d'archive Ronin ont été ajoutés à notre liste. Nansen étant une société d'analyse de chaînes de blocs, elle a besoin d'un accès rapide et complet à toutes les données de la blockchain qui ne peuvent pas être stockées ailleurs que dans des nœuds de blockchain d'archive.
Nous savons qu'un nœud d'archive Ronin classique présente certaines limites désagréables. Par exemple, il faut généralement environ six heures pour analyser les données analytiques de la blockchain pendant une journée. C'est bien trop lent pour Nansen. Il est évident que nous avons besoin d'une sorte de « stéroïdes » pour les faire fonctionner plus rapidement et toujours, avec un haut niveau de fiabilité et de sécurité, comme le souhaite le client. L'équipe Dysnix a donc dû « rafraîchir » légèrement les nœuds d'archivage.
Pour terminer cette tâche et obtenir la note A+, nous avons décidé de jouer un peu différemment, toujours sans aucune magie :
Nous avons réussi à réduisez la durée de mise à jour quotidienne du nœud d'archive Ronin de six heures à 15 minutes. L'équipe de Nansen a été très impressionnée par ces résultats, qui l'ont aidée à améliorer l'ensemble de son service, et pas seulement l'infrastructure que nous avons construite pour elle.
La phase de développement principale était terminée et nous avons procédé aux actions clôturantes du projet.
Il a fallu environ deux semaines pour toutes les activités de mise à jour, tout éclaircir sur la production et améliorer la documentation de dépannage pour l'équipe interne de Nansen. Nous avons récupéré les documents de travail que nous avions préparés au début de notre coopération et avons vérifié si tout fonctionnait comme prévu.
Nous avons également organisé une série de sessions de dépannage en direct au cours desquelles nous avons montré comment résoudre différents problèmes liés aux paramètres de charge ou d'environnement afin d'atteindre une productivité maximale. En parallèle, nous avons édité notre documentation pour la rendre précise en fonction des dernières mises à jour.
Pour résumer :
Une fois cette étape terminée, nous avons serré la main de Nansen et sommes passés à la phase de coopération « passive », à savoir le soutien.
Après presque un an de travail, l'équipe de Dysnix soutient toujours le projet.
Nous maintenons le niveau de qualité établi pour Nansen en vérifiant les indicateurs les plus importants de la santé de l'environnement. Nous continuons également à travailler sur des améliorations mineures qui seront disponibles lors de vos déplacements.
Pour aider efficacement nos clients, nous mettons en place des systèmes de surveillance, de contrôle de santé, d'alerte et de mise à niveau qui ne passent pas inaperçus.
La plateforme la plus agréable et la plus appréciée des ingénieurs de Dysnix pour la surveillance est Grafana. Tout d'abord, les principaux indicateurs sont sélectionnés pour suivre les objectifs et les KPI des fonctionnalités de l'environnement. Ensuite, nous fusionnons toutes les informations suivies dans le pool de données et affichons les indicateurs nécessaires sur l'écran du contrôleur.
Nous examinons les volumes de demandes, les connexions établies, les rechargements, l'utilisation de la mémoire et du processeur, ainsi que d'autres indicateurs.
Ce tableau de bord et les suivants sont également disponibles pour notre client, mais ils sont rarement vérifiés. Un ingénieur Dysnix peut contrôler et entretenir ce système sans perdre trop de temps.
Nous incluons également ces données dans les rapports mensuels de Nansen. Il est essentiel de stocker des données sur l'état du système, car en cas de problème, nos ingénieurs peuvent suivre la situation pour revenir à l'état normal et tout restaurer comme si de rien n'était.
La sécurité restant la principale exigence de Nansen, nous accordons une attention particulière à cette question. Grâce aux contrôles réguliers que nous effectuons sur le système, nous nous assurons qu'il est aussi sûr que le premier jour où nous l'avons terminé.
Les mises à jour régulières et en temps opportun sont un processus semi-automatisé que nous menons pour chaque client pris en charge. Nous devons nous assurer que tout fonctionne rapidement et maintenir le système à jour. Ainsi, le client apprécie le fait que le système que nous avons créé il y a longtemps reste efficace et s'améliore avec le temps.
C'est le véritable objectif du support Dysnix, n'est-ce pas ?
Les solutions mises en œuvre par Dysnix ont renforcé les principaux avantages concurrentiels de Nansen. Le principal domaine d'activité du client étant lié à l'analyse de la blockchain, nous avons réussi à influencer la rapidité et la sécurité des processus internes. L'amélioration de l'infrastructure entraîne toujours des avantages visibles pour l'expérience du client final et même réduit les coûts.
Les principaux avantages que nous apportons peuvent être résumés dans les catégories suivantes :
Les valeurs attendues et prévues sont les résultats directs du SoW réalisé à grande échelle. Comme :
En ce qui concerne les avantages et les effets secondaires inattendus, nous pouvons dire que leur valeur ne peut être ignorée. Ces points ne faisaient pas partie de la quête principale de notre équipe, mais nous avons l'habitude de tout faire pour maximiser les avantages pour nos clients.
Du point de vue technique, les tâches de Nansen n'étaient pas trop compliquées. La plupart de nos processus ont été exécutés selon différentes variantes sur d'autres projets. Quoi qu'il en soit, nous avons dû rester extrêmement prudents pour garantir une disponibilité de 99,99 % et une sécurité fiable. Grâce à notre habitude de modéliser des situations, de planifier et de penser de manière prédictive, nous pouvons prévenir les problèmes et les catastrophes avant qu'ils n'apparaissent. Les choses qui sont bien établies fonctionnent bien, comme on dit.
Le deuxième problème qui nous a constamment tenus les yeux ouverts était le changement de plan de notre client. C'est une situation tout à fait normale lorsque les plans changent de direction à 180 degrés en fin de journée, après quelques séries d'entretiens, des dizaines d'heures de travail avec l'équipe interne et la réalisation d'une ou deux expériences. La flexibilité de notre équipe entraîne l'adaptabilité et la personnalisation approfondie des solutions que nous proposons. C'est pourquoi nous n'avons pas peur des nouvelles idées de nos clients, prêts à les essayer avec nos outils et nos compétences.
Le petit guide expliquant comment obtenir notre aide se trouve ici :
Nous sommes ouverts à de nouvelles opportunités, à des projets ambitieux et à des enquêtes extrêmes. Nos ingénieurs se feront un plaisir d'explorer les infrastructures les plus problématiques et de les amener à la perfection fonctionnelle. Nous savons comment gérer notre travail dans les circonstances les plus difficiles, de sorte que nos clients n'ont aucune raison de douter de nos résultats. Et nous en sommes fiers.
Les choses devraient fonctionner efficacement et générer des bénéfices.