Job description
Nous recherchons un(e) Développeur(se) Java Senior expérimenté(e) pour rejoindre une équipe technologique en pleine croissance dédiée au risque de marché. Dans ce rôle, vous concevrez, développerez et améliorerez des applications essentielles aux fonctions de gestion des risques, au sein d’une équipe Agile internationale. Il s’agit d’une excellente opportunité pour un(e) ingénieur(e) technique qui aime résoudre des problématiques complexes liées au traitement de grands volumes de données, au calcul distribué et à l’optimisation des performances.
Lieu : Montréal (Hybride – 3 jours sur site par semaine)
Responsabilités principales
• Développer de nouvelles applications de gestion du risque de marché et améliorer les applications existantes.
• Collaborer au sein d’une équipe Agile avec des membres basés à Montréal, Budapest, en Inde, à Londres et à New York.
• Appliquer les principes Agile et les pratiques DevOps tout au long du cycle de développement.
• Collaborer étroitement avec les parties prenantes métier afin de comprendre leurs besoins et de fournir des solutions efficaces.
• Contribuer à l’évolution des outils et des technologies utilisés en gestion des risques en introduisant des solutions permettant d’améliorer les processus métier et de répondre aux obligations réglementaires de l’entreprise.
Compétences et expérience requises
• 5 ans ou plus d’expérience pratique avec Core Java (développement côté serveur), Spring et les bases de données relationnelles (RDBMS). Les candidats ayant 2 à 3 ans d’expérience solide et pertinente sont également encouragés à postuler.
• Expérience dans la conception de pipelines de traitement de données distribués avec Apache Spark, Python et des outils/langages associés.
• Solides compétences en conception et développement orientés objet, avec une bonne compréhension des structures de données, des algorithmes et des patrons de conception (Design Patterns).
• Bonne compréhension du développement d’applications multithread et expérience pratique des bibliothèques de gestion de la concurrence.
• Excellentes capacités de réflexion critique et d’analyse.
• Familiarité avec la conception et le support d’applications impliquant la conception de prompts, la gestion du contexte des données et les tests de modèles fondamentaux.
• Forte culture des tests unitaires (JUnit) dans le cadre du processus de conception des systèmes.
• Solide expérience en modélisation logique de bases de données relationnelles.
• Capacité démontrée à rédiger et optimiser des requêtes sur de grandes bases de données relationnelles.
• Compétences en scripting avec Shell, Perl ou Python.
• Expérience dans des environnements de développement Agile.
• Excellentes compétences en collaboration et en communication, avec la capacité de travailler efficacement au sein d’une équipe internationale et distribuée.
• Capacité à travailler de manière autonome tout en respectant les normes de développement et les bonnes pratiques de programmation.
- Anglais obligatoire
Atouts supplémentaires
• Expérience dans le développement de systèmes liés à la gestion des risques ou aux systèmes financiers.
• Expérience avec des frameworks de tests automatisés.
Pourquoi nous rejoindre ?
- Une communauté internationale réunissant plus de 110 nationalités différentes.
- Un environnement où la confiance est au cœur de notre culture : 70 % de nos dirigeants ont débuté leur carrière à un niveau d'entrée.
- Un système de formation solide avec notre Académie interne et plus de 250 modules disponibles.
- Un cadre de travail dynamique qui se réunit régulièrement pour des événements internes (afterworks, team buildings, etc.).
Amaris Consulting promeut l'égalité des chances. Nous nous engageons à rassembler des personnes d'horizons divers et à créer un environnement de travail inclusif. À ce titre, nous accueillons les candidatures de toutes les personnes qualifiées, sans distinction de sexe, d'orientation sexuelle, de race, d'origine ethnique, de croyances, d'âge, de situation matrimoniale, de handicap ou de toute autre caractéristique.
----------------------------------- English version -------------------------------------------
We are seeking an experienced Senior Java Developer to join a growing Market Risk technology team. In this role, you will design, build, and enhance applications that support critical risk management functions, working within a global Agile squad. This is an excellent opportunity for a hands-on engineer who enjoys solving complex technical problems involving high-volume data processing, distributed computing, and performance optimization.
Location: Montreal (Hybrid – 3 days on-site per week)
Key Responsibilities
- Develop new and enhance existing Market Risk applications
- Collaborate as part of an Agile squad with team members based in Montreal, Budapest, India, London, and New York
- Apply Agile principles and DevOps practices throughout the development lifecycle
- Partner closely with business stakeholders to understand requirements and deliver effective solutions
- Help shape the tooling and technology landscape of Risk Management by introducing tools that enable better business processes and support the firm's regulatory obligations
Required Skills & Experience
- 5+ years of hands-on experience with Core Java (server-side development), Spring, and RDBMS (candidates with 2–3 years of strong, relevant experience are also encouraged to apply)
- Experience building distributed data processing pipelines using Apache Spark, Python, and related tools/languages
- Strong object-oriented design and development skills, with solid understanding of data structures, algorithms, and design patterns
- Solid understanding of building multi-threaded applications, with hands-on experience using concurrency packages
- Excellent critical thinking and analytical abilities
- Familiarity with building and supporting applications involving prompt design, data context management, and foundational model testing
- A strong commitment to unit testing (JUnit) as part of the system design process
- Strong experience with relational database logical modeling
- Proven ability to write optimized queries against large relational databases
- Scripting ability in Shell, Perl, or Python
- Experience working within Agile development environments
- Strong collaboration and communication skills, with the ability to work effectively across a global, distributed team
- Ability to work independently while adhering to sound coding standards and best practices
- English mandatory
Nice to Have
- Experience developing Risk or Financial Systems
- Experience with automated testing frameworks
Why choose us
- An international community bringing together more than 110 different nationalities
- An environment where trust is central: 70% of our leaders started their careers at the entry level
- A strong training system with our internal Academy and more than 250 modules available
- A dynamic work environment that frequently comes together for internal events (afterworks, team buildings, etc.)
Amaris Consulting promotes equal opportunities. We are committed to bringing together people from diverse backgrounds and creating an inclusive work environment. In this regard, we welcome applications from all qualified individuals, regardless of sex, sexual orientation, race, ethnicity, beliefs, age, marital status, disability, or other characteristics.
#LI-AS2
Who are we?
Amaris Consulting est une société indépendante de conseil et de technologies au service des entreprises. Avec plus de 1000 clients dans le monde, nous déployons des solutions pour les plus grands projets depuis plus d'une décennie - tout ceci est rendu possible par une équipe internationale de 7,600 talents répartis sur les 5 continents et dans plus de 60 pays. Nos solutions sont axées sur quatre domaines d'activité différents : Les systèmes d'information et le digital, la télécommunication, les sciences de la vie et l'ingénierie. Nous cherchons à créer et à développer une communauté de talents où tous les membres de notre équipe peuvent réaliser leur plein potentiel. Amaris est votre « stepping stone » pour traverser les rivières du changement, pour relever les défis et pour réaliser tous vos projets avec succès.Chez Amaris, nous avons à cœur d'offrir à nos candidats la meilleure expérience de recrutement possible. Nous cherchons à mieux connaître et comprendre nos candidats, à les challenger et à leur faire part de nos impressions le plus rapidement possible. Voici à quoi ressemble notre processus de recrutement :
Premier contact : Notre processus commence généralement par une brève conversation virtuelle/téléphonique pour en savoir plus sur vous ! L'objectif ? Apprendre à vous connaître, comprendre vos motivations et veiller à ce que nous vous proposions le poste qui vous correspond le mieux !
Entretiens (en moyenne, le nombre d'entretiens est de 3 – il peut toutefois varier en fonction du niveau d'ancienneté requis pour le poste). Au cours des entretiens, vous rencontrerez les membres de notre équipe : votre supérieur hiérarchique bien sûr, mais aussi d'autres personnes avec lesquelles vous serez amené à travailler. Ces entretiens nous permettront d'en apprendre davantage sur vous, votre expérience et vos compétences, mais aussi sur le poste et ce que l'on attendra de vous. Bien entendu, vous apprendrez également à connaître Amaris : notre culture, notre histoire, nos équipes et vos opportunités de carrière !
Étude de cas: En fonction du poste, vous serez peut-être appelé à passer un test. Il pourra s'agir d'un jeu de rôle, d'une évaluation technique, d'un scénario de résolution de problème, etc.
Comme vous le savez, chaque personne est différente et il en va de même pour chaque rôle dans une entreprise. C'est pourquoi nous devons nous adapter en conséquence, si bien que le processus peut parfois être quelque peu différent pour chacun. Cela dit, nous nous mettons toujours à la place du candidat pour lui offrir la meilleure expérience possible. Nous avons hâte de vous rencontrer !