Hva er forskjellen mellom en hovedutvikler og en seniorutvikler?


Beste svaret

Dette vil avhenge av definisjonene som brukes i organisasjonen din. Det beste er å slå dem opp i hvilken form de blir publisert av HR-avdelingen din. Hvis du ikke finner dem, er det på tide å begynne å jobbe med dem.

Der jeg var, var uttrykket «Omfang og innflytelse». “Scope” handlet om hvor stor en del av prosjektet du hadde ansvaret for. “Innflytelse” handlet om hvor effektiv du jobbet med mennesker og grupper utenfor standard dev-hierarkiet. Du kan eller ikke ha folk som rapporterer til deg, avhengig av hvilken rolle du har. “Roll” ble definert separat. For eksempel var rektor et nivå; Arkitekt var en rolle.

På hovednivå hadde du produktansvar. Du jobbet fra det laveste nivået i systemet til produktnivået. Jeg har glemt en haug, men når det gjelder omfang, var du ansvarlig for minst en hoveddel eller kanskje flere deler av produktet over flere, flerårige utgivelsessykluser. Det ble forventet at du kjente til alle deler av systemet du var ansvarlig for ned til kodenivå eller kunne hente dem ekstremt raskt etter behov. Du gjør kanskje ikke daglig koding, men kan gå raskt hvor som helst som trengs for koding og feilsøking. Du trengte gode tekniske og kommunikasjonsevner. Du fortsatte å veilede utviklere fra inngangsnivå til seniornivå enten formelt eller uformelt. Du hadde bred teknisk kunnskap om hele produktet utenfor ditt ansvarsområde. Du kan få andre løs. Du kan oppdage potensielle problemer og handle proaktivt for å forhindre at de blir problemer.

Når det gjelder innflytelse, jobbet du med ledelse på høyere nivå og andre fagområder for å hjelpe til med å formulere og deretter gjennomføre produktplaner. Avhengig av nivå og produkt, jobbet du også med andre produktteam for å koordinere tekniske aspekter ved funksjoner og utgivelser.

Svar

En hovedprogramvareingeniør sender stor kompleks programvare, selvstyrer iht. til forretningsmål, jobber på tvers av grupper, forbedrer teamets produktivitet og har minst innvirkning på divisjonsnivå. Prosjektene deres er vanligvis for store for et team på ti personer. Målene deres er mer generelle som «forbedre kontantstrømmen» eller «skalere 100–1000X.»

En arkitekt er ansvarlig for programvaredesign på høyt nivå. Vanligvis er det en rolle ikke en tittel og et nivå – ingeniørstiger på Amazon, Microsoft og Google bruker ikke begrepet. Tittelen har negative konnotasjoner fordi noen er dyktigere til å skrive whitepapers enn å designe programvare. Begrepet innebærer en enkelt person, mens arkitektur i moderne prosjekter vanligvis er utformet i fellesskap.

En senior programvareingeniør kan håndtere moderat komplekse prosjekter uten hjelp. Tittelen er ikke veldig eldre, og krever rundt 5–7 års erfaring. De fleste ingeniører er på dette nivået og har glede av arbeidet deres i flere tiår.

Vanligvis går du utover senioringeniøren, du bruker mindre tid på å skrive kode og mer på å gjøre forskjellige ting som å forbedre prosessen, arkitektonisk tilsyn, veilede nyere ingeniører og grensesnitt med andre forretningsenheter.

Noen selskaper har tittelinflasjon der ingeniører med 7 års erfaring gjør det samme arbeidet til samme lønn som de som senioringeniører andre steder, men har titler som rektor.

Større selskaper trenger flere nivåer på grunn av størrelse. En fremtredende ingeniør hos Google med stor innflytelse dekker mye flere produkter med $ 20B / kvartalsinntekt enn en ved en oppstart som returnerer $ 20M / år. Forskjellene mellom de høyeste nivåene og senioringeniørene øker med selskapets størrelse.

Uten tittelinflasjon er hovedingeniører som styremedlemmer når det gjelder innvirkning, autonomi, hvem de rapporterer til og kompensasjon. Distinguished Engineers er som visepresidenter.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *