Par Anaïs 17 juil. 2023
En collaboration avec Sébastien et Sylvain

Comprendre les différences entre les rôles d’architecte logiciel et d’architecte de solutions

Quand on entend parler du métier d’architecte, on pense machinalement à la personne qui dessine les plans, conçoit et supervise les travaux dans un bâtiment. On trouve aussi de nombreux architectes dans le domaine des TI. Il s’agit d’ailleurs de métiers clés dans la conception de solutions technologiques innovantes.

Parmi les experts en architecture chez Uzinakod, on retrouve deux rôles bien distincts: l’architecte de solutions et l’architecte logiciel. Tu souhaites découvrir toutes les facettes de ces deux fonctions et démystifier leurs différences fondamentales? Nos experts passionnés Sylvain Lebleu et Sébastien Richer répondent à toutes tes interrogations et te parlent à cœur ouvert de leurs responsabilités, des défis qu’ils rencontrent sur les projets et des compétences requises pour performer!

Comprendre l’architecture logicielle, le fondement de vos projets TI

L’architecture est une phase essentielle dans la conception et le développement de logiciels. C’est le socle sur lequel reposent toutes les initiatives technologiques d’une entreprise, que ce soit pour la création d’applications logicielles, la conception de systèmes complexes ou la mise en place d’infrastructures solides. Elle consiste à schématiser les différents éléments qui caractérisent un système informatique ainsi que leurs interactions afin de représenter la façon dont le logiciel devrait être conçu pour répondre aux besoins d’une entreprise et à toutes ses spécificités.

C’est le même principe que la construction d’une maison: tu as impérativement besoin d’un plan précis avant de passer aux travaux. Si tu ne sais pas par quoi commencer ni quelles étapes respecter, ce sera difficile, voire impossible de mener à terme ton projet. En informatique, c’est la même chose. Il faut voir ça comme un cahier des charges. L’architecture permet de structurer un projet et de le réaliser beaucoup plus rapidement puisqu’il donne la bonne direction à prendre et toutes les zones d’ombres technologiques sont réglées.

Chez Uzinakod, on a deux rôles majeurs qui permettent d’aligner les technologies avec les besoins commerciaux de nos clients et d’assurer la pertinence et la valeur ajoutée aux solutions qu’on crée.

L’architecte de solutions VS l’architecte logiciel, entre vision stratégique et expertise technique

Le métier d’architecte de solutions consiste à créer et à imaginer des solutions techniques logicielles adaptées aux problématiques d’une entreprise. Son but? Accompagner les entreprises dans leur transformation numérique en adaptant des solutions informatiques à des problématiques techniques et des besoins métiers spécifiques.

La présence de l’architecte de solutions dans une entreprise en TI est capitale et débute toujours dans une conversation avec quelqu’un qui a un projet, une initiative, un besoin. Sébastien Richer, notre architecte de solutions aguerri, raconte.

«Lorsque quelqu’un te parle de son besoin, il y a des roues technologiques qui commencent à tourner et à faire des liens (tiens, ce besoin correspond à telle techno ou tel élément dans le Cloud Azure). Les premiers échanges avec un client ou un prospect te donnent des repères. Ensuite, à toi d’analyser et de trouver des technologies correspondantes. L’interlocuteur, un prospect, un client ou même un collègue, va venir me consulter pour avoir une orientation en fonction d’une situation, d’un contexte. Je vais lui donner la première direction vers laquelle on va se diriger.»
– Sébastien Richer

En gros, quand un client brosse le portrait d’un contexte, l’architecte de solutions, bien souvent accompagné par des analystes, va démystifier le besoin et tenter de regarder comment y répondre au mieux. Il est important de savoir que l’architecte de solutions possède plusieurs chapeaux dans l’entreprise, aussi bien organisationnel, que technique et technologique avec un très gros côté stratégique. Pour Sébastien, une journée type se résume en deux mots: context switching. On ne le verra jamais travailler à temps plein sur un projet. Son horaire ressemble plutôt à un amas de petites rencontres parsemées durant lesquelles il effectue des suivis et donne des coups de pouce à l’équipe, notamment lors des projets en démarrage. Bien normal, il a été en première ligne avec le client, il veille donc à ce que l’équipe tienne compte de tout ce qui a été convenu.

