EN
Development-engineering

Développeur Back-end (Java) sénior

Sénior

Télétravail CBZ Technologies
100 000 $ - 140 000 $ (Permanent) 90 $ - 120 $ (Pigiste)

Architecturez et développez des systèmes back-end complexes et évolutifs. Apportez une maîtrise du Java pour résoudre des défis techniques stimulants.

Responsabilités

  • Utiliser tous les concepts du langage JAVA incluant la programmation concurrente.
  • Proposer et faire appliquer les design patterns OO.
  • Structurer le code en fonction des principes et besoins de l’architecture organique.
  • Développer une application Web connectée à une BD relationnelle.
  • Implanter une fonctionnalité en utilisant des composants techniques complexes tel que files JMS, micro services, tâches asynchrones, etc.
  • Identifier des problèmes et bogues éventuels de concurrence dans les revues de code.
  • Analyser et évaluer la qualité des livrables des autres développeurs.
  • Proposer un modèle physique optimisé d'une BD relationnelle.
  • Analyser la performance de requêtes SQL et proposer des améliorations.
  • Utiliser d’autres outils de bases de données tels que des outils d’indexation et de recherche de données (ex. : Elasticsearch) et des agents de messages (ex. Kafka).
  • Gérer, encadrer et assurer la qualité d’un processus de livraison (release).

Exigences

  • 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 tel 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 : a. Des outils d’indexation et de recherche de données, par exemple, Elasticsearch; b. 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).