FICHE MÉTIER – Architecte logiciel

Fiche métier Architecte Logiciel : définition, rôle et missions

FICHE MÉTIER – Architecte logiciel

Qu’est-ce qu’un architecte logiciel ?

Aussi appelé Architecte Applicatif, l’Architecte Logiciel est responsable de la conception ou du respect du modèle d’architecture logicielle permettant le bon fonctionnement du système d’information d’une organisation.

Quelles sont les missions d’un architecte logiciel ?

L’Architecte Logiciel est d’abord un ingénieur expérimenté qui a pour objectif la création ou l’évolution de l’architecture logicielle d’une organisation. Il se charge de recueillir les besoins des différentes parties prenantes (développeurs, utilisateurs, clients, etc.), puis il synthétise l’information afin de proposer une architecture idéale pour le ou les logiciels demandés.

L’Architecte Logiciel travaille en étroite collaboration avec les développeurs informatiques qui eux, se basent sur son architecture pour construire le logiciel. Selon le projet et la taille de l’entreprise, l’Architecte Logiciel peut s’impliquer dans la phase de programmation et suivre le travail des développeurs.

Pourquoi a-t-on besoin d’un architecte logiciel ?

Le but ultime de l’architecte logiciel est de faciliter le développement, l’évolution, le déploiement et la maintenance d’un système. Minimiser le temps et le coût d’intervention. Maximiser et maintenir la productivité des développeurs face aux changements.

Les missions de l’architecte logiciel sont diverses :

Pour accomplir sa mission, l’architecte logiciel commence par interroger les différents utilisateurs afin de déterminer leurs besoins et attentes.

À partir des informations recueillies par les clients et/ou utilisateurs, il élabore un cahier des charges lui permettant de proposer un modèle d’architecture logicielle.

Nous avons listé les principales missions d’un architecte logiciel :

  • Audit et analyse de l’architecture existante et anticipation des risques ;
  • Conception de l’architecture logicielle au niveau fonctionnelle et technique en fonction des différents besoins exprimés ;
  • Contrôle de la cohérence entre la mise en œuvre effective et le modèle d’architecture préconisé ;
  • Rôle de conseiller sur les bonnes pratiques et le respect des méthodologies ;
  • Accompagnement de la MOA et de la MOE* (MOA signifie maître d’ouvrage tandis que MOE veut dire maître d’œuvre. Si ces deux termes font référence à des postes-clés, ils sont loin d’être synonymes. Le chef de projet MOA détermine ce qui doit être fait tandis que le chef de projet MOE définit comment le faire) dans les décisions technologiques ;
  • Veille technologique pour s’inscrire dans une logique d’amélioration continue.

Il est important de souligner que selon la taille de l’entreprise, les fonctions de Développeur Informatique et d’Architecte Logiciel peuvent se confondre. La mission de l’architecte logiciel consiste donc à créer ou améliorer une maquette abstraite et numérique du logiciel à développer. Dans le cas d’un logiciel déjà existant, la première mission de l’architecte logiciel est de réaliser un audit et une analyse de l’architecture précédente.

Ensuite il conçoit une architecture en fonction des besoins exprimés par les clients. En collaboration avec les développeurs, il supervise la phase de conception du logiciel. Dans les petites et moyennes entreprises, il peut souvent arriver que l’architecte logiciel soit également le développeur informatique, il remplit donc toutes les fonctions. L’architecte logiciel peut-être salarié d’une grande entreprise, ou travailler en tant que prestataire au sein d’une agence. Enfin, il peut aussi exercer en tant qu’indépendant.

Les différentes étapes pour la conception d’un logiciel :

  • Audit et étude de marché

La première étape du travail de l’architecte logiciel est d’étudier les besoins et attentes des clients et des utilisateurs du logiciel. Pour cela, il mène une enquête approfondie afin de connaître parfaitement l’utilisation et la nécessité d’un tel logiciel.

À partir de ces informations, l’architecte logiciel est en mesure d’élaborer un document incluant le profil des utilisateurs, leurs besoins, le délai nécessaire, un benchmark des concurrents sur ces produits, etc.

Ce document est la base du projet de l’architecte logiciel.

  • Conception de l’architecture

