Rémi Jara

Ingénieur Cloud DevOps & Développeur FullStack

Lyon, France

À Propos de moi

Bonjour! Je suis un développeur passionné par la technologie et tout ce qui touche à l'informatique. Au fil des années, je me suis consacré à la création de divers projets personnels, animé par ma passion pour l'apprentissage et l'exploration de nouvelles technologies.

Je suis compétent en développement full-stack et DevOps, avec un accent particulier sur Vue.js et Nuxt pour le développement web. Du côté DevOps, j'ai de l'expérience avec des outils comme GitHub Actions, Python, l'automatisation, Linux, Terraform et AWS, des compétences que j'ai améliorées à la fois grâce à des projets personnels et à mon expérience professionnelle.

Je suis titulaire d'un BUT en informatique de l'Université Lyon 1 et je poursuis actuellement un diplôme d'ingénieur en trois ans à CPE Lyon, spécialisé ingénieur informatique. J'ai effectué une alternance chez Sanofi en tant que développeur DevOps lors de ma dernière année de BUT. Sanofi a continué à me soutenir en m'embauchant en tant qu'alternant ingénieur Cloud DevOps tout au long de mes études d'ingénieur. Ce rôle me permet de renforcer mes compétences en DevOps, en particulier avec GitHub Actions, Python, Terraform et AWS. J'ai également récemment obtenu la certification GitHub Foundations, démontrant mes connaissances sur GitHub.

Projets

Une application web pour traduire les paroles de chansons en utilisant l'IA. Ce projet a impliqué l'apprentissage de nouvelles technologies comme Nuxt, Stripe et l'intégration d'OpenAI. J'ai appris beaucoup de nouvelles choses comme l'utilisation de Stripe pour les paiements, Resend pour l'envoi d'emails. J'ai vraiment aimé travailler sur ce projet et je suis fier du résultat.

Une application web pour aider les utilisateurs à apprendre les drapeaux et les capitales des pays, offrant une expérience d'apprentissage ciblée basée sur les régions. Construit en utilisant Vue.js et Tailwind CSS, avec des services backend hébergés via Docker et Nginx.

Mon site web de portfolio personnel, présentant mes projets, compétences, expérience professionnelle, et plus encore ! Ce projet a été développé en utilisant Nuxt.js, TailWind CSS, et TypeScript, en mettant l'accent sur le design responsive et l'accessibilité. Le design est très propre, minimaliste, et moderne.

Un package Python servant de wrapper API pour l'univers One Piece, permettant aux utilisateurs de récupérer des données de la série. Ce projet a été une expérience d'apprentissage dans le développement de packages Python et l'intégration d'API

Expérience

Sanofi

2023 - 2027 (Alternance)

Développeur DevOps

- Projet de migration de plus de 10 000 projets de GitLab vers GitHub. J'ai mis en place des scripts d'automatisation pour rationaliser le processus de migration. Mes responsabilités comprenaient la coordination avec les équipes d'applications pour assurer une transition en douceur, la gestion des workflows et la réalisation de tests pour garantir la fiabilité des migrations.

- Actuellement, j'élargis mes compétences en Cloud & DevOps, et je travaille activement sur des projets dans ces domaines. Dans le cadre d'une équipe virtuelle internationale, je renforce mes compétences en communication, anglais, travail d'équipe et automatisation, contribuant ainsi au succès de nos initiatives.

- Technologies:

Projets:

- Migration de GitLab vers GitHub

Dans le cadre de mon projet tutoré chez Sanofi, j'ai mené à bien la migration de plus de 9...

- Automatisation de la mise à jour des repositories GitHub

J'ai développé un outil automatisé pour nettoyer et mettre à jour les repositories GitHub ...

- Récupération automatisée des administrateurs de Repositories/Teams GitHub

J'ai développé un outil automatisé pour récupérer les administrateurs de projets ou de tea...

- Qualification de Services AWS avec Terraform

J'ai participé à la qualification de services AWS pour garantir leur conformité avec les n...

Senzu

April 2023 - June 2023 (Stage)

Développeur Full-Stack

- En tant que développeur Full-Stack, j'ai affiné mes compétences en gérant toute l'API de Senzu, en gérant l'ajout de nouvelles fonctionnalités et la mise à jour des dépendances de manière indépendante. J'ai également développé des modules pour divers appareils connectés. Cette expérience m'a permis d'acquérir une exposition précieuse au monde de l'informatique d'entreprise, approfondissant ma compréhension des pratiques et des flux de travail

- Technologies:

Projets:

- Mise à jour de l'API Senzu

L'objectif principal de cette mission était de mettre à jour l'API en utilisant Symfony...

