Sujet de stage n°1 - Refonte d'un outil d'administration RabbitMQ Multi-tenant Contexte L'architecture de nos applications repose fortement sur des échanges asynchrones via RabbitMQ (Java). La gestion des erreurs (Dead Letter Queues) est critique pour notre activité. Actuellement, nous utilisons un module de maintenance "maison" (Java/Vue.js) pour visualiser et rejouer les messages en erreur. Cet outil souffre de limitations opérationnelles majeures : absence de gestion multi-tenant (nécessite de multiples connexions), interface de recherche limitée. Votre Mission Intégrée l'équipe de développement, vous aurez la responsabilité de moderniser l'outil de maintenance. L'objectif est de concevoir une "Tour de contrôle" centralisée, ergonomique et multi-projets. Les étapes clés du stage : Analyse & Audit : Comprendre le fonctionnement du module actuel (Java Spring / SQL) et ses mécanismes de rejeu (gestion des jetons d’authentification oauth2, headers RabbitMQ). Analyser les besoins des équipes support pour la nouvelle interface. Étude d'architecture & Choix techniques : Comparer deux approches : Refonte complète (ex: Spring Boot React/Angular) VS Utilisation d'une solution tierce Low-Code Open Source (type Appsmith ou ToolJet) pour l’IHM connectée à nos APIs. Proposer une architecture logicielle capable de gérer le multi-tenant : connexion à plusieurs bases de données et rabbit dynamiquement. Développement & Réalisation : Développement ou adaptation des APIs Backend (Java/Spring Boot) pour exposer les données de manière unifiée. Implémentation de la fonctionnalité de rejeu intelligent (récupération de nouveaux jetons de sécurité avant réinjection). Etudier la possibilité de créer des règles de rejets automatique (cron job) selon le type d’erreur (502/503 par exemple) et provenance de l’erreur. Création de l'interface graphique (Frontend) avec des fonctions de filtres avancés (recherche textuelle, tri par date/type d’erreur), multi-sélection, pour gagner en efficience sur le support. Livraison : Tests unitaires et d'intégration. Déploiement (Docker/CI-CD). Documentation technique et présentation à l'équipe. Environnement Technique Backend : Java (Spring Boot), PostgreSQL. Messaging : RabbitMQ (DLQ, Headers, Routing, Shovel). Frontend : À définir selon votre étude (VueJS, React, ou Low-Code). Outils : Git, Docker, Jenkins/GitLab CI. Sujet de stage n°2 - Intégration de la traçabilité et du cycle de vie documentaire Contexte Notre entreprise développe une solution de Coffre-fort numérique sécurisée, permettant la gestion, l'archivage et l'analyse de documents d'entreprise. L'application repose sur une architecture robuste avec un backend Java Spring / PostgreSQL et un frontend multiplateforme en Flutter. La sécurité et la transparence étant au cœur de notre métier, nous disposons déjà d'un système d'audit performant en base de données. L'objectif de ce stage est de rendre ces données intelligibles et accessibles aux utilisateurs finaux via une interface ergonomique et intuitive. Votre mission Intégré(e) à l'équipe technique, vous aurez en charge de développer une fonctionnalité clé : la visualisation du cycle de vie des données (Timeline). Vous partirez de l'existant (tables d'audit remplies par triggers) pour afficher une histoire métier compréhensible (ex: "Document déposé par email", "Analysé par le système", "Mis à la corbeille par Jean Dupont"). Vos tâches principales seront : 1. Backend (Java / Spring Boot / PostgreSQL) : Analyser les tables d'audit existantes (audit_compte, audit_document, audit_document_analyse, etc.). Concevoir et développer des API REST (Endpoints) permettant de récupérer l'historique d'une entité spécifique. Traduire les données techniques (INSERT/UPDATE/DELETE) en événements métier compréhensibles (ex: transformation du code technique en libellé "Mise en analyse"). Gérer la logique d'affichage de l'auteur de l'action (Nom/Prénom de l'utilisateur ou "Système" si traitement automatique). 2. Frontend (Flutter / Dart) : Intégrer les maquettes Figma fournies par l'équipe UX/UI. Développer les composants graphiques de type "Timeline" ou "Historique" dans les écrans de détail des entités (Documents, Comptes, Factures). Assurer la liaison avec les nouvelles API créées. Garantir une expérience utilisateur fluide et réactive. 3. Qualité et Tests : Effectuer les tests unitaires et d'intégration. Documenter vos développements. Environnement technique Backend : Java, Spring Boot, Spring Security, Hibernate. Base de données : PostgreSQL (Triggers, SQL). Mobile/Web : Flutter (Dart). Outils : Git, Figma (pour le design), IDE (IntelliJ/VS Code).
En cliquant sur "JE DÉPOSE MON CV", vous acceptez nos CGU et déclarez avoir pris connaissance de la politique de protection des données du site jobijoba.com.