DevOps - Migration vers une architecture Serverless
Le contexte
Edifixio développe et opère (DevOps) des applications hébergées sur le cloud Amazon Web Services (AWS). Vous rejoindrez notre équipe Middleware, spécialisée dans le développement d’intégrations logicielles, permettant de faire communiquer les différents éléments d’un système d’information.
Nous avons historiquement utilisé des architectures monolithiques pour nos applications. Nous adoptons aujourd’hui des architectures micro-services et migrons progressivement nos applications sur ce nouveau modèle.
Durant cette migration nous rencontrons de nouveaux challenges :
- Amélioration des performances, en particulier le temps de démarrage des applications (cold start)
- Mise en place de l'automatisation du déploiement d’applications CI/CD (Continuous Integration et Continuous Delivery)
- Passage en Serverless
Les problématiques
- Monter en compétences sur le cloud AWS et, en particulier, la partie Functions as a Service
- Étudier l’architecture actuelle, comprendre le fonctionnement des flux et d’une file de messages
- Tester différentes approches pour améliorer les temps de démarrage
- Appliquer les solutions que vous avez trouvé à une application pour vérifier le bon fonctionnement en conditions réelles
- Rechercher les bonnes pratiques en termes de CI/CD pour les micro-services
- Ajouter une fonction de déploiement à la carte : livrer tous les services qui composent une application ou n’en livrer que certains, gérer les problèmes de versioning de services
- Industrialiser pour que la livraison se fasse en quelques clics
- Créer une documentation qui expliquera comment l’appliquer sur les nouveaux projets
Les objectifs
A l’issue du stage, vous aurez acquis une bonne connaissance du Cloud AWS et des micro-services. Vous aurez permis à Edifixio d’automatiser ses déploiements Serverless et de régler les problèmes de cold start. Vous serez prêt(e) à nous rejoindre sur d’autres projets AWS.
Les mots clés
- Cloud AWS : Lambda, API Gateway, SQS
- Outils : Graal VM , Quarkus ...
- Java : Jakarta EE, TomeEE, JMS
- Architectures Micro-services, Function as a Service, Serverless
Vos qualités
- Esprit d’équipe, Autonomie, Curiosité
- Anglais parlé/lu/écrit