Hvad er forskellen mellem en softwarearkitekt og en softwaretekniker?


Bedste svar

Jeg synes, at softwarearkitektens titel er lidt overbrugt og ofte forveksles med software designer ( hvilket er endnu et forvirrende udtryk, fordi det ikke har noget at gøre med design som en kunstnerisk indsats.)

Mine definitioner ville være:

Softwarearkitekt – denne person beskæftiger sig med blokerne på højt niveau. Forbindelse mellem systemer, valg af de bedste teknologier til selve systemerne og kortlægning af forretningskrav i tekniske krav. Han har nok erfaring til at forstå, hvornår push / pull skal bruges vs pub / sub, for eksempel, eller når en NoSQL db er acceptabel i stedet for en SQL-database. Han forstår også omkostningerne ved den resulterende teknologi (med hensyn til ydeevne og faktiske driftsudgifter). Endelig skal en arkitekt forstå forretningen, ikke kun teknologien.

Software designer – når arkitekturen er oprettet, er en designer ansvarlig for at oprette det aktuelle softwaredesign. Han kan oprette et design for hver arkitektonisk blok ved at modellere de relevante klasser eller databaseforhold. Han kan også definere trådprotokoller, filformater osv.

Softwareprogrammerer – når et design er oprettet implementerer softwareudvikleren designet .

I rækkefølge efter betydning er de beslutninger, der træffes på arkitektonisk niveau, kritiske og er ofte meget svære og dyre at ændre, hvis der begås en fejl. En arkitekturfejl kan koste år i komplekse systemer. En designfejl kan koste et par sprints. En programmeringsfejl kan rettes så snart den er identificeret.

Husk også, at der ikke er noget krav om, at en person ikke kan udføre mere end en rolle. I formelle organisationer har du muligvis softwarearkitekten som en senior person (eller endda en udøvende), hvor designeren er en teamleder af en slags, og programmøren er en individuel bidragyder i dette team. I praksis forlader softwarearkitekten dog normalt ikke et projekt, når arkitekturen er færdig, og når arkitekturen arbejder langsommere, bliver han normalt involveret i design og programmering.

Advarslen er dog at arkitekten er ansvarlig for at vælge teknologiblokke ud fra deres fortjenester og ikke på hans fortrolighed, i hvilket tilfælde han kan ende med et valg, hvor han kan bidrage lidt på kodeniveau. implementeringen til domæneeksperterne.

Det er bare min mening, men jeg er sikker på, at der er mange andre fortolkninger. Jo enklere applikationen er, jo mere overflødige bliver nogle roller. For en simpel applikation behøver du ikke en arkitekt. Hvis applikationen er enkel nok, har du måske ikke engang en designer. Men du har altid brug for nogen til at implementere den.

Svar

Jeg ved, at det er uhøfligt, og jeg er ked af det, men jeg kan ikke tro, at folk (bortset fra Edward Guy Capriolo) skrev lange svar, der forklarede forskellen mellem to titler. “Software-arkitekter” findes kun i sci-fi-film som Matrix.

Titlen blev opfundet af virksomhedsbureaukrater for at etablere den nye ikke-ledelsesmæssige lønklasse, hvor nogen uden en MBA kunne tjene seks tal. Det kom praktisk under “outsourcing”, da de få tilbageværende ikke var “offshore” eller H1B / L1-udviklere kunne promoveres til “arkitekter” for at beholde deres løn, da alle “almindelige” ingeniører havde mandat til at være “rabatressourcer”.

En anden ting at huske på: ubrugelige rådgiverstillinger som den er fyldt af slægtninge og venner, så der er ingen officiel dygtighed at lære. “Arkitektens” værdi er vag og subjektiv for mildest talt. TOGAF er måske den ultimative beskrivelse af “arkitektens” ansvar. Jeg studerede det lort godt for at vise det ved “arkitektoniske” interviews. I det normale liv er min specialitet dog at starte flere millioner projekter. Og genoplive flere millioner fiaskoer. Gør det mig til en “arkitekt”? Det involverer en masse kodning, ved du. Og nul “rammer” til “virksomhedsarkitektur”.

Du skal bare redigere dit CV og erstatte alle de tidligere jobtitler for at vise “års erfaring”. Stænk derefter generøst “virksomhedsarkitektur” i hele CVet. Lad mig se på arkitektens version af mit (ellers udvikleres) CV. Her. Kopier det ordret:

“Udviklet avanceret teknologivision og robust virksomhedsarkitektur inden for IT. Defineret fælles køreplanindhold. Udviklet og implementeret strategien for virksomhedsarkitektur bestående af principper, referencearkitekturer, ordlister og taksonomier. Opretholdt løbende analyse af industri-, teknologi- og markedstendenser for at bestemme potentielle påvirkninger på virksomheden. ”

Tillykke! Du er officielt forfremmet til “Enterprise Architect”.Det eneste, der er tilbage at gøre, er at sende dit nyværdige CV til arbejdsgivere, der danner den store IT-konsulentfødevarekæde – for at “post-sell” uanset hvad de sælger: Oracle, IBM, Microsoft osv. Gennem “arkitekturdiagrammer”: farvede blokke af leverandørpakkerne forbundet med imaginær “integration”. Du skal ikke bekymre dig om den “tekniske mumbo-jumbo”. Du er en arkitekt på højt niveau, der præsenterer den strategiske vision for lige så værdige og meget ikke-tekniske “C-niveau interessenter”.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *