Développeur Back-end (Java) Senior
On-siteQuebec, Canada or Québec, Quebec, Canada
Job Summary
Develop optimized and performant backend services using Java, collaborating with business analysts, UX designers, and QA teams to deliver enterprise solutions. Architect and maintain scalable applications leveraging design patterns, concurrent programming, and microservices with JMS and Kafka. Design and optimize relational database schemas, analyze SQL query performance, and implement indexing strategies using Elasticsearch. Conduct code reviews to identify concurrency bugs, evaluate deliverable quality, and manage the end-to-end release process. This Senior role supports a growing client within Exposant 3, a firm dedicated to organizational and digital transformation, where you will work alongside experts across the full development lifecycle.
Required Qualifications
- Avoir un minimum de cinq (5) ans d'expérience comme développeur Back-end 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, micro services, 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
- Avoir de l'expérience avec d'autres outils de bases de données tels que : 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)
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.