Développeur Java Web + .NET
Le développeur participe à fournir des solutions logicielles, à livrer des produits stables et à constamment améliorer leur qualité en proposant des solutions adaptées aux besoins d’affaires. Il analyse, conçoit, configure, développe, maintient et fait évoluer les produits logiciels afin de répondre aux besoins de l’organisation. Il est également responsable de la qualité, de la performance et de la sécurité des solutions développées.
Le conseiller contribue activement au développement de systèmes, programmes et applications informatiques de grande envergure en réalisant leur arrimage et leur mise en œuvre, tout en mettant à profit sa capacité à maîtriser les technologies et à anticiper les innovations. Il analyse les besoins des clients et des partenaires et recommande les solutions technologiques appropriées. À cet égard, il planifie, hiérarchise et coordonne les travaux afin de respecter les engagements pris et les objectifs à atteindre.
Responsabilités principales
- Analyser les besoins des clients ou d’un projet et identifier les solutions technologiques appropriées en tenant compte des engagements budgétaires et des délais de livraison.
- Élaborer des stratégies de réalisation, analyser, concevoir et documenter des programmes ou des applications.
- Développer ou coder des programmes ou des applications en intégrant des essais automatisés.
- Procéder à l’installation et aux tests de progiciels ou à l’implantation des applications auprès de la clientèle assignée.
- Assurer l’intégration harmonieuse des composantes techniques des solutions et résoudre les problèmes éventuels.
Mode de travail
Mode de travail hybride.
Présence obligatoire au bureau deux (2) jours par semaine.
Compétences
- Être curieux, savoir se remettre en question et déployer des efforts constants pour apprendre de nouvelles technologies.
- Capacité à identifier les problèmes et les obstacles, puis à proposer des solutions efficaces.
- Posséder de bonnes capacités de communication et de vulgarisation.
- Être organisé, rigoureux et savoir gérer les priorités.
- Être rassembleur, capable de convaincre les membres de son équipe et de se rallier aux décisions lorsque requis.
- Être un joueur d’équipe.
Connaissances et aptitudes requises
- Démontrer un minimum de cinq (5) années d’expérience dans un rôle similaire (niveau recherché : sénior).
- Expérience de projets de développement en mode Agile (Scrum, Kanban ou équivalent).
- Capacité à identifier et à appliquer les bonnes pratiques de développement logiciel (Clean Architecture, Clean Code, Design Patterns et principes SOLID).
- Expérience en développement d’applications Web et de services avec les technologies Java et .NET.
- Expérience dans le développement et l’intégration d’API REST.
- Expérience avec les tests automatisés (tests unitaires et tests d’intégration).
- Connaissance des pratiques d’intégration et de déploiement continus (CI/CD).
- Bonne compréhension des principes de sécurité applicative.
- Capacité à travailler de façon autonome tout en collaborant efficacement au sein d’équipes multidisciplinaires.
Environnement technologique
Connaissances approfondies
- Java 8 et plus
- Maven
- Git
- Spring Boot 2
- Spring Cloud
- Spring Data
- SQL
- MapStruct
- API RESTful
- Services SOAP (CXF)
- CI/CD
- Concourse
- C#
- .NET Framework
- .NET Core / .NET 6+
- ASP.NET MVC
- ASP.NET Core
- Entity Framework
Bonnes connaissances
- Environnements infonuagiques (Azure, AWS ou GCP)
- Docker
- Kubernetes
- Architecture microservices
- Outils DevOps et d’automatisation des déploiements
Niveau recherché : Sénior. Le candidat doit démontrer une expertise technique solide en développement Java Web et .NET, une forte autonomie, ainsi qu’une capacité à contribuer activement à la livraison de solutions de qualité dans un environnement Agile.