Mode de travail: Hybride, minimum 2 jours en présentiel
Description des fonctions
Titre du poste
Architecte logiciel expert sénior
Description des fonctions
Poste sous la responsabilité du directeur de l'équipe d'architecture, d'infrastructure et de l'innovation.
L'architecte logiciel agit comme expert technique de référence pour concevoir, faire évoluer et moderniser les solutions applicatives de l'organisation. Il définit des architectures robustes, sécurisées, performantes et évolutives, alignées avec les orientations d'entreprise, les contraintes des systèmes existants et les objectifs de transformation.
Il analyse les besoins fonctionnels et non fonctionnels, notamment en matière de performance, sécurité, maintenabilité, intégration, disponibilité et exploitabilité. Il propose des solutions adaptées à des environnements complexes, incluant des applications web modernes, des architectures API et microservices, des systèmes .NET, des bases de données SQL et des composants patrimoniaux à moderniser.
Il contribue à faire évoluer les principes d'architecture, les standards de développement, les choix technologiques et les bonnes pratiques. Il accompagne les équipes de développement, contribue aux revues techniques et veille à la qualité du code, à l'intégration des systèmes, à la sécurité applicative et à la réduction de la dette technique.
Il collabore étroitement avec de multiples intervenants au sein de l'organisation, notamment les développeurs, les architectes de solutions, les architectes de sécurité, les administrateurs de bases de données, les équipes DevOps, les experts en infrastructure et les représentants métiers, afin d'assurer la cohérence, la faisabilité et la pérennité des solutions mises en œuvre.
Responsabilités principales
- Comprendre les orientations stratégiques de l'organisation, les besoins d'affaires, les contraintes opérationnelles, les enjeux technologiques et l'état actuel des systèmes afin de proposer des architectures robustes, évolutives et alignées sur les objectifs de transformation.
- Agir comme expert-conseil auprès des parties prenantes d'affaires, telle l'équipe produit, des équipes de développement, de l'équipes d'architecture et de sécurité, d'infrastructure, de données.
- Faire évoluer l'architecture cible des solutions applicatives, en assurant la cohérence entre les besoins fonctionnels, les exigences non fonctionnelles, les standards technologiques et les orientations d'entreprise.
- Concevoir des architectures logicielles efficaces et performantes pour des applications web modernes, des architectures fondées sur les API.
- Élaborer des stratégies de modernisation, de migration, d'intégration et d'évolution incrémentale des systèmes, incluant les environnements Microsoft .NET, les applications ASP.NET, les services Windows et les plateformes d'hébergement associées.
- Réaliser des prototypes de solutions techniques. Validation de la faisabilité technique.
- Évaluer les options technologiques, recommander les choix d'architecture et documenter les décisions structurantes, incluant les compromis entre coûts, délais, qualité, sécurité, performance, maintenabilité, interopérabilité et évolutivité.
- Encadrer techniquement les équipes de développement en favorisant l'application des bonnes pratiques de conception logicielle, de qualité du code, d'intégration continue, d'automatisation et d'observabilité.
- Promouvoir les standards, principes, patrons d'architecture, cadres de référence et pratiques de développement applicables à l'ensemble des solutions, notamment en matière d'API, de microservices, d'accès aux données et d'intégration.
- Participer aux revues d'architecture, aux revues de code.
- Identifier les risques techniques majeurs, proposer des mesures de mitigation et accompagner leur mise en œuvre.
- Anticiper les tendances technologiques du marché et identifier les occasions d'innovation permettant d'améliorer la performance, l'efficacité, l'évolutivité ou l'expérience utilisateur des solutions.
- Contribuer à la planification des projets, notamment par l'estimation des efforts, l'identification des dépendances, la priorisation des travaux techniques et la définition des feuilles de route d'évolution.
Exigences et qualités requises pour réussir dans ce rôle
- Baccalauréat en informatique, en génie logiciel, en ingénierie ou dans une discipline pertinente, ou expérience équivalente.
- Minimum de 10 à 15 années d'expérience en technologies de l'information, dont plusieurs années en architecture logicielle, architecture de solutions ou rôle équivalent.
- Expérience significative en développement de systèmes complexes, critiques ou à grande échelle.
- Excellente compréhension du cycle de vie complet des applications.
- Connaissance approfondie de l'architecture des applications web modernes, incluant les enjeux de performance, sécurité, maintenabilité, intégration.
- Maîtrise des architectures fondées sur les API, les microservices, les services applicatifs et les architectures distribuées.
- Expertise dans l'écosystème Microsoft .NET, notamment C#, ASP.NET, ASP.NET MVC, Entity Framework, LINQ, SQL Server, IIS, services Windows et environnements Windows Server.
- Bonne compréhension des environnements ASP.NET historiques, incluant WebForms, ainsi que des enjeux de migration ou de modernisation vers des architectures plus récentes.
- Bonne connaissance des technologies frontales et des formats d'échange web, notamment HTML, CSS, JavaScript, JQuery, XML, JSON et principes d'intégration avec des interfaces web modernes.
- Maîtrise du langage SQL et des principes de conception, d'optimisation et d'intégration avec des bases de données relationnelles.
- Bonne connaissance de Linux, des environnements d'exploitation en conteneur d'application.
- Très bonne compréhension des pratiques DevOps, CI/CD, automatisation des déploiements, gestion des configurations, observabilité et exploitation applicative.
- Bonne connaissance des principes de sécurité applicative, de protection des données, de gestion des identités et des accès, ainsi que des exigences de conformité applicables.
- Capacité à produire des dossiers d'architecture, diagrammes, feuilles de route, évaluations technologiques, analyses d'impacts, preuves de concept et recommandations exécutives.
- Expérience dans des environnements agiles à l'échelle, multidisciplinaires et impliquant plusieurs parties prenantes.
- Expérience en modernisation d'applications patrimoniales, notamment dans des environnements .NET, ASP.NET WebForms, WCF, SQL Server ou Windows Server.
Atouts
- Connaissance de l'architecture des applications mobiles hybrides combinant technologies web et composantes natives mobiles.
- Connaissance des langages Swift et Java dans un contexte d'intégration ou de conception d'applications mobiles.
- Expérience avec des environnements cloud publics, privés ou hybrides, tels que Azure.
- Expérience avec Docker, Kubernetes.
Compétences
- Leadership technique reconnu et capacité d'influence auprès d'équipes multidisciplinaires.
- Grande capacité d'analyse, de synthèse et de conceptualisation.
- Capacité à résoudre des problèmes complexes dans des environnements comportant de fortes contraintes techniques, organisationnelles ou opérationnelles.
- Excellente capacité à vulgariser des concepts techniques complexes auprès de publics non techniques.
- Capacité à gérer plusieurs parties prenantes, à concilier des points de vue divergents et à orienter les décisions vers des solutions pragmatiques.
- Rigueur dans la documentation.
- Esprit d'équipe, collaboration et habiletés relationnelles supérieures.
- Autonomie, initiative et capacité à agir comme référence dans son domaine d'expertise.
- Excellentes compétences en communication orale et écrite en français.
CGI offre une estimation raisonnable de la fourchette salariale pour ce poste. Le calcul de cette fourchette dépend de divers facteurs, notamment le niveau de compétence, le marché géographique, l’expérience, la formation ainsi que les licences et certifications professionnelles. Les décisions en matière de rémunération dépendent des particularités de chaque situation. Une estimation raisonnable de cette fourchette salariale se situe entre 80 000 $ et 120 000 $. Ce poste est actuellement vacant.
#LI-AM1