Job Description
- Type de contrat : CDD - 12 mois
- Temps de travail : Temps plein
- Lieu: Hauterives
L'entreprise
Pour accompagner son développement, et dans le cadre de la refonte de notre ERP, notre atelier de maroquinerie recrute pour son site basé en Nord-Drôme un(e) Développeur Java / Angular (H/F).
Description du poste
Notre ERP interne et ses applications annexes sont développés sous WinDev (WLangage, éditeur PC Soft) sur base de données native HFSQL. Le système couvre plusieurs domaines dont : (Le suivi d'efficacité en atelier par badge, la facturation, la gestion du temps de travail, la logistique, le suivi des encours de production), et un module de demande sur postes partagés. Nous réécrivons l'ensemble sur une stack ouverte et standard : Java en back-end, Angular en front-end, PostgreSQL pour la base de données. L'architecture cible est un monolithe modulaire, un module par domaine métier, orienté API et découplé, hébergé en interne. L’équipe de développement est composée de 5 personnes. Le poste consiste à renforcer la capacité de développement Java de notre équipe : La bascule se fait module par module, avec une coexistence prévue de l'ancien et du nouveau système jusqu’à la livraison complète du nouvel ERP — y compris des écritures sur les deux systèmes pendant la transition.
Missions :
Vous développez, au sein de l'équipe interne, les modules de l'ERP cible, à partir des cahiers des charges produits par la MOA et dans le cadre d'architecture posée par l'architecte. L'autonomie attendue porte sur la stack cible : vous ne devez pas dépendre de quelqu'un pour avancer sur Java et Angular.
- Partir du cahier des charges fourni par la MOA : analyser le besoin exprimé, poser les questions qui manquent, puis concevoir la solution technique correspondante.
- Développer les modules métier en Java : règles de gestion, services, couche d'accès aux données, API REST consommées par le front.
- Développer les écrans Angular correspondants : formulaires, tableaux de données, écrans de saisie atelier.
- Développer les états pour les rendus imprimables ou en .pdf
- Respecter le cadre technique en place : architecture définie par l'architecte, charte de programmation, règles de codification et conventions de l'équipe. Les discuter quand c'est justifié, puis s'y tenir.
- Produire un développement de qualité et maintenable : code lisible, découpage cohérent, gestion des erreurs, pas de zones de code accumulées sans structure.
- Écrire les tests (unitaires, intégration, non-régression) et les faire tourner dans la chaîne d'intégration continue.
- Participer aux réunions d’équipe : avancement, points de blocage, arbitrages techniques.
- Participer au déploiement des modules livrés sur les environnements de test et de production.
- Assurer le SAV sur les modules mis en production : analyse des anomalies remontées par les utilisateurs, correction, livraison du correctif.
L'équipe est impliquée de bout en bout, de la réalisation du cahier des charges jusqu'au suivi en production.
Environnement technique :
Les versions précises des outils de développement ainsi que la chaîne de livraison sont arrêtées avec l'architecte lors de la phase de cadrage, en amont de la prise de poste.
Profil recherché
Compétences requises
- Java en production, cinq ans minimums, sur des applications de gestion : vous avez livré et maintenu du code Java utilisé quotidiennement par des utilisateurs métier.
- Angular, cinq ans minimums, sur des applications de gestion : (formulaires, tableaux, validation, consommation d'API REST…)
- SQL et modélisation relationnelle : Maîtrise du requêtage SQL, comprendre un schéma existant, juger d'un index. PostgreSQL de préférence.
- Conception d'API REST et compréhension d'une architecture en couches découplées (hexagonale ou clean) :
- Tests automatisés : vous écrivez vos tests par défaut, pas sur demande.
- Git en travail d'équipe : branches, revue, résolution de conflits.
- Autonomie sur la stack cible : prendre un cahier des charges fonctionnel, en déduire une conception technique et livrer, en totale autonomie sur Java et Angular. C'est le point le plus important du poste.
- Langues : Français courant
La connaissance de WinDev / WLangage n'est pas demandée. L'analyse de l'existant et la rédaction des cahiers des charges sont portées par la MOA.
Compétences appréciées
- Périphériques métier : lecteurs de codes-barres, impression d'étiquettes, postes partagés.
- Spring Batch ou équivalent pour les traitements planifiés et les reprises.
- Usage d'outils de développement assistés par IA sur du code existant : analyse, analyse d'impact, tests, documentation.
Réf: efa611c7-6086-4cda-9e39-d25a26bd362d