Senior Backend Developer

Modaxo — Canada · Posted ~2 hours ago

Senior Full-time Onsite

Skills

Java Spring Boot PostgreSQL MongoDB REST APIs GraphQL Backend development Software testing Scrum REST

🔓 Log in to save this job, tailor your resume & track your apply process — 7 days free, no card needed.

Log in to add to target list

Summary ✨ AI‑Generated

A senior backend engineering opportunity in Montréal for an experienced Java developer. You will design, develop, test, and maintain backend features using Spring Boot, work with PostgreSQL or MongoDB, build REST or GraphQL APIs, collaborate with product and R&D stakeholders, contribute to technical decisions, and mentor junior team members.

Highlights

Work on challenging backend systems in a collaborative Scrum team, with opportunities to influence technical decisions, design scalable features, and mentor less-experienced developers.

Description

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’entrepriseParticiper activement aux choix technologiques ainsi qu’aux choix d’évolution de l’architectureRédiger les spécifications techniques des fonctionnalités complexes si nécessaireParticiper à 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'équipeProduire les tests unitaires et d’intégration visant à valider les fonctionnalités développées et à s’assurer de leur non-régressionCollaborer avec l'équipe d'assurance qualité pour l'aider à valider les fonctionnalités développées et l'assister si nécessaireParticiper à la maintenance des fonctionnalités des versions antérieures de l’applicationParticiper et encourager l'équipe dans la réduction de la dette technique et l'optimisation des performances de l’applicationCollaborer 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 efficaceCollaborer 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étenceCollaborer 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évusParticiper activement aux séances de rétrospectives et proposer des améliorations continues de nos pratiques de développementIdentifier, communiquer et atténuer les risques et les obstacles dans la mise en œuvre des fonctionnalitésAssurer la conformité avec nos standards et nos normes de sécurité et veiller à leur respect dans l’équipeParticiper 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 équivalent8+ années d'expérience professionnelle en développement Java, y compris dans le cadre de projets complexes impliquant plusieurs équipes5+ années d'expérience avec Spring Boot et divers frameworks Spring5+ 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 Agile3+ 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 modernesConnaissances avancées en architecture, principes de POO et patrons de conceptionsAptitude à comprendre les logiques d’affaire complexes et certains concepts mathématiquesExpertise 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 performancesSolides 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 performantesCompré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 GitSolide connaissance des principes, méthodologies et bonnes pratiques de tests logicielsSolide 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 documentationCapacité à communiquer en français et en anglaisAtout : 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 technologiesCapacité à comprendre le domaine d’affaire et les besoins des utilisateurs finauxSouci du détail et de la satisfaction des clientsHabilités de communication et d’écoute permettant de faciliter le travail en équipe et l’amélioration continueCapacité à travailler de manière rigoureuse, de leader par l’exemple et à s'adapter rapidementSens de l’initiative et proactivité permettant d’éviter les blocages, demander de l’aide et proposer des solutionsCapacités d'analyse et de débogage facilitant la compréhension et la résolution de problèmesCapacité à 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 needsActively participate in technology choices and architectural evolutionWrite technical specifications for complex features when necessaryParticipate 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 membersProduce unit and integration tests to validate developed features and ensure non-regressionCollaborate with the QA team to help validate developed features and assist when necessaryParticipate in maintaining features from previous versions of the applicationEncourage and participate in reducing technical debt and optimising application performanceCollaborate 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 effectivelyCollaborate with clients and non-R&D teams to provide technical expertise when needed Leadership Act as a mentor to developers to support their skills developmentActively collaborate with other team members and teams to ensure features are delivered on scheduleActively participate in retrospectives and propose continuous improvements to development practicesIdentify, communicate, and mitigate risks and obstacles in feature implementationEnsure compliance with standards and security norms and ensure their respect within the teamParticipate 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 equivalent8+ years of professional experience in Java development, including complex projects involving multiple teams5+ years of experience with Spring Boot and various Spring frameworks5+ years of experience with SQL, Hibernate, and PostgreSQL (or similar RDBMS)4+ years of development experience in an Agile environment3+ years of experience with NoSQL and Messaging technologies (Kafka, RabbitMQ or similar)Experience in performance optimisation and scalability challengesExperience in mentoring and developing other developers Technical Skills Mastery of Java 8 and 21+ with a solid understanding of modern Java featuresAdvanced knowledge of architecture, OOP principles, and design patternsAbility to understand complex business logic and some mathematical conceptsAdvanced expertise in Spring Boot and the Spring ecosystem (Spring MVC, Spring Data, Spring Security)Advanced skills in SQL, JPA, and Hibernate, including performance optimisationStrong knowledge in NoSQL database modelling (MongoDB)Experience in designing and implementing secure and high-performance REST and GraphQL APIsIn-depth understanding of event-driven architectures and Messaging technologies (RabbitMQ, Kafka)Knowledge of Java EE technologies (EJB, WildFly) for maintenance tasksMastery of IDEs, debugging and profiling tools, and GitStrong knowledge of software testing principles, methodologies, and best practicesSolid 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 documentationAbility to communicate in French and EnglishAsset: 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 technologiesAbility to understand business domain and end-user needsAttention to detail and customer satisfactionCommunication and listening skills to facilitate teamwork and continuous improvementAbility to work rigorously, lead by example, and adapt quicklyInitiative and proactivity to avoid blockages, seek help, and propose solutionsAnalytical and debugging skills to facilitate problem understanding and resolutionAbility to mentor less experienced developers Worker Type Regular Number Of Openings 1