ematiss
Contexte de la mission : Dans le cadre de l'évolution et de la maintenance d'applications web, vous interviendrez sur la conception, le développement et l'optimisation de services backend en environnement Node.js. Vous contribuerez à la mise en œuvre d'architectures robustes, sécurisées et performantes, en collaboration avec les équipes techniques, Produit et Design. Missions principales : -Concevoir, développer et maintenir des services backend en JavaScript ES6+ avec Node.js, notamment sur les versions récentes (Node.js 22+). -Développer des API REST JSON robustes, sécurisées et performantes. -Concevoir et faire évoluer des architectures backend à l'aide de frameworks tels que NestJS, Express, Fastify ou Koa. -Mettre en œuvre des tests automatisés, assurer le suivi de la couverture de code et contribuer à l'amélioration continue de la qualité logicielle. -Participer à l'industrialisation des développements et à l'utilisation des outils de gestion de versions et d'intégration collaborative. -Documenter les développements et les choix techniques. -Collaborer avec les équipes Front-end, Ops, Produit et Design dans un environnement Agile. -Participer à l'analyse des besoins, à la résolution des problématiques techniques et à l'optimisation des performances. Compétences requises : -Développement backend -Expertise en JavaScript ES6+ côté serveur et expérience confirmée sur Node.js 22 ou une version supérieure. -Maîtrise d'au moins un framework backend : NestJS, Express, Fastify ou Koa. -Excellente maîtrise de la conception et de la sécurisation des API REST JSON. -Bonne connaissance des formats JSON et YAML. -Tests et qualité logicielle -Pratique des tests automatisés avec Jest, Mocha, Chai ou Sinon. -Maîtrise des outils de mesure de couverture de code, notamment Istanbul ou NYC. Environnement technique et industrialisation : -Maîtrise de l'environnement Bash sous Linux ou macOS. -Utilisation des outils NPM, Nodemon et PM2. -Maîtrise de Git et des workflows collaboratifs sous GitLab. -Capacité à lire et exploiter une documentation technique en anglais. Méthodologie et communication : -Expérience des méthodologies Agiles. -Capacité à collaborer avec des interlocuteurs techniques et fonctionnels. -Aptitude à vulgariser des sujets techniques complexes et à produire une documentation claire. Compétences appréciées : -Bases de données : MySQL, MariaDB, MongoDB, Redis. -ORM : Prisma, TypeORM. -Moteurs de recherche : Elasticsearch. -Conteneurisation : Docker et Docker Compose. -Performance et temps réel : Worker Threads, WebSockets, Server-Sent Events (SSE). -Architecture événementielle : Pub/Sub et bibliothèques de communication événementielle. -Sécurité : OAuth2, JWT, SSO, CORS et gestion des en-têtes de sécurité HTTP. -Tests de bout en bout : Cucumber et Gherkin. -Outils API : Swagger, Postman et curl. -Documentation et conception : Markdown, Confluence, conception orientée objet et principes de développement structuré. -Culture web : bonnes connaissances en HTML5 et CSS3. Profil recherché : -Minimum de 5 ans d'expérience significative en développement backend Node.js. -Expertise technique permettant de concevoir et de faire évoluer des services backend dans des environnements exigeants. -Maîtrise professionnelle du français, à l'oral comme à l'écrit. -Capacité à travailler en équipe et à intervenir dans un environnement Agile. Modalités de la mission : -Présence sur site : au minimum 50 % du temps de la prestation, selon les besoins opérationnels. -Astreintes : des astreintes ou interventions exceptionnelles en soirée, le week-end ou les jours fériés peuvent être demandées. -Langue de travail : français, pour les échanges, les réunions et la documentation. Les documents devront être rédigés en français et fournis dans un format éditable.