Programmering

7 dødelige karrierefeil utviklere gjør

Du finner ingen mangel på karriere motiverende setninger rundt fiasko: mislykkes raskt, fiasko bygger karakter, nøkkelen til suksess er fiasko, feil får deg til å vokse, aldri vær redd for å mislykkes. Men ideen om å ta feil vei til toppen av programvareindustrien er sannsynligvis dårlig. Hver utvikler vil ha sin del av feiltrinn i en karriere, men hvorfor ikke lære av andres erfaring - og unngå de dyreste feilene?

Det var det vi gjorde: Vi snakket med en rekke tekniske proffer som hjalp oss med å identifisere områder der feil lett kan unngås. Ikke overraskende, nøkkelen til en solid utviklingskarriere innebærer symmetri: For eksempel å ikke bo med en bunke eller jobb for lenge, men så ikke igjen å bytte språk og arbeidsgivere så ofte at du hever røde flagg.

Her er noen av de mest bemerkelsesverdige karrierefellene for ingeniører - et minefelt du enkelt kan unngå mens du navigerer i et teknologimarked som er i stadig endring.

Feil nr. 1: Blir for lenge

I disse dager er det sjelden du har en tiår lang periode som utvikler hos ett firma. På mange måter er det et æresmerke som viser din betydning for virksomheten eller i det minste din evne til å overleve og trives. Men de som har bygget en karriere i bare ett selskap, kan plutselig finne seg i feil ende av nedbemanning eller "rettighetsstørrelse", avhengig av moteordet som ble foretrukket på den tiden.

Meningene varierer med hvor lenge du skal bo på ett sted. Praveen Puri, en ledelseskonsulent som tilbrakte 25 år som utvikler og prosjektleder før han startet sitt eget firma, er ikke redd for å kaste ut noen tall.

"Jo lenger du holder deg i en stilling, jo mer stagnerer dine ferdigheter og lønn, og du blir lei og rastløs," sier Puri. På den annen side, hvis du bytter flere jobber etter mindre enn to år, sender den et rødt flagg. Etter min egen erfaring bodde jeg for lenge på en jobb der jeg jobbet i 14 år - jeg burde ha sluttet etter seks. Jeg forlot andre stillinger etter gjennomsnittlig fire år, noe som sannsynligvis handler om riktig.

Michael Henderson, CTO i Talent Inc., ser to store ulemper med å bli på et sted for lenge. "For det første risikerer du å begrense eksponeringen din for nye tilnærminger og teknikker," sier han, "og for det andre vil ditt profesjonelle nettverk ikke være så dypt eller så variert som noen som bytter team eller selskaper."

Å fokusere for mye på en bunke som brukes av din nåværende arbeidsgiver, er åpenbart bra for firmaet, men kanskje ikke for deg.

"Det er en fordel for andre arbeidsgivere som ønsker et veldig spesialisert ferdighetssett, og hver virksomhet er forskjellig," sier Mehul Amin, direktør for ingeniør i Advanced Systems Concepts. “Men dette kan begrense veksten og kunnskapen din på andre områder. Å være et par måneder på hver jobb er åpenbart ikke et flott utseende for ditt CV, men ansattes omsetning er ganske høy i disse dager, og arbeidsgivere forventer at yngre arbeidstakere som nyutdannede studenter skal bevege seg litt før de blir langsiktige i et selskap.

Feil nr. 2: Jobbsprang

La oss se på baksiden: Flytter du deg for mye? Hvis det er en bekymring, kan du spørre om du virkelig får det du trenger fra din tid i et firma.

Charles Edge, direktør for profesjonelle tjenester i Apple Device Management Company JAMF Software, sier at ansettelsesledere kan svikte hvis de ønsker å plassere noen i lang tid: "Omvendt, hvis en organisasjon årlig brenner gjennom utviklere og gir en ansatt som har vært i ett selskap i 10 år kan representere en utfordrende kulturell passform. Jeg bruker mye tid på å utvikle medarbeiderne mine, så jeg vil ha dem med meg lenge. Å bytte jobb kan gi eksponering for mange forskjellige teknikker og teknologier. "

De som går for raskt, får kanskje ikke se hele livssyklusen til prosjektet, advarer Ben Donohue, teknisk direktør i MediaMath.

"Faren er å bli en leiesoldat, en innleid pistol, og du går glipp av muligheten til å få en følelse av eierskap over et produkt og bygge varige forhold til mennesker," sier Donohue. “Uansett hvor talentfull og kunnskapsrik du er som teknolog, trenger du fortsatt muligheten til å se ting fra brukerens perspektiv, og det tar tid å bli kjent med brukerbehov som programvaren din adresserer og hvordan de bruker produktet ditt. ”

Hilary Craft, IT-avdelingsleder i Addison Group, gjør seg tydelig: “Konstant jobbhopping kan sees på som et rødt flagg. Arbeidsgivere ansetter basert på teknisk dyktighet, pålitelighet og oftere enn ikke, kultur. Stabilitet og prosjektgjennomføring kompletterer ofte disse ansettelsesbehovene. For entreprenører er det en god regel å fullføre hvert prosjekt før du går videre til neste rolle. Noen fagpersoner har en tendens til å 'rate shop' for å tjene høyest mulig timepris, men i sin tur brenne broer som ikke vil lønne seg i det lange løp. "

