Conception logiciel


Introduction

L'architecture logicielle consiste à concevoir, développer et même maintenir des systèmes logiciels. Celle-ci implique une compréhension des principes de base de la programmation, des technologies associées qui seront utilisées ainsi qu'une bonne connaissance des exigences métiers. Cette conception peut être une simple application ou s'étendre à tout un écosystème d'applications travaillant en étroites collaborations.

Contexte professionnel

Dans un contexte professionnel, un concepteur logiciel peut travailler dans de nombreux secteurs allant de l'automatisation industrielle, par des applications de gestion en passant par de l'intelligence artificielle. Cette compétence est d'autant plus recherchée à l'ère du numérique.

Elle est régulièrement mentionnée dans la presse et les médias. Ces différents articles ont souvent mis l'accent sur l'importance de cette compétence pour aider les entreprises à répondre aux exigences de leurs métiers et rester compétitifs sur le marché de la technologie. On trouve également de nombreux articles sur les bonnes pratiques et les outils à utiliser pour concevoir des architectures robustes et durables.

Aujourd'hui, mon niveau de maîtrise est avancé mais je continue à me perfectionner en lisant des articles et à me tenir régulièrement informé.

Selon le type de projet et de sa difficulté, on peut être compétent dans la conception logiciel, parfois, certains projets restent difficilement réalisables pour cause de contraintes techniques et d'environnents inextricables – exigences réglementaires, des processus trop complexes etc.

Experience

Ceci me rappelle une anecdote sur le projet PocL. L'application devait avoir accès aux locaux de l'entreprise. Dans une première version j'intègre les informations en dur dans le code.

La problématique sur le plan conceptuel, c'est que d'autres applications futures devaient pouvoir accéder aussi à ces locaux. J'ai alors pris rendez-vous avec le service « DTS » qui s'occupait de référencer les locaux et de les tenir à jour dans un fichier Excel.

Je leur ai proposé de développer une micro infrastructure dans laquelle j'injecterai le fichier Excel permettant de centraliser les locaux sur une base de données SQL. Cette base serait indépendante du reste et elle posséderait sa propre interface d'administration. En faisant cela, chaque application pourrait demander à travers une API, les informations nécessaires.

Je réglais plusieurs problématiques, la centralisation des données – il est plus facile de lire une base de données sur un serveur qu'un fichier Excel– et les locaux sont soumis aux règles du serveur sur lequel ils sont hébergés – sauvegarde journalière, flexibilité et intégrité des informations –.

Mon autocritique

En ce qui concerne mes compétences, je suis capable de comprendre et de concevoir des systèmes informatiques et de les mettre en œuvre de manière efficace. Néanmoins, je pourrais travailler sur des projets plus complexes en partageant le travail avec plusieurs équipes. Ceci me permettrait d'améliorer ma capacité d'analyse et mon habileté à répondre à des problématiques plus grandes.

L'acquisition de cette compétence s'est faite au fur et à mesure de mes projets sur lesquels j'ai pu apprendre, expérimenter et tester de nouvelles choses.

Dans mon projet personnel et professionnel, je compte bien atteindre un niveau d'expert. Cela permettrait de travailler sur des projets informatiques plus conséquents, innovants et de les rendre plus résilients et évolutifs.

Futur et conseils

Je conseillerais de travailler sur des projets de toutes tailles et de se confronter à des problématiques différentes pour pouvoir s'améliorer dans ce domaine. Il ne faut pas hésiter à échanger avec des experts et enfin, pratiquer de la veille est un plus pour se tenir informé sur les tendances ou pratiques.

Cette compétence me semble primordiale dans le métier que j'exerce. Que ceci soit dans le rôle d'un développeur ou manageur d'une équipe, il est important de comprendre l'environnement et les systèmes d'informations dans lesquels nous évoluons.

Je compte poursuivre le développement de cette compétence en participant à des conférences pour me tenir au courant des actualités. Je compte aussi travailler à l’avenir sur des projets plus complexes.


Projets associés à cette compétence