- Développement de plugins pour appareils connectés

Durant mon stage, j'ai développé plusieurs plugins répondant à des besoins spécifiques des...

Technologies

Compétences Scolaires

Au cours de mon BUT Informatique, j'ai acquis des compétences solides en Réaliser, Optimiser, Administrer, Gérer, Conduire, et Collaborer, que j'ai pu approfondir durant mes missions chez Senzu et Sanofi. En développement, j'ai travaillé sur l'API de Senzu, en améliorant ses performances et en intégrant de nouvelles fonctionnalités, tout en appliquant mes connaissances en gestion d'API et technologies web. Chez Sanofi, j'ai automatisé la migration de milliers de projets Git, en optimisant les workflows et en renforçant mes compétences en administration de systèmes, en gestion de projet agile et en sécurité informatique. Ces expériences m'ont permis de consolider mes acquis et d'appliquer efficacement ces compétences dans des contextes professionnels variés. Vous retrouverez plus de détails sur ces compétences dans la section juste en dessous.

Réaliser

Développer, c'est à dire concevoir, coder, tester, et intégrer une solution informatique pour un client.

Description:

Élaborer une application informatique, faire évoluer une application informatique, maintenir en conditions opérationnelles une application informatique.

Compétences associées:

  • Élaborer une application informatique
  • Faire évoluer une application informatique
  • Maintenir en conditions opérationnelles une application informatique

Niveaux de compétence:

Développer des applications informatiques simples (Niveau 1)

  • Implémenter des conceptions simples
  • Élaborer des conceptions simples
  • Faire des essais et évaluer leurs résultats en regard des spécifications
  • Développer des interfaces utilisateurs

Partir des exigences et aller jusqu'à une application complète (Niveau 2)

  • Élaborer et implémenter les spécifications fonctionnelles et non fonctionnelles à partir des exigences
  • Appliquer des principes d'accessibilité et d'ergonomie
  • Adopter de bonnes pratiques de conception et de programmation
  • Vérifier et valider la qualité de l'application par les tests

Adapter des applications sur un ensemble de supports (embarqué, web, mobile, IoT...) (Niveau 3)

  • Choisir et implémenter les architectures adaptées
  • Faire évoluer une application existante
  • Intégrer des solutions dans un environnement de production

Optimiser

Proposer des applications informatiques optimisées en fonction de critères spécifiques : temps d'exécution, précision, consommation de ressources.

Description:

Améliorer les performances des programmes dans des contextes contraints. Limiter l'impact environnemental d'une application informatique. Mettre en place des applications informatiques adaptées et efficaces.

Compétences associées:

  • Améliorer les performances des programmes
  • Limiter l'impact environnemental
  • Mettre en place des applications adaptées

Niveaux de compétence:

Appréhender et construire des algorithmes (Niveau 1)

  • Analyser un problème avec méthode
  • Comparer des algorithmes pour des problèmes classiques
  • Formaliser et mettre en œuvre des outils mathématiques pour l'informatique

Sélectionner les algorithmes adéquats pour répondre à un problème donné (Niveau 2)

  • Choisir des structures de données complexes adaptées au problème
  • Utiliser des techniques algorithmiques adaptées pour des problèmes complexes
  • Comprendre les enjeux et moyens de sécurisation des données et du code
  • Évaluer l'impact environnemental et sociétal des solutions proposées

Analyser et optimiser des applications (Niveau 3)

  • Anticiper les résultats de diverses métriques
  • Profiler, analyser et justifier le comportement d'un code existant
  • Choisir et utiliser des bibliothèques dédiées au domaine d'application

Administrer

Installer, configurer, mettre à disposition, maintenir en conditions opérationnelles des infrastructures, des services et des réseaux et optimiser les systèmes informatiques d'une organisation.

Description:

Déployer une nouvelle architecture technique, améliorer une infrastructure existante, sécuriser les applications et les services.

Compétences associées:

  • Déployer une nouvelle architecture technique
  • Améliorer une infrastructure existante
  • Sécuriser les applications et les services

Niveaux de compétence:

Installer et configurer un poste de travail (Niveau 1)

  • Identifier les différents composants (matériels et logiciels) d'un système numérique
  • Utiliser les fonctionnalités de base d'un système multitâches/multiutilisateurs
  • Installer et configurer un système d'exploitation et des outils de développement
  • Configurer un poste de travail dans un réseau d'entreprise

Déployer des services dans une architecture réseau (Niveau 2)

  • Concevoir et développer des applications communicantes
  • Utiliser des serveurs et des services réseaux virtualisés
  • Sécuriser les services et données d'un système