Feil nr. 3: Videreføring av en kampanje

Det er et poeng i hver utviklers liv hvor du lurer på: er dette det? Hvis du liker å kode mer enn å kjøre showet, kan du lure på om det å bli stående kan stoppe karrieren din.

"Å gå over til ledelse bør være en forsiktig, gjennomtenkt beslutning," sier Henderson fra Talent Inc.. “Ledelse er en karriereendring - ikke den logiske utviklingen av det tekniske sporet - og krever et annet sett med ferdigheter. Jeg har også sett mange selskaper skyve godt teknisk talent inn i ledelsen fordi selskapet synes det er en belønning for den ansatte, men det viser seg å være en feil for både lederen og selskapet.

Bli kjent med ditt eget arbeidsmiljø, sier ledelseskonsulent Puri, og legger til at det ikke er noe svar som passer perfekt for alle.

"Jeg har jobbet noen steder der ulykkelige ledere ikke hadde reell makt, var overbelastet med papirer og møter og måtte spille politikk," sier Puri. “I disse miljøene ville det være bedre å være i utvikling. På lang sikt vil jeg anbefale at alle kommer inn i ledelsen, fordi utviklingskarrierer stanser etter 20 år, og du vil ikke motta mye mer kompensasjon. ”

En annen måte å se på dette kan være selvbevaring. Scott Willson, produktmarkedsdirektør i Automic, stiller spørsmålet: “Hvem vil de sette i stedet for deg? Hvis ikke du, kan de fremme den mest inkompetente eller motbydelige medarbeideren bare fordi å miste produktiviteten fra skyttergravene ikke vil være like konsekvenser som å miste mer kvalifiserte ansatte. Noen ganger kan det å akseptere en kampanje gi deg - og kollegene / vennene dine - kontroll over arbeidshverdagen din. Alle bør være i ledelsen minst en gang i karrieren hvis de ikke har noe annet enn å få innsikt i hvorfor og hvordan ledelse og selskaper fungerer. ”

Feil nr. 4: Ikke betale det videre

En mindre åpenbar feil kan være å holde seg for fokusert på ditt eget karrierespor uten hensyn til juniorutviklerne på kontoret ditt. De som parrer med unge programmerere blir ofte tappet når et team trenger ledelse.

"Jeg har funnet ut at veiledning av juniorutviklere har gjort meg bedre i jobben min fordi du lærer noe fag dypere ved å lære det enn du gjør ved noen annen metode," sier Automic's Willson. "Også, som utviklere ofte sliter med mellommenneskelige ferdigheter, gir veiledning store muligheter til å pusse opp menneskers ferdigheter."

Hvis erfaring er den beste læreren, vil undervisning i andre bare utdype kunnskapen din, sier JAMF Software’s Edge. Når det er sagt, holder han det ikke mot en travel utvikler hvis det ennå ikke har skjedd.

"La oss innse det - ingen utviklingsteam har noen gang hatt nok ressurser til å levere det produktledelsen vil ha dem til," sier Edge. “Når seniorutviklere ikke har tid til å veilede yngre utviklere, forstår jeg det fullt. Bare ikke si det er fordi 'jeg er ikke god med folk.' "

Feil nr. 5: Hold deg til bunken din

Din ekspertise i en bunke kan gjøre deg uvurderlig for din nåværende arbeidsplass - men hjelper det karrieren din? Kan det skade å være for fokusert på bare en bunke?

MediaMaths Donohue trekker ingen slag på denne: ”Selvfølgelig er det - det er ingen moderne programvareingeniørrolle der du bare vil bruke en teknologi i løpet av din karriere. Hvis du tar en Java-utvikler som har jobbet i Java i 10 år, og plutselig begynner de å jobbe med et JavaScript-program, vil de skrive det annerledes enn noen med lignende års erfaring som Python-utvikler. Hver teknologi du lærer, påvirker beslutningene dine. Noen vil hevde at det ikke er bra - hvis du tar en Java-objektorientert tilnærming til et løst skrevet språk som JavaScript, vil du prøve å få det til å gjøre ting som det ikke er ment å gjøre. "

Det kan skade banen din å være for fokusert på en bunke, sier Henderson fra Talent Inc., men kanskje av andre grunner enn du tror.

"Hver bunke vil ha en annen kultur og et annet perspektiv, som til slutt vil utvide og fremskynde karriereveksten din," sier Henderson. "For eksempel finner jeg at mange C # -utviklere bare er klar over Microsofts økosystem når det er en langt større verden der ute. Uten tvil har Java det beste økosystemet, og jeg finner ofte at Java-utviklere lager de beste C # -utviklerne fordi de har et bredere perspektiv. ”

Automics Willson sier at ferdigheter - men ikke mestring - med en bunke skal være målestokken før du går videre til en annen.

