lördag 6 februari 2010

Om ambitioner, karriärsval och vår yrkesstolthet

Nyligen har jag varit inblandad i rekryteringen av nya utvecklare. Förutom insikten om att vi är ganska sällsynta, fick det mig in på ämnet karriärsval och ambitioner.

När jag började plugga systemutveckling 1998 var den gemensamma uppfattningen hos mig och mina klasskompisar att programmering var kul men inte slutstationen. Ju förr man fick dra på sig slipsen och titulera sig projektledare eller något annat flott, desto bättre! Programmering var något man började med för att senare klättra raskt uppåt för att inte alls ha med kod att göra. Tanken då var att någon annan ju skulle koda det vi bestämt, designat eller arkitektat.

Jag minns tydligt mina formuleringar i mina jobbansökningar: "jag siktar på att en dag lyfta blicken från koden och arbeta mera med projektledning". När jag efter mina första fem år som utvecklare sökte nytt jobb menade jag formuleringen mer än förut och tänkte att mina fem år som utvecklare borde ju ge pay off snart!

Nu inser jag hur fel jag hade. Mina första fem år som utvecklare gav pay off, men inte det jag tänkt. Jag blev bättre - på att utveckla, inte projektleda. Varför skulle det vara då självklart att jag som utvecklare skulle nalkas projektlederi? Varför skulle mina fem års programmerande göra mig till en bra projektledare eller, för den sakens skull, ens intresserad av projektledning.

Nu frågar jag mig istället: vad är roligt och utmanande i mitt arbete? Vad är det som får igång min kreativitet, mitt engagemang och min nyfikenhet? Det är lätt att svara på. Dom stunder jag sitter och programmerar - skapar - är de absolut mest utmanande. Nu, med snart åtta års erfarenhet känner jag mig än mindre fullärd som programmerare än någonsin. Det innebär inte att jag är sämre, bara att jag förstått att allting hela tiden utvecklas. Ju mer man gör sig medveten av vad som finns tillgängligt och vad andra gör, inser man att det finns mycket man inte kan eller inte provat.

Med den bakgrunden, att allting förändras, hur kan vi som programmerare / systemutvecklare då se som självklart att vårt yrke är ett steg mot något annat? Varför kan vi inte bara finna stolthet i vårt yrke och finna glädjen i att bli mer och mer professionella på just det?

Det finns ju två vanliga vägar vi kan välja att gå, som alternativ till att stanna kvar som programmerare / systemutvecklare (vad är skillnaden egentligen, varför skriver jag / mellan dessa titlar?).

Projektledare innebär ju oftast att administrera. Att hålla koll på projektet, planera tid, följa upp arbete och svettas med kunder. Själva rollen erbjuder ju ingen hands-on med koden direkt. Som projektledare handlar det mer om arbetsledning och administration än utveckling. I mina öron lockar det inte.

Arkitekt innebär oftast att koden börjar tyna bort från skrivbordet (nivån av försvinnande beror kanske på typ av arkitekt) och att man mer använder Visio och Outlook som sin utvecklingsmiljö. Visst är det kul att sitta och spåna om lösningar, beskriva dem och eventuellt rita diagram över dem. Men vore det inte trist att inte få skörda frukten och se lösningen växa fram i kod? Dan North pratade på Öredev om arkitektrollen och att det var ett problem att denne ofta inte har kontakt med koden längre. "Code? I am an architecht, can't you SEE my beard?!".

Poängen är inte att dissa dessa andra yrken. Inte alls. Poängen är att se dem som andra yrken. De behövs och förtjänar all respekt, men de är inte en naturlig följd av ett par år som systemutvecklare. De är yrken man kan välja, oavsett om man varit utvecklare eller ej.

Jag har börjat se annorlunda på framtiden. Jag är nöjd med att vara utvecklare, nöjd med att bli bättre på att göra just det. Jag har mycket kvar att lära och är fortfarande gladast när jag får koda. Hade jag varit i en organisation där mitt yrke innebar en serverad lösning som jag, utifrån strikta riktlinjer, skulle koda hade min glädje säkert varit mindre Jag vill ha mer frihet. Men jag undrar om sådana ställen verkligen finns. Med dagens agila trender krävs vi systemutvecklare att göra mer av allt. Vi är lite projektledare, lite arkitekter och en stor portion programmerare. Därför undrar jag hur många strikt uppstyrda "programmerare" det finns idag.

Tyvärr är ju verkligheten att om man blir för bra på att utveckla kommer man i många fall bli erbjuden steg "uppåt", vilket innebär mindre och mindre av det man är så bra på. Man blir "promoted to incompetence", dvs man skickas uppåt så länge man är riktigt bra på sitt jobb tills man stannar på ett man inte är lika bra på... (Kallas också The Peter Principle). Jag skulle vilja se en framtid där karriärsstegen innebar att bli bättre och bättre på att utveckla. Att få erkännande för sitt kunnande, sina färdigheter och sin kunskapsspridning till andra.

