Equipe: 10 Devops SRE + squad lead + Deputy Manager
Contexte : Migration des microservices GO/PHP de OVH vers AWS (serverless architecture),
mettre à jours le stack monitoring existant, instaurer les bonnes pratiques DevOps).
Mes tâches :
Build:
- Mettre en place la partie alerting pour les EC2, ApiGateways, lambdas, load balancers
à travers les cloudwatch alarms.
- Trigger les alarmes à travers des customs metric filters pour lancer des alertes
custom à travers SNS.
- Création topic SNS par squad et redirection des alerts vers un google chat room à
travers un lambda.
- Optimisation (FinOps) : Creation lambda python pour automatiser le cleanup de
lambda code storage sur tt les comptes AWS (+80 comptes)
- Installation et configuration de cloudwatch agent templates sur EC2 pour envoyer
des metrics custom vers Cloudwatch.
- Créer les pipelines à travers Gitlab / Débugger les pipelines Gitlab (support dev).
- Code reviews relier à l infra (Terrafrom).
- Live support une semaine par mois avec un autre SRE : support infra et incidents
Prod de toutes les platforms qui appartiennent à notre équipe.
- Déployer un deomon fluentd pour envoyer les logs applicatifs de EKS vers
cloudwatch log groups.
- Programmer le lancement des crons à travers Event Bridge rules.
- Traçage d’un plan d’action pour le chiffrement des EBS à travers les KMS CMK/AMK.
- Chiffrement des buckets S3 (KMS) et blocage accès public à travers Terrafrom.
- Migration Gitlab de OVH vers AWS.
- Cleanup des runners Gitlab a travers les cron.
- Création des AWS custom policies pour restreindre l’accès aux ressources (least
privilege access)
- Implementation des modules Terraform.
- Déploiement d infra a travers Terraform sur AWS.
- Création des Standards SQS queues pour rediriger les flux de AWS lambda vers
Kinesis.
- Support dev concernant la partie infra, déploiement des api Gateways et lambdas.
- Creation Helm Charts pour Deployer Prometheus et Grafana (ready to go).
- Activer le monitoring détaillé pour les machines de prod sur AWS et activer la
protection contre la suppression accidentelle.
- Création des playbooks ansible pour configurer les machines EC2 sur AWS.
Run :
- Maintenir des solutions existantes sur AWS.
- Migration de l’existant de OVH vers AWS
- Débugger les conteneurs LXD prod
Méthodologie: Agile Scrum
Equipe : 4 Ingénieurs + Team lead + Manager
Contexte : support projet DROPSHIP, amélioration concernant la platform MyCanal
(streaming), migration vers le nouveau stack technique (K8S, Terrafrom, Ansible).
Mes tâches :
Build:
- Déploiement d’un serveur Shinken de monitoring et mise en place des règles.
- Déploiement de la solution Prometheus MS Teams sur notre cluster de prod, et
envoi des notifs vers un room teams.
- Implémentation des règles Pod horizontal autoscaler PHA et cluster autoscaler CA
pour notre cluster K8S prod.
- Support projet Dropship (salt, boto3, fabric).
- Développement des Lambda functions (Python) pour extraire les informations et les
envoyés vers des fils Kinesis coté BI.
- Revue des tickets avec Bitbucket.
- Une semaine par mois commando : support de toutes les platforms qui
appartiennent à notre équipe.
- Ajout config coté script bootstrap EC2.
Run :
- Maintenir des solutions existantes sur AWS.
- Modification de l’infrastructure selon les nouveaux besoins avec Terraform.
Méthodologie: Scrum
Equipe : 4 Ingénieurs + Team lead
Contexte : Interventions chez Biat labs pour instaurer un cycle CI/CD avec du monitoring +
projets internes
Mes tâches :
Design:
- Conception des solutions techniques avec UML.
Build:
- Revue de code avec Git et mise en œuvre de l'automatisation des processus avec
Ansible.
- Conteneurisation des applications développées et déploiement des conteneurs
Docker sur AWS.
- Provisioning d’un pré-managed Kubernetes cluster avec EKS.
- Provisioning des machines EC2.
- Déployer une application Web de billing avec le service AWS Amplify.
- Provisioning des bases RDS pour les solutions développées.
- Versioning des S3 buckets.
- Manager les secrets des utilisateurs des applications avec Vault.
- Vertical scaling des machines EC2 sur demande.
- Résolution des Problèmes de sécurité (i.e d’autorisation : donner des accès limité
au tache aux services AWS)
- Donnes des accès aux dev sur des ressources spécifiques sur AWS
- IAM Mangament:
- Création des users, groups et roles à la demande
- Optimisation des policies pour garantir l’implémentation least privileges
- Mise en place de Cloudwatch pour les instace EC2
- Mise en place d'une chaine CI/CD
- Déploiement et configuration des machines virtuelles sur AWS
- Mise en place des services AWS (S3,EC2,...)
Run:
- Surveillance des applications développées avec Grafana et Prometheus et correction
des bugs.
- Maintenir des solutions existantes sur AWS.
- Modification de l’infrastructure selon les nouveaux besoins avec Terraform.
Formations:
- Mise en place des formations et des programmes de développement pour les
nouveaux recrus (Jenkins, Administration système Linux (RHCSA)).
Résultats obtenus:
- Applications monolithiques diviser en microservices.
- Amélioration du flux de travail des développeurs.
- Réduction des coûts sur la plateforme AWS en éliminant les serveurs inutiles.
Méthodologie: Scrum
Contexte : Projets internes
Mes tâches :
Design :
- Conception d’une application web pour aider le management à calculer la facturation
du stockage par équipe de l’application SaaS Artifactory.
Build:
● Continuous Monitoring et supporter les productions avec Nagios, VictorOps
● Automatiser les tâches répétitives au sein de l'équipe avec Ansible.
● Développer des scripts bash, Python.
● Création des documentations techniques selon les besoins du projet.
● Gérer les cycles CI / CD (jenkins, gitlab-ci) pour les développeurs.
● Gestion et contrôle des clusters en production Kubernetes.
● Découpage et estimation des tâches.
● Utilisation de la méthode agile Scrum.
● Développement des fonctions Lambda sur AWS avec python pour rediriger le flux des
logs de l’application artifactory vers SQS.
● Configuration du VPC et VPC peering.
● Transfert du logs d’artifactory SaaS vers le data lake en utilisant le service Kinesis
Data Firehose.
● La mise à jour des instances jenkins (pour optimiser la securité, et donner aux
développeurs un accès à des nouveaux plugins, …)
● Suivi de Prod (analyse incident, résolution incident …)
● Analyse de l’état du cluster Kubernetes (les conteneurs, les hôtes : le CPU, la
Mémoire, Network) à l’aide de Prometheus et Grafana.
● Déploiement et configuration des machines EC2 et installation un Apache
● Infrastructure As Code pour les clusters on AWS (Terraform).
● Veiller à la sécurité des accès et à la stabilité des solutions déployées sur AWS.
● Queuing de log de l’application Artifactory avec le service SQS
● Envoyer les notifications par topic vers les canaux Slack avec le service SNS.
● Provisioning d'infrastructure sur AWS avec des Template CloudFormation.
● Administration et Ownership de l’application Artifactory.
- Créer des comptes pour les utilisateurs de la plateforme.
- Gérer les accès.
- Support totale d’une plateforme utilisée par une centaine de développeurs.
Support :
● Participer dans on-call escalations et troubleshooting pour les problèmes critiques
urgents.
● Répondre aux questions techniques et résoudre les problèmes rencontrés par les
développeurs (Ticketing, Slack).
Meetups:
Jenkins X meetup:
- Topic: Going serverless with jenkins X.
The first CNCF community gathering in Tunisia avec le CNCF Executive Director DAN KOHN:
- Topic: Kubernetes and the next steps.
Méthodologie : Scrum
Equipe : 4 ingénieurs et chef service
Contexte : Développement et support de la platform open source de gestion de projet
Tuleap
Mes tâches:
Build:
● Création des playbooks Ansible pour la création et la mise à jour des repositories du
projet open source Tuleap.
● Création des jobs jenkins pour l’exécution des scripts de validation automatique.
● Création des Pipelines jenkins avec Groovy.
● Développement des scripts des tests d’intégration (Selinium/Python).
● Développement de la plateforme de gestion du projet open source Tuleap avec PHP.
● Rédaction des documentations techniques, rédaction de consignes.
● Migration vers Git LFS pour gérer facilement les fichiers volumineux
Support :
● Support des utilisateurs de la plateforme Tuleap.
Résultats obtenus :
- Migration vers l'outils de gestion de projet Tuleap.
- Élimination des tâches répétitives avec les playbooks Ansible.