Gérer

Concevoir, gérer, administrer et exploiter les données de l'entreprise et mettre à disposition toutes les informations pour un bon pilotage de l'entreprise.

Description:

Lancer un nouveau projet, sécuriser des données, exploiter des données pour la prise de décisions.

Compétences associées:

  • Lancer un nouveau projet
  • Sécuriser des données
  • Exploiter des données pour la prise de décisions

Niveaux de compétence:

Concevoir et mettre en place une base de données à partir d'un cahier des charges client (Niveau 1)

  • Mettre à jour et interroger une base de données relationnelle (en requêtes directes ou à travers une application)
  • Visualiser des données
  • Concevoir une base de données relationnelle à partir d'un cahier des charges

Optimiser une base de données, interagir avec une application et mettre en œuvre la sécurité (Niveau 2)

  • Optimiser les modèles de données de l'entreprise
  • Assurer la sécurité des données (intégrité et confidentialité)
  • Organiser la restitution de données à travers la programmation et la visualisation
  • Manipuler des données hétérogènes

Conduire

Satisfaire les besoins des utilisateurs au regard de la chaîne de valeur du client, organiser et piloter un projet informatique avec des méthodes classiques ou agiles.

Description:

Lancer un nouveau projet, piloter le maintien d'un projet en condition opérationnelle, faire évoluer un système d'information.

Compétences associées:

  • Lancer un nouveau projet
  • Piloter le maintien d'un projet en condition opérationnelle
  • Faire évoluer un système d’information

Niveaux de compétence:

Identifier les besoins métiers des clients et des utilisateurs (Niveau 1)

  • Élaborer les spécifications fonctionnelles et non fonctionnelles à partir des besoins du client
  • Planifier et suivre les étapes du projet en tenant compte des contraintes
  • Assurer le bon déroulement du projet en gérant les risques et en résolvant les problèmes éventuels
  • Mettre en place les processus de validation et de recette pour garantir la qualité du produit final

Appliquer une démarche de suivi de projet en fonction des besoins métiers des clients et des utilisateurs (Niveau 2)

  • Identifier les processus présents dans une organisation en vue d'améliorer les systèmes d'information
  • Formaliser les besoins du client et de l'utilisateur
  • Identifier les critères de faisabilité d'un projet informatique
  • Définir et mettre en œuvre une démarche de suivi de projet

Collaborer

Acquérir, développer et exploiter les aptitudes nécessaires pour travailler efficacement dans une équipe informatique.

Description:

Lancer un nouveau projet, organiser son travail en relation avec celui de son équipe, élaborer, gérer et transmettre de l'information.

Compétences associées:

  • Lancer un nouveau projet
  • Organiser son travail en relation avec celui de son équipe
  • Élaborer, gérer et transmettre de l'information

Niveaux de compétence:

Identifier ses aptitudes pour travailler dans une équipe (Niveau 1)

  • Appréhender l'écosystème numérique
  • Découvrir les aptitudes requises selon les différents secteurs informatiques
  • Identifier les statuts, les fonctions et les rôles de chaque membre d'une équipe pluridisciplinaire
  • Acquérir les compétences interpersonnelles pour travailler en équipe

Situer son rôle et ses missions au sein d'une équipe informatique (Niveau 2)

  • Comprendre la diversité, la structure et la dimension de l'informatique dans une organisation (ESN, DSI, ...)
  • Appliquer une démarche pour intégrer une équipe informatique au sein d'une organisation
  • Mobiliser les compétences interpersonnelles pour travailler dans une équipe informatique
  • Rendre compte de son activité professionnelle

Manager une équipe informatique (Niveau 3)

  • Organiser et partager une veille technologique et informationnelle
  • Identifier les enjeux de l'économie de l'innovation numérique
  • Guider la conduite du changement informatique au sein d'une organisation
  • Accompagner le management de projet informatique
GitHub Foundations

J'ai récemment obtenu la certification GitHub Foundations, démontrant mes connaissances sur GitHub et ses fonctionnalités. Cette certification est la preuve de mon expertise dans l'utilisation de GitHub pour le contrôle de version, la collaboration, les projets open-source, les bonnes pratiques, et plus encore. C'est ma première certification, je suis fier de l'avoir obtenue et j'ai hâte d'obtenir plus de certifications à l'avenir.

2024

GitHub Cert

Education

CPE Lyon

• 2024 - 2027

Cursus d'ingénieur en informatique

Université Lyon 1

• 2021 - 2024

BUT Informatique - Réalisation d'applications

Fait par Rémi Jara avec Nuxt.js

Red Heart