Meilleure réponse
Je pense que le titre darchitecte logiciel est un peu surutilisé et souvent confondu avec le concepteur logiciel ( qui est encore un autre terme déroutant, car il na rien à voir avec le design en tant quactivité artistique.)
Mes définitions seraient:
Architecte logiciel – cette personne soccupe des blocs de haut niveau. Connectivité entre les systèmes, choix des meilleures technologies pour les systèmes eux-mêmes et mise en correspondance des exigences métier en exigences dingénierie. Il a suffisamment dexpérience pour comprendre quand push / pull doit être utilisé par rapport à pub / sub, par exemple, ou quand une base de données NoSQL est acceptable à la place dune base de données SQL. Il comprend également les coûts de la technologie résultante (en termes de performances et de dépenses opérationnelles réelles). Enfin, un architecte doit comprendre lentreprise, pas seulement la technologie.
Concepteur de logiciels – une fois larchitecture établie, un concepteur est responsable de la création de la conception du logiciel. Il peut créer une conception pour chaque bloc architectural en modélisant les classes appropriées ou les relations de base de données. Il peut également définir des protocoles de câblage, des formats de fichiers, etc.
Programmeur de logiciels – une fois quune conception est établie, le développeur de logiciels met en œuvre la conception .
Par ordre dimportance, les décisions prises au niveau architectural sont critiques et sont souvent très difficiles et coûteuses à modifier en cas derreur. Une erreur darchitecture peut coûter des années dans des systèmes complexes. Une erreur de conception peut coûter quelques sprints. Une erreur de programmation peut être corrigée dès quelle est identifiée.
De plus, gardez à lesprit quil nest pas nécessaire quune personne ne puisse remplir plus dun rôle. Dans les organisations formelles, vous pouvez avoir larchitecte logiciel en tant que personne senior (ou même un cadre), le concepteur étant un chef déquipe dune certaine manière, et le programmeur un contributeur individuel dans cette équipe. Cependant, dans la pratique, larchitecte logiciel ne quitte généralement pas un projet une fois le travail darchitecture terminé, et une fois que le travail darchitecture ralentit, il simplique généralement dans la conception et la programmation.
La mise en garde est Cependant, larchitecte est responsable du choix des blocs technologiques en fonction de leurs mérites, et non de sa familiarité, auquel cas il peut se retrouver avec un choix dans lequel il peut peu contribuer au niveau du code. Dans ces cas, il doit savoir mieux et quitter limplémentation aux experts du domaine.
Cest juste mon avis cependant, je suis sûr quil y a beaucoup dautres interprétations. De plus, plus lapplication est simple, plus certains rôles deviennent superflus. Pour une application simple, vous navez pas besoin dun architecte. Si lapplication est assez simple, vous navez peut-être même pas de concepteur. Mais vous avez toujours besoin de quelquun pour limplémenter.
Réponse
Je sais que cest impoli, et je suis désolé, mais je ne peux pas croire que des gens (à part Edward Guy Capriolo) aient écrit de longues réponses expliquant la différence entre deux titres. Les «architectes logiciels» nexistent que dans les films de science-fiction comme Matrix.
Le titre a été inventé par des bureaucrates dentreprise pour établir la nouvelle tranche salariale non-cadre, où une personne sans MBA pouvait gagner six chiffres. Il sest avéré utile lors de la «sous-traitance» car les rares non «offshore» ou Les développeurs H1B / L1 pourraient être promus «architectes» pour conserver leur salaire, puisque tous les ingénieurs «réguliers» étaient mandatés pour être des «ressources à rabais».
Autre chose à garder à lesprit: des postes de conseiller inutiles comme ça sont remplis par des parents et amis, il ny a donc pas de compétences officielles à apprendre. La valeur de «larchitecte» est vague et subjective pour dire le moins. TOGAF est peut-être la description ultime des responsabilités de «larchitecte». Jai bien étudié cette merde pour la montrer lors dentretiens «architecturaux». Dans la vie normale, cependant, ma spécialité est de démarrer des projets de plusieurs millions. Et raviver des échecs de plusieurs millions. Cela fait-il de moi un «architecte»? Cela implique beaucoup de codage, vous savez. Et zéro «framework» «architecture dentreprise».
Il suffit de modifier votre CV en remplaçant tous les titres de poste précédents pour montrer les «années dexpérience». Puis saupoudrez généreusement le jargon «architecture dentreprise» dans tout le CV. Permettez-moi de regarder la version de mon CV (sinon celle du développeur) par larchitecte. Ici. Copiez-le textuellement:
«Développement dune vision technologique avancée et de solides capacités darchitecture dentreprise au sein de linformatique. Contenu de la feuille de route commune définie. Développer et mettre en œuvre la stratégie darchitecture dentreprise composée de principes, darchitectures de référence, de glossaires et de taxonomies. Analyse continue du secteur, de la technologie et des tendances du marché pour déterminer les impacts potentiels sur lentreprise. »
Félicitations! Vous avez été officiellement promu « Architecte dentreprise ».Il ne vous reste plus quà envoyer votre CV nouvellement digne aux employeurs formant la Great IT Consulting Food Chain – pour «post-vendre» tout ce quils vendent: Oracle, IBM, Microsoft, etc. à travers des «diagrammes darchitecture»: blocs colorés de les packages vendeurs reliés par une «intégration» imaginaire. Ne vous inquiétez pas du «mumbo-jumbo technique». Vous êtes un architecte de haut niveau présentant la vision stratégique à des «parties prenantes de niveau C» tout aussi dignes et hautement non techniques.