Ensuite, l’architecte logiciel passe à l’étape de conception de l’architecture. Il veille à la réduction des coûts, mais surtout à optimiser la qualité logicielle. Pour cela, il cherche à respecter plusieurs critères comme la conformité, l’efficacité, l’autonomie ou encore la réutilisabilité.

Il existe plusieurs modèles d’architecture logiciels et le professionnel va déterminer quel modèle est le plus adapté au cahier des charges.

  • Conseil et accompagnement

Enfin, l’architecte logiciel intervient aussi auprès de ses clients pour des prestations de conseils et d’accompagnement. En effet, il présente l’architecture dans un premier temps à ses clients et aux développeurs du logiciel.

L’architecte logiciel peut également intervenir par la suite auprès des utilisateurs pour assurer des formations logicielles.

Quelles sont les compétences techniques essentielles pour un architecte logiciel ?

L’Architecte logiciel doit posséder de fortes compétences techniques :

  • Maîtrise parfaite des systèmes d’exploitation (Windows, OS, Linux) ;
  • Maîtrise des langages programmatiques (C+, SQL, Java, Python, PHP, R) ;
  • Connaissance des différentes normes de sécurité ;
  • Connaissance des protocoles réseaux ;
  • Maîtrise de l’anglais technique ;
  • Maîtrise de la gestion de projets techniques.

Enfin, il doit être en veille permanente au niveau technologique et ne pas hésiter à s’auto-former régulièrement via des MOOC ou en participant à des formations.

Quelles sont les softs skills requises pour un architecte logiciel ?

Certes, l’architecte logiciel est un expert en informatique, mais Il possède également des compétences et qualités humaines essentielles à sa profession.

Nous en avons listé quelques-unes :

  • Sens de l’organisation : L’architecte logiciel maîtrise parfaitement son domaine d’expertise. Son travail lui demande d’assurer plusieurs tâches différentes qu’il est capable de réaliser avec ordre et organisation.
  • Sens de l’analyse : L’architecte logiciel recueille des informations auprès des clients et futurs utilisateurs afin d’établir le cahier des charges. Cela fait appel à des capacités d’analyse certaines.
  • Travail en équipe : Enfin, l’architecte logiciel travaille en équipe. Il interroge les utilisateurs, mais collabore surtout avec les développeurs pour la mise en œuvre du logiciel.

L’architecte logiciel est un ingénieur expérimenté qui, au fil de ses expériences, a acquis le recul nécessaire pour avoir une vision globale du système à concevoir, en tenant compte de ses interactions avec d’autres sous-systèmes et des problèmes éventuels.

Comment travaille un architecte logiciel avec un logiciel déjà existant ?

Dans le cadre d’une évolution d’un logiciel existant, son premier travail consistera à découvrir le code déjà développé ainsi que la documentation associée, si elle existe.

Ensuite, que le logiciel existe ou doive être créé, il ou elle va interviewer les différentes parties prenantes. En général, il échangera avec :

  • Les responsables / demandeurs, qui veulent le plus souvent davantage d’automatisation, de rationalisation, afin de faire décroître les coûts d’exploitation de l’outil et d’élargir son spectre d’utilisation.
  • Les utilisateurs, qui sont en attente d’un logiciel simple, intuitif, joli et possédant de nombreuses fonctionnalités pratiques.
  • Les développeurs qui, outre le travail sur de nouvelles fonctionnalités, souhaitent souvent acquérir de nouvelles compétences au cours du projet.

L’architecte va alors synthétiser toutes ces informations, proposer une architecture pour le logiciel à concevoir ainsi qu’un plan de développement associé.

Enfin, en fonction du projet, l’architecte peut s’impliquer dans la phase de programmation à proprement parler : s’approprier le code (s’il existe) et le débugger, développer la nouvelle fonctionnalité / le nouveau logiciel, suivre le travail des développeurs.

A noter que l’architecture logicielle peut également être proposée par un lead developer ou un chef de projet.

Quel est le salaire moyen d’un architecte logiciel ?

Le salaire d’un architecte logiciel est facteur de ses années d’expérience, de ses compétences techniques, de la taille de l’entreprise et du projet, du périmètre exact de la fonction, des interactions avec d’autres parties prenantes, de la localisation du poste etc.

Néanmoins nous pouvons dire que la fourchette se situe généralement entre 45 et 55K€.