Développeur Back-end (Java) Sénior
Rejoignez Exposant 3 (E3) : La puissance de l’humain au cœur de la technologie !
Exposant 3 est une firme de services-conseils en gestion des affaires et technologies de l'information, dédiée à accompagner les entreprises et organismes dans leur transformation numérique et organisationnelle.
👉 Votre carrière chez Exposant 3
Nous croyons fermement en une gestion saine et humaine, où la confiance, la compétence, et le plaisir de réussir ensemble sont au centre de nos valeurs.
Nous vous offrons bien plus qu’un simple emploi : rejoignez une équipe innovante où l’intelligence artificielle, l’automatisation des processus, et la modernisation technologique font partie du quotidien. Chez Exposant 3, nous mettons l’humain au cœur de tout ce que nous entreprenons.
🚀 Notre vision ?
Vous permettre de déployer "la puissance de l’humain exposant 3" :
- La puissance de l’individu : Un environnement où votre engagement est valorisé.
- La puissance de l’équipe : Une collaboration forte où l’entraide et les réussites sont partagées.
- La puissance de l’entreprise : Une vision commune pour des objectifs ambitieux et collectifs.
Si vous cherchez à évoluer dans un cadre dynamique et à contribuer à des projets d’envergure, tout en grandissant au sein d’une entreprise humaine, innovante et en pleine croissance, alors Exposant 3 est fait pour vous !
Nous cherchons notre futur Développeur Back-end (Java) Sénior pour rejoindre nos équipes.
🎯 Vos missions
Nous recherchons une développeuse ou un développeur analyste de type « Backend Java ». La personne sélectionnée se joindra à une équipe agile afin de contribuer à l’analyse, la conception, au développement et au maintien d’applications supportant la gestion des opérations administratives.
Les développeurs Back-end travaillent en collaboration avec une équipe d’experts comprenant des analystes d’affaires, analystes fonctionnels, designers UX, graphistes, développeurs Front-end, intégrateurs, analystes en assurance qualité (QA) et administrateurs de données pour développer des services optimisés et performants.
Description des tâches :
- Participer aux activités agiles requises pour la planification et le suivi des travaux à réaliser.
- Contribuer à l’élaboration, la conception, le développement, l’implantation et la maintenance de fonctionnalités nouvelles ou existantes en collaboration avec les membres de l’équipe.
- Produire du code propre, compréhensible et maintenable respectant les bonnes pratiques en matière de développement.
- Réaliser des tests unitaires et d’intégration automatisés.
- S’assurer de respecter et d’appliquer l’ensemble des contrôles de qualité.
- Comprendre et adhérer aux principes d’intégration et de déploiement en continu.
- S’impliquer et participer à l’élaboration et la mise en œuvre de la culture d’amélioration continue.
- Partager ses connaissances et contribuer à l’esprit d’entraide.
📝 Votre profil
- Avoir TROIS (3) ans ou plus d’expérience dans un rôle de professionnel dans les technologies de l’information, dont au moins DEUX (2) ans d’expérience dans des fonctions de développeur Back-end (Java).
- Maîtriser les principes SOLID.
- Avoir de l’expérience pour :
- Programmer en Java un service Web en utilisant les technologies suivantes : Servlet, JAX-RS et JAX-WS.
- Utiliser les utilitaires du JDK.
- Reconnaître et nommer les design patterns OO.
- Séparer son code en fonction d’une architecture en couche.
- Utiliser une librairie d’injection de dépendances telle que Spring, Guice, CDI, etc.
- Programmer la persistance d’objets dans une base de données (BD) relationnelle avec JDBC et un CRM.
- Avoir l’expérience de proposer et modéliser une solution pour implanter une fonctionnalité et d’identifier des problèmes et bogues éventuels dans les revues de code.
- Avoir l’expérience de créer des structures de BD telles que table, séquence, vue, trigger, etc., de faire des requêtes SQL complexes intégrant notamment la pagination, les groupements et les fonctions analytiques.
- Avoir de l’expérience avec les BD Oracle.
- Avoir créé et géré des branches/étiquettes dans un système de gestion des versions.
- Connaître les principales caractéristiques d'un API REST.
- Avoir un minimum de CINQ (5) ans d’expérience comme développeur Back-end (Java).
- Avoir l’expérience d’utilisation de tous les concepts du langage JAVA incluant la programmation concurrente.
- Maîtriser les principes SOLID.
- Avoir proposé et fait appliquer les design patterns OO.
- Avoir structuré le code en fonction des principes et besoins de l’architecture organique.
- Avoir développé une application Web connectée à une BD relationnelle.
- Avoir travaillé avec les lambda JAVA 8.
- Avoir l’expérience d’implanter une fonctionnalité en utilisant des composants techniques complexes tels que files JMS, microservices, tâches asynchrones, etc.
- Avoir déjà eu à identifier des problèmes et bogues éventuels de concurrence dans les revues de code.
- Avoir l’expérience d’analyser et d’évaluer la qualité des livrables des autres développeurs.
- Avoir l’expérience de proposer un modèle physique optimisé d'une BD relationnelle.
- Avoir l’expérience d'analyser la performance de requêtes SQL et de proposer des améliorations.
- Avoir de l’expérience avec d’autres outils de bases de données tels que :
- Des outils d’indexation et de recherche de données, par exemple, Elasticsearch.
- Des agents de messages, par exemple, Kafka.
- Avoir de l’expérience avec toutes les fonctionnalités d’un système de gestion des versions.
- Avoir l’expérience de gérer, d’encadrer et d’assurer la qualité d’un processus de livraison (release).
- Expérience avec Hibernate ou un autre ORM compatible JPA.
- Expérience avec un système de contrôle de version décentralisé (ex. : GIT, Bitbucket).
- Expérience avec une plateforme d’intégration et de déploiement continue (ex. : Maven, Azure DevOps).
- Expérience dans la réalisation de tests unitaires et intégrés (ex. : JUnit, Mockito).
- Connaissance des conteneurs applicatifs et orchestrateurs (ex. : Docker, Kubernetes, Openshift).
- Connaissance des bases de données PostgreSQL.
- Localisations
- Québec
- Statut à distance
- (Statut hybride)
- Mode de travail
- Télétravail avec présence occasionnelle au bureau
- Durée du contrat
- 6 mois
