Romain Lecault

Consultant en industrialisation des startups web · pro[chez]pryto[point]fr

Convaincu que le passage de startup à scaleup est une étape compliquée et que les défauts techniques ne se voient que trop tard, j’aide mes clients à sécuriser leur industrialisation. Pour cela, mes axes de travail s’articulent autour de la dette technique, les coûts « déchets », le time-to-market et l’architecture.

Votre entreprise s’industrialise et vous ne savez pas comment gérer le changement d’échelle ? Parlons-en !

Contacts

Certifications

  • devops - cd
  • developing application with gcp
  • managing security in gcp

Compétences

CI / CD / CD
  • Ansible
  • Terraform
  • Gitlab
  • Jenkins
  • Sonarqube
Containers, orchestration & Cloud
  • Docker
  • Kubernetes
  • Google Cloud
Architecture
  • Microservices
  • CQRS
  • RESTful APIs
  • SaaS/PaaS/IaaS
Langages, OS & Outils
  • Linux
  • PHP
  • Go
  • Bash
  • Scala
Tests
  • Selenium
  • Gatling
Base de données
  • MySQL
  • Redis
  • MongoDB
  • ELK

Formations

Des formations offertes d’une heure environ, par groupe de 5.

Avant de vous lancer dans le Zero Downtime Deployment

Le déploiement sans interruption, c’est vraiment cool. Mais attention, c’est l’aboutissement d’un chemin construit brique après brique. Vous voulez connaître les prérequis théoriques et pratiques à surveiller pour le ZDD ? Cette formation est faite pour vous !

S'inscrire

Docker 101 - Créer une application portable et déployable

Qu’est ce que c’est docker ? Comment ça fonctionne ? Par quoi commencer ? Partant de zéro, vous trouverez les réponses à toutes ces questions (et bien plus) dans cette formation. Après une partie théorique, nous mettrons ensemble les mains dans le cambouis pour vous aider à créer votre premier container.

S'inscrire

Docker compose 101 - Orchestrer une pile docker

Vous avez suivi toutes les bonnes pratiques de docker et avez séparés les éléments de votre pile technique ? Super ! Maintenant, comment on gère tout ça ? Le pseudo-orchestrateur docker-compose peut vous aider à y voir clair. Suite directe de la formation « Docker 101 », nous créerons cette fois une stack à containers multiples.

S'inscrire

Blog

Des mémos personnels, des articles sur la culture IT, le DevOps, la qualité…

Checkbreak, un outil d'aide aux publications sous semver

Le sujet du versionnement et les erreurs induites par semver m’importe, ça n’a pas dû vous échapper depuis la publication du billet. C’est pour cette raison que j’ai repris la conception d’un outil que j’avais commencé il y a 5 ans : checkbreak. Comme je l’évoquais, le problème de semver est le défaut de connaissances du responsable de la release, qu’il soit théorique ou conjoncturel. C’est donc ce que checkbreak vise à palier : expliquer ce qu’est une rupture de compatibilité et où la trouver pour faciliter le versionnement.
    16-09-2022

    Le principe de Liskov, ou ce que ça veut dire d'être un enfant

    En programmation orientée objet, les participants de l’environnement sont représentés comme des encapsulations autonomes décrivant complètement les attributs et les comportements du sujet. Ainsi, sans que ce soit un prérequis absolu à la POO, il est pratique de faire hériter des objets d’autres pour éviter la répétition ; on dit alors que l’objet A est fils de l’objet B. Seulement voilà, il arrive qu’en réalité A n’est pas vraiment un fils de B.
      09-09-2022

      La consommation mémoire de cat

      Combien cat consomme en mémoire vive ? Cette consommation croît-elle avec la taille du fichier ? Ces questions peuvent paraître triviales, mais posez-vous la question de la fréquence où vous utilisez cet outil… et la fréquence où vous vous interrogez sur le poids du fichier que vous faites ingérer à cat. On ne se pose tout simplement pas la question, précisément parce que l’outil ne bronche pas ; tout passe, et sur toute machine.
        02-09-2022

        Oubliez ce que vous pensez savoir sur semver

        Il existe une diversité de systèmes de numérotation des logiciels, du plus simple (n+1) au plus exotique (suivant les décimales de Pi). Dans le lot, semver décrit une numérotation en trinôme M.m.p où M représente des changements non rétro-compatibles, m représente des changements rétrocompatibles et p représente des correctifs. Puisque chaque système vise à bien communiquer aux consommateurs, semver semble la solution parfaite. Semble seulement, car en fait cet idéal de communication parfaite n’est pas atteint ; le problème est la nature d’un changement rétro-incompatible.
          26-08-2022

          Configurer un routage statique entre deux réseaux

          Une architecture réseau digne de ce nom applique le principe de moindre privilège : chaque réseau est de préférence isolé et spécifique à un usage. Mais parfois, il existe des serveurs à mi-chemin entre deux réseaux, comme par exemple un serveur web1 devant accéder à son propre réseau « web », mais également au réseau « backend ». Dans ce cas, nous devons mettre en place un routage. Pour un contexte aussi simple, le routage le plus rapide et le plus pratique est le routage statique.
            19-08-2022

            Transférer un tablespace MySQL chiffré au repos sur un autre serveur

            Si vous avez lu le billet évoquant le chiffrement at rest, une question a dû vous traverser l’esprit : si une table chiffrée ne permet pas sa recomposition, comment la migrer légitimement sur un autre serveur ? Afin de garantir l’intérêt du chiffrement au repos et se prémunir d’un accès au disque, un accès logique au serveur MySQL est nécessaire à tout transfert. La commande MySQL qui permet cet export est :
              12-08-2022

              Comment ça fonctionne, le streaming adaptatif ?

              Dans le billet Qu’est-ce-que c’est le streaming à débit adaptatif ? nous avons vu en quoi l’assouplissement des contraintes de qualité était primordial pour l’universalité du streaming. Rentrons maintenant dans la technique. Dans le streaming simple, le fichier est découpé en segments (ou chunks) de telle sorte que le fichier global n’a pas besoin d’être téléchargé entièrement pour commencer la lecture, uniquement le segment. Ce sont ces éléments qui sont placés dans le buffer.
                05-08-2022

                Qu'est-ce-que c'est le streaming à débit adaptatif ?

                … et pourquoi c’est nécessaire ? La qualité de nos fichiers multimédia augmente avec le temps, c’est indéniable. Nous étions à 480p au début d’Internet, à 720p il y a peu, et désormais en 4k. Forcément, le poids augmente en conséquence : la prochaine évolution, la 8k, pèse un poids estimé à 589Mo par minute. Nous savons tous intuitivement comment ces fichiers multimédia se lisent sur Internet : la vidéo se bufferise et si le préchargement avance plus vite que la lecture de la vidéo, tout roule.
                  29-07-2022

                  Normaliser sa configuration là où le templating n'existe pas

                  Lorsqu’on produit une pile technique avec plusieurs environnements, nous devons variabiliser les configurations de nos outils pour différencier les contextes d’exécution. Pour cela, comment procède-t-on ? Est-on condamné à créer autant de fichiers que d’environnements (ex: mysql.{local,testing,prod}.cnf) pour ne téléverser et n’exploiter que le bon ? Ça pose des problèmes évidents, dont le plus grave est que vous ne verrez que le fichier X est mauvais qu’au moment de l’utiliser, donc après son déploiement, pas avant.
                    15-07-2022

                    Voir plus de Blogs.