Qual è la differenza tra un architetto del software e un ingegnere del software?

Migliore risposta

Penso che il titolo dellarchitetto del software sia un po abusato e spesso confuso con il progettista del software ( che è ancora un altro termine confuso, perché non ha nulla a che fare con il design come impresa artistica.)

Le mie definizioni sarebbero:

Software architect – questa persona si occupa dei blocchi di alto livello. Connettività tra i sistemi, scelta delle migliori tecnologie per i sistemi stessi e mappatura dei requisiti aziendali in requisiti di ingegneria. Ha abbastanza esperienza per capire quando push / pull dovrebbe essere usato rispetto a pub / sub, ad esempio, o quando un database NoSQL è accettabile al posto di un database SQL. Comprende anche i costi della tecnologia risultante (in termini di prestazioni e spese operative effettive). Infine, un architetto deve capire il business, non solo la tecnologia.

Software designer – una volta stabilita larchitettura, un designer è responsabile della creazione del progetto software effettivo. Può creare un progetto per ogni blocco architettonico modellando le classi appropriate o le relazioni di database. Può anche definire protocolli via cavo, formati di file, ecc.

Programmatore software – una volta stabilito un progetto, lo sviluppatore del software implementa il progetto .

In ordine di importanza, le decisioni prese a livello di architettura sono critiche e spesso sono molto difficili e costose da modificare in caso di errore. Un errore di architettura può costare anni in sistemi complessi. Un errore di progettazione può costare alcuni sprint. Un errore di programmazione può essere corretto non appena identificato.

Inoltre, tieni presente che non è necessario che una persona non possa svolgere più di un ruolo. Nelle organizzazioni formali, potresti avere larchitetto del software come persona senior (o anche un dirigente), con il progettista che è un capo del team di qualche tipo e il programmatore un collaboratore individuale di quel team. Tuttavia, in pratica, larchitetto del software di solito non abbandona un progetto una volta completato il lavoro di architettura e, una volta che il lavoro di architettura rallenta, di solito viene coinvolto nella progettazione e nella programmazione.

Lavvertenza è tuttavia che larchitetto è responsabile della scelta dei blocchi tecnologici in base ai loro meriti, e non sulla sua familiarità, nel qual caso potrebbe finire con una scelta in cui può contribuire poco a livello di codice. In quei casi, dovrebbe sapere meglio e andarsene limplementazione agli esperti del dominio.

Questa è solo la mia opinione, tuttavia, sono sicuro che ci siano molte altre interpretazioni. Inoltre, più semplice è lapplicazione, più superflui diventano alcuni ruoli. Per unapplicazione semplice, non hai bisogno di un architetto. Se lapplicazione è abbastanza semplice, potresti non avere nemmeno un designer. Ma hai sempre bisogno di qualcuno che la implementi.

Rispondi

So che è scortese e mi dispiace, ma non riesco a credere che le persone (a parte Edward Guy Capriolo) abbiano scritto lunghe risposte spiegando la differenza tra due titoli. Gli “architetti del software” esistono solo nei film di fantascienza come Matrix.

Il titolo è stato inventato dai burocrati aziendali per stabilire la nuova fascia salariale non dirigenziale, in cui qualcuno senza un MBA poteva guadagnare sei cifre. È stato utile durante l “outsourcing” poiché i pochi rimasti non “offshore” o Gli sviluppatori H1B / L1 potrebbero essere promossi ad “architetti” per mantenere il loro stipendio, dal momento che tutti gli ingegneri “regolari” dovevano essere “risorse scontate”.

Unaltra cosa da tenere a mente: posizioni di consulente inutili come quella sono riempiti da parenti e amici, quindi non ci sono competenze ufficiali da apprendere. Il valore di “architetto” è vago e soggettivo a dir poco. TOGAF è forse la descrizione definitiva delle responsabilità dell “architetto”. Ho studiato bene quella schifezza per metterla in mostra nelle interviste “architettoniche”. Nella vita normale, tuttavia, la mia specialità è avviare progetti multimilionari. E rilanciare milioni di fallimenti. Mi rende un “architetto”? Implica molta programmazione, sai. E zero “framework” di “architettura aziendale”.

Basta modificare il tuo curriculum sostituendo tutti i titoli di lavoro precedenti per mostrare gli “anni di esperienza”. Quindi spargi generosamente il gergo di “architettura aziendale” in tutto il curriculum. Fammi vedere la versione dellarchitetto del mio curriculum (altrimenti quello dello sviluppatore). Qui. Copia alla lettera:

“Sviluppo di una visione tecnologica avanzata e solide capacità di architettura aziendale allinterno dellIT. Contenuto della roadmap comune definito. Sviluppato e implementato la strategia per larchitettura aziendale composta da principi, architetture di riferimento, glossari e tassonomie. Analisi costante del settore, della tecnologia e delle tendenze di mercato per determinare i potenziali impatti sullimpresa. “

Congratulazioni! Sei stato ufficialmente promosso a “Enterprise Architect”.Lunica cosa che resta da fare è inviare il tuo nuovo degno curriculum ai datori di lavoro che formano la Great IT Consulting Food Chain – per “post-vendere” qualunque cosa stiano vendendo: Oracle, IBM, Microsoft, ecc. Attraverso “diagrammi di architettura”: blocchi colorati di i pacchetti vendor collegati da “integrazione” immaginaria. Non preoccuparti del “mumbo-jumbo tecnico”. Sei un architetto di alto livello che presenta la visione strategica a “stakeholder di livello C” altrettanto dignitosi e altamente non tecnici.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *