Scripting et automatisation




Ma définition

Scripter et automatiser signifie concevoir des solutions permettant de simplifier, accélérer et fiabiliser des tâches répétitives ou complexes, notamment dans le domaine de la gestion des systèmes, de la sécurité ou du déploiement applicatif. Cela repose souvent sur la maîtrise de langages comme Python, Bash, PowerShell ou des outils comme Ansible, Terraform, etc.

Dans un contexte professionnel, l’automatisation contribue à réduire les erreurs humaines, améliorer la productivité et garantir la traçabilité des opérations. En cybersécurité, cela permet aussi d’améliorer la réactivité face aux incidents.




Mes éléments de preuve

Chez Emeria, une grande partie de mon travail a consisté à automatiser des tâches récurrentes ou critiques dans le domaine de la sécurité et de la gestion des accès. Un projet particulièrement formateur a été le développement d’un système d’analyse automatique de log sources internes.

Ce système, que j’ai développé avec Python, avait pour but de détecter automatiquement les anomalies de collecte dans notre infrastructure de sécurité (notamment les déconnexions intempestives ou les délais de réception). En analysant les timestamps, les flux de données et les plus généralement les fichiers journaux, le script pouvait identifier une source de logs inactive depuis un seuil défini, puis envoyer automatiquement une alerte à l’équipe.

J’ai utilisé la librairie schedule pour planifier les tâches, smtplib pour envoyer des mails et pandas pour traiter les fichiers volumineux. Ce script a permis de détecter plusieurs incidents avant qu’ils ne soient visibles dans notre SIEM, réduisant les délais d’intervention.

Dans un autre contexte, j’ai écrit plusieurs Workflow Okta pour configurer automatiquement des environnements de test de sécurité, ou encore simplement sécuriser ou automatiser des tâches plus complexes.

Enfin, pour l’intégration de workflows automatisés dans Okta, j’ai dû écrire des scripts PowerShell afin de valider des scénarios de désactivation automatique des comptes inactifs ou mal configurés. Cela a nécessité de nombreuses itérations et tests avec l’API Okta.




Mon autocritique

Au vu des projets réalisés en entreprise, notamment le développement de scripts d’automatisation et de traitement de données à grande échelle, je considère avoir atteint un niveau avancé, proche du niveau expert en scripting, en particulier sur Python, Bash, Java mais aussi beaucoup d’autres langages informatiques.

Néanmoins, je suis encore parfois trop centré sur les langages de confort, et je pourrais gagner en polyvalence sur des outils plus spécialisés comme Terraform ou des scripts d’intégration continue via GitLab CI/CD.




Mon évolution dans cette compétence

Mon ambition à moyen terme est d’intégrer davantage l’automatisation dans des pipelines DevSecOps. Pour cela, je veux approfondir mon usage de GitLab CI/CD, renforcer mes compétences en Infrastructure as Code, et expérimenter l’automatisation de réponses à incidents via des outils comme TheHive ou Cortex.

Je souhaite également contribuer à des projets open source où les scripts d’automatisation sont essentiels, afin de confronter mes pratiques à celles d’autres développeurs.




Compétence présente dans les réalisations suivantes :

- Développement et gestion de Workflows Okta
- Développement d’un système d’analyse de logsources
- Automatisation de la documentation et mise en place d’un système de contrôle des workflows Okta