Jobs.ca
Jobs.ca
Language
Modaxo logo

Senior Backend Developer

Modaxo15 days ago
Montreal, Quebec
Senior Level
full_time

About the role

Join our team and take your career to the next level. Job Summary Expretio recherche un.e Développeur.euse Backend Java expérimenté.e pour rejoindre son équipe dynamique basée à Montréal. Au sein d’une équipe Scrum, il/elle contribuera au développement d’Appia, sa solution phare spécialisée en Revenue Management pour l’industrie ferroviaire.

Le/la Développeur.euse Senior, travaillera avec les responsables Produit et R&D pour traduire les exigences d’affaire en solutions techniques et s’assurer de la faisabilité technique des nouvelles fonctionnalités. Il/elle contribuera activement à la conception, au développement, aux tests et à la maintenance des fonctionnalités backend de l’application (Spring Boot), de la couche de persistance (PostgreSQL ou MongoDB) jusqu’aux APIs (REST ou GraphQL).

En tant que Senior, la personne retenue agira également à titre de conseiller.ère et mentor.e pour les membres de l’équipe moins expérimentés et participera activement aux choix technologiques, à l’architecture et à l’amélioration continue des processus.

Expretio is seeking an experienced Backend Java Developer to join its dynamic team based in Montreal. Within a Scrum team, this person will contribute to the development of Appia, its flagship solution specialising in Revenue Management for the rail industry.

The Senior Developer will work with Product and R&D leaders to translate business requirements into technical solutions and ensure the technical feasibility of new features. They will actively contribute to the design, development, testing, and maintenance of backend features of the application (Spring Boot), from the persistence layer (PostgreSQL or MongoDB) to APIs (REST or GraphQL).

As a Senior, the selected candidate will also act as an advisor and mentor for less experienced team members and will actively participate in technology choices, architecture, and continuous improvement of processes.

Job Description Responsabilités

Techniques

  • Collaborer avec l’équipe Produit pour concevoir, étudier la faisabilité technique et mettre en place les solutions répondant aux besoins des clients et de l’entreprise
  • Participer activement aux choix technologiques ainsi qu’aux choix d’évolution de l’architecture
  • Rédiger les spécifications techniques des fonctionnalités complexes si nécessaire
  • Participer à la modélisation et la réalisation de la couche de persistance (PostgreSQL ou MongoDB)
  • Concevoir, développer et maintenir les services backend et les API (REST, GraphQL)
  • Effectuer des revues de code et fournir des retours constructifs aux membres de l'équipe
  • Produire les tests unitaires et d’intégration visant à valider les fonctionnalités développées et à s’assurer de leur non-régression
  • Collaborer avec l'équipe d'assurance qualité pour l'aider à valider les fonctionnalités développées et l'assister si nécessaire
  • Participer à la maintenance des fonctionnalités des versions antérieures de l’application
  • Participer et encourager l'équipe dans la réduction de la dette technique et l'optimisation des performances de l’application
  • Collaborer avec le responsable DevOps pour la mise en place et le maintien de la chaine d’intégration continue (GitLab, Jenkins)
  • Collaborer avec l'équipe de Support pour analyser et résoudre les problèmes critiques de manière rapide et efficace
  • Collaborer avec les clients et les équipes hors R&D pour fournir une expertise technique lorsque nécessaire.

Leadership

  • Agir en tant que mentor auprès des développeurs afin de les accompagner dans leur montée en compétence
  • Collaborer activement avec les autres membres de l'équipe et les autres équipes pour s'assurer que les fonctionnalités sont livrées dans les délais prévus
  • Participer activement aux séances de rétrospectives et proposer des améliorations continues de nos pratiques de développement
  • Identifier, communiquer et atténuer les risques et les obstacles dans la mise en œuvre des fonctionnalités
  • Assurer la conformité avec nos standards et nos normes de sécurité et veiller à leur respect dans l’équipe
  • Participer au processus de recrutement, d'intégration et de formation des développeurs intermédiaires et seniors

Ce que vous apportez au poste

Formation et expérience

  • Baccalauréat en informatique, génie logiciel ou équivalent
  • 8+ années d'expérience professionnelle en développement Java, y compris dans le cadre de projets complexes impliquant plusieurs équipes
  • 5+ années d'expérience avec Spring Boot et divers frameworks Spring
  • 5+ années d'expérience avec SQL, Hibernate et PostgreSQL (ou un SGBD similaire)
  • 4+ années d'expérience de développement dans un environnement Agile
  • 3+ années d'expérience avec les technologies NoSQL et de Messaging (Kafka, RabbitMQ ou simlaire)
  • Expérience dans l'optimisation des performances et les défis liés à la scalabilité
  • Expérience dans le mentorat et le développement d'autres développeurs

Compétences techniques

  • Maîtrise de Java 8 et 21+ avec une solide compréhension des fonctionnalités Java modernes
  • Connaissances avancées en architecture, principes de POO et patrons de conceptions
  • Aptitude à comprendre les logiques d’affaire complexes et certains concepts mathématiques
  • Expertise avancée en Spring Boot et l'écosystème Spring (Spring MVC, Spring Data, Spring Security)
  • Compétences avancées en SQL, JPA et Hibernate y compris en termes d’optimisation des performances
  • Solides connaissances en modélisation de de bases de données NoSQL (MongoDB)
  • Expérience dans la conception et la mise en œuvre d'API REST et GraphQL sécurisées et performantes
  • Compréhension approfondie des architectures événementielles et des technologies de Messaging (RabbitMQ, Kafka)
  • Connaissance des technologies Java EE (EJB, WildFly) pour les tâches de maintenance.
  • Maîtrise des IDE, des outils de débogage et de profiling, et de Git
  • Solide connaissance des principes, méthodologies et bonnes pratiques de tests logiciels
  • Solide expérience avec les outils de build (Maven, Gradle), de CI/CD (Jenkins idéalement), et des outils de conteneurisation (Docker)
  • Maîtrise des outils d'IA pour améliorer la productivité en matière de conception, de développement et de documentation
  • Capacité à communiquer en français et en anglais
  • Atout : Expertise en matière de sécurité (OAuth2, JWT, OIDC, KeyCloak, Spring Security)
  • Atout : Expérience avec des outils de monitoring (Prometheus, Grafana)
  • Atout : Expérience dans un rôle de responsable technique ou responsable d’équipe