Men okej, visst finns det personer som hittar en alternativ karriär genom att befordras. Men jag vill slå ett slag för att värdera de som är riktigt bra utvecklare. Klappa dem på axeln, ge dem högre lön - men skicka inte alla längre bort från koden.

Vad alla andra väljer att göra i sin karriär är ointressant. Det är vårt eget karriärsval som är det viktiga. Är man glad och nöjd med det man gör och ser en framtid i det - fortsätt med det! Det tänker jag göra. Men här och nu stryker jag "siktar på projektledarrollen" ur mitt CV.

Over and out!

Dagens kodarmusik: Pain of salvation - Road salt (Ja, jag är ett melodifestival-freak)

6 kommentarer:

  1. Härligt! Det bästa jag läst på länge (GPs "God morgon" medräknad).

    Jag har själv funderat en del på varför utvecklare vill bli projektledare och nästan lika mycket på varför projektledare velat bli projektledare. Men inte kommit i närheten av en bra förklaring. Det känns inte som ett naturligt steg. Inte naturligare än att bli bandymålvakt eller steghuggare.

    SvaraRadera
  2. Från en som både har skägg och tagit steget över till den "mörka sidan" (och dragit på sig arkitekthatten) så kan jag inte annat än att hålla med dig!

    Det finns organisationer som experimenterar med lite olika typer av utvecklarroller. Ett spår som drivs är "specialist" rollen där seniora utvecklare engageras i sk. mentorskap för yngre , eller rättare sagt mindre erfarna, kollegor.

    Vet inte ifall detta är en väg som faller dig på läppen men jag tror att om man anstränger sig lite och tänker efter så finns det lite olika väga att utvecklas inom yrket (på andra sätt än att utvecklas inom sin profession).

    Eller kan det vara så att jag än en gång missat hela din poäng? :)

    /B

    SvaraRadera
  3. Hej! Tack för en bra blogg.

    Jag jobbade under en tid med en ung man som hade som mål att bli "utvecklande projektledare". En, enligt honom, unik och oslagbar kombination som kombinerade hans två spetskompetenser. Min första vecka med honom anade jag ingenting och det gör kanske inte du heller än.

    Det framgick ganska snart att han var en minst sagt medioker utvecklare. Man kunde stundtals bli riktigt förbannad när man trillade över hans kod. Copy-paste från nätet på det mest taffligga sätt. Istället för att "sno" den kodsnutten han verkligen hade glädje av, så snodde han ett gott stycke före och ett minst lika gott stycke efter. Vilket såklart gjorde att hans program gjorde så mycket mer än det behövde och så mycket mer än han förmodligen hade en aning om. Indentering då, tänker du. Det måste han väl ändå fixat? Nähäedu, säger jag. Han indenterade liksom sällan hela vägen "hem" igen, utan i slutet på i stort sett alla metoder så hängde det sista "end;" i kolumn 30-40 någonstans och man fick ett helvette att förstå hur kodblocken förhöll sig till varandra.

    Detta kan möjligtvis få dig att tänka något i stil med: "Ok, killens förmågor spetskompetenser fördelades väl lite snett över de båda förmågorna. Lite sämre programmerare, lite bättre projektledare". I så fall kan du inte ha mer fel!!! Jag tänker inte gå in på det, för jag börjar redan bli förbannad.

    I hans fall handlade det mest om att kunna mörka dåligt projektlederi med "jag har utvecklat mycket det sista" och dålig utveckling med... Ja, precis!

    Någon sensmoral verkar det inte bli, men var på din vakt under rekryteringen för han lär vara ute på jobbjakt.

    Chip!

    SvaraRadera
  4. Herr Arkitekten "B":
    Absolut är steget till senior utvecklare en bra möjlighet att belöna duktiga utvecklare och låta dem få ett uttryckligt ansvar för att förmedla vidare sitt kunnande. Jag tror att vi överlag skulle anamma mer av "lärlings-filosofin" som hantverkaryrkena har. Och då behövs bra mentorer som förebilder och lärare.
    Men grundförutsättningen är att dessa seniora herrar och damer fortsätter att utveckla parallellt med sin lärarroll.

    SvaraRadera
  5. Anekdoten om den utvecklande projektledaren kanske inte innehåller någon sensmoral, men underhållning på hög nivå!

    SvaraRadera
  6. Det var ju ett tag sen du skrev detta ser jag, men jag måste ändå bara få säga att det är så bra och att du har så rätt! Precis mina tankar.

    Dessutom en härlig bild högst upp (killen med hörlurarna).

    SvaraRadera