L’un des côtés riches du quotidien d’un architecte de solutions est qu’il participe aux nombreuses rencontres exploratoires avec les clients, ce qui lui permet de découvrir une palette très variée de domaines d’affaires (maritime, assurance, santé, énergie…). Suite à ces rencontres, il va travailler conjointement avec des analystes et des chargés de compte pour monter une proposition dans laquelle il va asseoir des choix pour créer la vision architecturale d’une plateforme dans son écosystème. S’en suivra le moment crucial de présenter le plan directement au client.

L’architecte logiciel est présent lors du démarrage de nouveaux projets. Il est généralement impliqué sur trois à cinq projets et va s’assurer d’effectuer des suivis avec les équipes concernées pour mettre en place l’architecture, gérer les doutes technologiques et veiller au respect des besoins du client durant les premières semaines. L’architecte logiciel partage son temps entre les développeurs et l’équipe de ventes. Lors d’un pitch de ventes, il va également être amené à accompagner l’architecte de solutions pour définir la meilleure façon de réaliser la solution, les meilleures technologies et, surtout, les plus adaptées. Tandis que l’architecte de solutions place les morceaux, l’architecte logiciel définit les technologies (si le client ne les impose pas!).

Il possède également un petit rôle de SWAT Team lorsque des urgences surgissent rapidement. Chez nous, c’est Sylvain Lebleu qui porte cette casquette et, au vu de sa grande expertise technique, il a également la responsabilité de donner des directions technologiques pour le futur de l’entreprise. Récemment, on a d’ailleurs pris le virage vers MAUI Blazor grâce à lui.

Compétences et prérequis pour les rôles d’architectes

Le rôle d’architecte de solutions nécessite pas mal d’expérience dans des projets issus de domaines variés qui lui permettent de connaître un excellent écosystème technologique. Il faut bien évidemment effectuer régulièrement des veilles pour se tenir informé des dernières tendances, suivre des formations et certifications en continu, sans oublier de toujours collaborer avec les équipes. En se rendant disponible pour les développeurs et en encourageant les interactions entre équipes, la veille devient très vite mutuelle et la magie du partage de connaissances opère.

L’architecte de solutions doit également être à l’aise de présenter et de vendre avec conviction le plan qui a été longuement préparé. Cette partie ne peut s’exercer sans une grande curiosité qui permettra de challenger, de poser des questions et de comprendre des choses parfois complexes. C’est déjà arrivé d’être face à des solutions complexes qui avaient été codées il y a 20 ans. Il faut avoir la patience et la concentration de creuser pour les analyser et trouver des réponses. L’équipe compte sur l’architecte de solutions pour chercher ces réponses, car il a la responsabilité de leur donner les orientations nécessaires.

L’architecte logiciel est amené à changer plusieurs fois de projets dans une même journée. L’idéal est d’être capable de faire facilement et de façon continue du context switching. Dans la matinée, il peut très bien travailler sur une application X, passer l’après-midi sur un projet BI (Business Intelligence), et en fin de journée sur un projet de plateforme syndicale; il faut donc être prêt à jongler constamment entre différents contextes et types de technologies. La flexibilité est de mise puisqu’on travaille avec des clients dans des domaines très variés. Dans l’équipe, on ne suit pas de processus précis, car on n’est pas spécialisés dans un unique domaine. Notre réalité nous amène à être flexibles afin de réfléchir et de bâtir les meilleures solutions pour tous nos clients. Une excellente solution pour l’un de nos clients dans la santé pourra être totalement différente d’un client du même domaine, car leurs enjeux ne sont pas les mêmes. On met un point d’honneur à toujours rentabiliser le ROI (retour sur investissement) de nos clients en pensant pour eux aux meilleures solutions.

Un autre prérequis primordial pour exercer cette fonction est d’être capable d’exercer du mentorat au sein de l’équipe. L’idée est de montrer de nouvelles choses aux développeurs et non de leur imposer. L’architecte logiciel a un rôle-conseil et souhaite transmettre son savoir.

Les outils du quotidien

Sébastien, notre architecte de solutions, utilise majoritairement Word et PowerPoint, car pour lui, c’est important de pouvoir bien communiquer ce qu’il souhaite mettre de l’avant. Son quotidien comporte un gros aspect de présentation, donc sans grandes surprises, de supports de présentation par la même occasion.