Autres compétences

  • Curiosité naturelle et soif d'apprendre de nouveaux concepts ou de nouvelles technologies
  • Capacité à comprendre le domaine d’affaire et les besoins des utilisateurs finaux
  • Souci du détail et de la satisfaction des clients
  • Habilités de communication et d’écoute permettant de faciliter le travail en équipe et l’amélioration continue
  • Capacité à travailler de manière rigoureuse, de leader par l’exemple et à s'adapter rapidement
  • Sens de l’initiative et proactivité permettant d’éviter les blocages, demander de l’aide et proposer des solutions
  • Capacités d'analyse et de débogage facilitant la compréhension et la résolution de problèmes
  • Capacité à mentorer des développeurs moins expérimentés

Key Responsibilities

Technical

  • Collaborate with the Product team to design, assess technical feasibility, and implement solutions that meet client and company needs
  • Actively participate in technology choices and architectural evolution
  • Write technical specifications for complex features when necessary
  • Participate in modelling and implementing the persistence layer (PostgreSQL or MongoDB)
  • Design, develop, and maintain backend services and APIs (REST, GraphQL)
  • Conduct code reviews and provide constructive feedback to team members
  • Produce unit and integration tests to validate developed features and ensure non-regression
  • Collaborate with the QA team to help validate developed features and assist when necessary
  • Participate in maintaining features from previous versions of the application
  • Encourage and participate in reducing technical debt and optimising application performance
  • Collaborate with the DevOps manager to set up and maintain the continuous integration chain (GitLab, Jenkins)
  • Collaborate with the Support team to analyse and resolve critical issues quickly and effectively
  • Collaborate with clients and non-R&D teams to provide technical expertise when needed

Leadership

  • Act as a mentor to developers to support their skills development
  • Actively collaborate with other team members and teams to ensure features are delivered on schedule
  • Actively participate in retrospectives and propose continuous improvements to development practices
  • Identify, communicate, and mitigate risks and obstacles in feature implementation
  • Ensure compliance with standards and security norms and ensure their respect within the team
  • Participate in the recruitment, onboarding, and training of intermediate and senior developers

What you bring to the role

Preferred Education And Experience

  • Bachelor’s degree in Computer Science, Software Engineering, or equivalent
  • 8+ years of professional experience in Java development, including complex projects involving multiple teams
  • 5+ years of experience with Spring Boot and various Spring frameworks
  • 5+ years of experience with SQL, Hibernate, and PostgreSQL (or similar RDBMS)
  • 4+ years of development experience in an Agile environment
  • 3+ years of experience with NoSQL and Messaging technologies (Kafka, RabbitMQ or similar)
  • Experience in performance optimisation and scalability challenges
  • Experience in mentoring and developing other developers

Technical Skills

  • Mastery of Java 8 and 21+ with a solid understanding of modern Java features
  • Advanced knowledge of architecture, OOP principles, and design patterns
  • Ability to understand complex business logic and some mathematical concepts
  • Advanced expertise in Spring Boot and the Spring ecosystem (Spring MVC, Spring Data, Spring Security)
  • Advanced skills in SQL, JPA, and Hibernate, including performance optimisation
  • Strong knowledge in NoSQL database modelling (MongoDB)
  • Experience in designing and implementing secure and high-performance REST and GraphQL APIs
  • In-depth understanding of event-driven architectures and Messaging technologies (RabbitMQ, Kafka)
  • Knowledge of Java EE technologies (EJB, WildFly) for maintenance tasks
  • Mastery of IDEs, debugging and profiling tools, and Git
  • Strong knowledge of software testing principles, methodologies, and best practices
  • Solid experience with build tools (Maven, Gradle), CI/CD tools (ideally Jenkins), and containerisation (Docker)
  • Mastery of AI tools to improve productivity in design, development, and documentation
  • Ability to communicate in French and English
  • Asset: Expertise in security (OAuth2, JWT, OIDC, KeyCloak, Spring Security)
  • Asset: Experience with monitoring tools (Prometheus, Grafana)
  • Asset: Experience in a technical lead or team lead role

Other Key Skills And Competencies

  • Natural curiosity and eagerness to learn new concepts or technologies
  • Ability to understand business domain and end-user needs
  • Attention to detail and customer satisfaction
  • Communication and listening skills to facilitate teamwork and continuous improvement
  • Ability to work rigorously, lead by example, and adapt quickly
  • Initiative and proactivity to avoid blockages, seek help, and propose solutions
  • Analytical and debugging skills to facilitate problem understanding and resolution
  • Ability to mentor less experienced developers

Worker Type Regular

Number Of Openings 1

About Modaxo

Software Development
51-200

Modaxo brings together businesses focused on providing the technologies that move the world’s people each and every day.

Working both together and independently, our businesses are focused on one thing – delivering software and technology solutions that help connect people with the places they need to go for work, family, and everyday life.

No other organization brings together so many different businesses, competencies, and experiences under one global banner to focus exclusively on People Transportation.

With people who are truly passionate about what they do, Modaxo understands the impact mobility has on the fabric of daily life. We thrive on delivering dependable solutions that meet the real-life needs of our customers in the communities where we live and serve.