Quelle est la différence entre un architecte logiciel et un développeur full-stack ? Qui est le mieux payé et qui a le plus d’opportunités ?


Un développeur full-stack est exactement cela : un développeur. Il écrit du code, généralement sous la direction de quelqu'un, qu'il s'agisse du propriétaire du produit par le biais de récits d'utilisateurs agiles, ou simplement du chef d'équipe qui lui dit ce qu'il doit faire ensuite. Il peut y avoir d'autres façons d'obtenir des directives, mais en fin de compte, vous écrivez du code.

Un architecte écrit également du code pour un certain pourcentage de son temps, mais ce n'est pas son travail principal. Leur travail consiste à analyser les exigences non fonctionnelles d'un système logiciel et à choisir les approches qui seront adoptées pour les atteindre. Par exemple, l'extensibilité. Que signifie-t-elle réellement dans le contexte d'un projet donné et comment doit-elle être réalisée ? Il en va de même pour la sécurité, l'évolutivité et d'autres "attributs de qualité". L'architecte doit tenir compte de l'image globale d'un système logiciel, de tous ses éléments mobiles, de la conception de haut niveau, des approches privilégiées pour certains types de problèmes, etc. Il/elle doit ensuite communiquer tout cela à l'équipe et s'assurer que cette vision se concrétise tout au long du projet. La partie codage du travail implique généralement des "pointes architecturales" - qui sont une sorte de prototype d'une tranche de haut en bas d'un système pour prouver la viabilité d'une approche ou d'un ensemble d'approches. De même, et dans le même ordre d'idées, les prototypes - également pour prouver la viabilité d'une idée et, en outre, pour servir de point de départ à d'autres développeurs. Les architectes évaluent et choisissent également les technologies à utiliser dans un projet. Ils évaluent les compromis entre différentes conceptions et choisissent la voie à suivre. Ils'sont les penseurs de la grande vision, les communicateurs et les leaders.


Qui a le plus d'opportunités et de meilleurs salaires ? Honnêtement, je ne peux pas'répondre à cette question. Il y a probablement moins d'emplois pour les architectes que pour les développeurs. Mais on peut dire la même chose pour n'importe quel spécialiste. Je ne peux pas faire de commentaires sur les salaires, sauf pour dire que les architectes ont généralement plus d'expérience professionnelle qu'un développeur complet typique, puisqu'il faut plus d'expérience pour le devenir. Cela peut avoir un effet sur les salaires attendus, mais là encore, le marché est assez irrationnel et varie énormément d'un endroit à l'autre. Quelqu'un qui a obtenu son diplôme universitaire hier et qui n'a jamais travaillé en tant que programmeur dans sa vie gagnera un salaire beaucoup plus élevé dans la région de la baie de SF que je'ai jamais fait dans ma carrière.