"Det er på tide å gå videre når du er god på dyktigheten, men ikke nødvendigvis bra," sier Willson. «Jeg tar ikke til orde for middelmådighet, bare motsatt. Jeg sier at før du begynner å lære en ny ferdighet, må du sørge for at du er god, kompetent eller over gjennomsnittet til den ferdigheten før du vurderer å gå videre. "

Til slutt, Talent Inc.'s Henderson gir denne advarselen: "Unngå forventningsfellen om at hvert nye språk bare er det gamle med en annen syntaks. Utviklere av C # og Java som prøver å tvinge JavaScript til en klassisk objektorientert tilnærming, har forårsaket mye smerte. "

Feil nr. 6: Forsømmelse av myke ferdigheter

Programmører er vanligvis mindre utadvendte enn for eksempel selgere. Ingen hemmelighet der. Men myke ferdigheter kan hentes over tid, og noen av nyansene ved å utvikle en vellykket karriere - som å lære av mentorer og utvikle relasjoner - kan mangle i karrieren din til det er for sent.

"Det gir bedre programvare når folk snakker," sier MediaMaths Donohue. “Myke ferdigheter og samtaler med kunder kan også gi en god følelse av medfølelse som vil forbedre hvordan du bygger. Du begynner å tenke på hva kundene virkelig trenger i stedet for overingeniør. ”

Talent Inc.’s Henderson sier at arbeidet ditt med andre mennesker er en avgjørende del av å utvikle en vellykket dev-karriere.

"Alle menneskelige aktiviteter er sosiale, og utvikling er ikke noe unntak," sier Henderson. “Jeg var en gang vitne til en utveksling på Angular-postlisten der en nybegynnerutvikler la ut noen kode med spørsmål. I løpet av en time - og ved hjelp av fem personer - hadde han bunnsolid idiomatisk vinkelkode, en rikere forståelse av vinkelfarger og fallgruver, og flere nye kontakter. Selv om trollene noen ganger kan føre til at vi mister troen, er verden full av fantastiske mennesker som vil hjelpe hverandre. ”

Automics Willson sier mangel på myke ferdigheter er en karrieremorder. Så når mindre dyktige programmerere går foran utviklere som ikke har ferdigheter i mennesker - eller rett og slett ikke utøver dem - blir igjen og lurer på hvorfor. Likevel elsker alle sjefer, sier han, "som viser takt og dyktig kommunikasjon."

"For å forbedre dine myke ferdigheter, er Internett, e-kurs, venner og mentorer uvurderlige ressurser hvis ... du er ydmyk og forblir coachbar," sier Willson. - Dessuten vil vi alle nå et punkt i karrieren når vi trenger å lene oss på relasjoner for å få hjelp. Hvis ingen er villige til å stå i hjørnet ditt, har du, ikke de, et problem, og du må ta tak i det. I min karriere har jeg verdsatt coachable mennesker som ikke kan nås når jeg har måttet ta tøffe personalbeslutninger. ”

Programmering er bare ett aspekt av utviklingen, sier lederkonsulent Puri. “Den største delen er å kunne kommunisere og forstå forretningsmål og ideer, mellom grupper av mennesker med varierende nivå av tekniske ferdigheter. Jeg har sett for mange IT-folk som prøver å kommunisere for mye tekniske detaljer når de snakker med ledelsen. "

Feil nr. 7: Unnlater å utvikle et karriereveikart

Å utvikle mål og vende tilbake til dem over tid - eller omvendt å utvikle en smidig, gå-med-strøm-tilnærming - har begge sine talsmenn.

"Jeg konstruerer mindre for mål og mer for systemer som lar meg forbedre meg raskt og gripe muligheter når de oppstår," sier Henderson. “Når det er sagt, anbefaler jeg å lage en liste over erfaringer og ferdigheter som du ønsker å tilegne deg og bruke den som et kart, og oppdatere den minst årlig. Å vite hvor du har vært er like nyttig som å vite hvor du vil hen. "

Og selvfølgelig kanskje like viktig - dit du ikke vil dra.

"Tidlig i karrieren min hadde jeg ikke lært å si nei ennå," sier Edge fra JAMF Software. “Så jeg gikk med på en prosjektplan om at det ikke var noen måte å kunne levere. Og jeg visste at det ikke kunne. Hvis jeg hadde vært mer påståelig, kunne jeg ha påvirket planen som en haug med ikke-tekniske mennesker laget og sparte tid og penger for min daværende arbeidsgiver, mine medarbeidere en betydelig smerte og til slutt forholdet vi hadde med kunden. ”

Automics Willson holder en pep-talk rett ut av lekeboken til University of Alabamas leder fotballtrener Nick Saban, som forkynner å ha tro på prosessen din: “Fokuset er å følge en prosess med suksess og bruke den prosessen som en referanse for å holde deg selv ansvarlig . For å utvikle prosessen din, må du finne mentorer som har fått det du ønsker å oppnå. Lær hva de gjorde og hvorfor de gjorde det, og deretter tilpasse, tilpasse og følge. "