Sylvain, notre architecte logiciel, utilise les mêmes outils que les développeurs (Visual Studio, VS Code…) et va avoir tendance à en essayer de nouveaux et à les conseiller à l’équipe s’il les considère adaptés.

L’outil commun favori de Sébastien et de Sylvain? C’est sans aucun doute Miro, la plateforme en ligne collaborative qui permet de réunir les équipes en tout temps et en tous lieux. Un outil central qui permet de collaborer tous ensemble sur un même projet et bien souvent d’y inclure le client.

Les défis

Parmi les défis de son quotidien, l’architecte de solutions se doit aussi bien de rester à jour technologiquement que de toujours trouver la bonne solution pour chaque besoin. C’est un exercice difficile que de trouver la bonne solution, mais pas de panique, car Sébastien nous précise.

«Un des réflexes pourrait être de penser que c’est mon unique responsabilité et que je dois le faire tout seul, mais c’est faux. On est toujours meilleur quand on est plusieurs.»
– Sébastien Richer

L’architecte logiciel quant à lui identifie deux défis qui consistent à bien comprendre le besoin des clients dans un premier temps, puis à bien transmettre l’information, car si l’architecte logiciel transmet mal la vision ou l’architecture, l’équipe risque de perdre bien des journées et d’avoir des problèmes plus tard dans le développement du projet. Et ses plus gros défis techniques? Les enjeux principaux qui reviennent sont clairement les systèmes qui doivent être disponibles 24h/24 pour répondre à un très grand nombre de personnes, par exemple notre projet de preuve vaccinale.

Un conseil à destination des futures recrues

S’il avait un conseil à partager aux développeurs qui convoitent le poste d’architecte de solutions, Sébastien est ferme.

«Il faut que ça les intéresse, il ne faut pas faire ce métier simplement parce que c’est une progression de carrière. Il faut être confortable à laisser aller la technique, car tu vas moins coder et il faut en avoir conscience. Essaie le rôle avant de prendre le poste, sinon tu ne sauras pas si tu aimes le faire.»
– Sébastien Richer

Sylvain a voulu nous partager un conseil propre à son expérience qui en aidera certainement plus d’un dans son avenir professionnel!

Mon conseil serait de toujours s’assurer de bien comprendre les réalités du client avant de faire ses choix architecturaux. Chaque domaine d’affaires a des spécificités qui lui sont propres. Il est donc primordial de savoir comment adapter les différents patrons de conceptions à leur réalité plutôt que l’inverse.
– Sylvain Lebleu

Conclusion

Finalement, quelle est la grosse différence entre ces deux rôles au sein d’Uzinakod? La profondeur technique! L’architecte de solutions va connaître des concepts assez larges, il a une vue plus globale et plus complète tandis que l’architecte logiciel connaît de plus petites subtilités, car il a déjà eu à régler pas mal de détails techniques d’implémentation. Pour simplifier, l’architecte de solutions va créer les grandes lignes d’un projet pour que le client comprenne ce qu’on lui propose et le coût qui y est associé tandis que l’architecte logiciel intervient ensuite pour créer la solution, la faire fonctionner et gérer les enjeux plus terre à terre.

C’est tout de même fondamental qu’ils s’enlignent. Un architecte logiciel va pouvoir prendre de bonnes décisions uniquement s’il peut se fier à quelqu’un qui a une vision plus globale comme l’architecte de solutions.

Et si c’était le moment opportun pour changer d’air et nous rejoindre? On est justement à la recherche d’un architecte logiciel.

Articles recommandés
Publié le 1 novembre 2022

Le métier de l’analyste d’affaires à la loupe

À la suite de l’émergence des nouvelles technologies et de la transformation numérique, de nombreux métiers ont évolué, nécessitant une adaptation aux nouveaux processus d’affaires. Le métier d’analyste d’affaires ne déroge pas à la règle et, contrairement à ce qui se faisait aup

En lire plus
Publié le 30 mai 2022

Gagner son pain: mieux comprendre les rôles de direction chez Uzinakod

Discussion avec Joanna (Bureau de projets) et Benoit (Développement logiciel) qui ont accepté de nous décrire leur rôle au sein de leur équipe respective.

En lire plus
Partager sur