CodeGym /Java blogg /Slumpmässig /Hur det är att vara seniorutvecklare. En kort guide till ...
John Squirrels
Nivå
San Francisco

Hur det är att vara seniorutvecklare. En kort guide till rollen

Publicerad i gruppen
Traditionellt i den tekniska industrin delas utvecklare in i fyra grader baserat på deras kvalifikationsnivåer: Junior, Middle, Senior och Team Lead. I två tidigare artiklar har vi redan täckt alla grunderna om hur det är att vara en junior- och mellannivåutvecklare . Nu är det dags att gå vidare till nästa gradering. Seniorutvecklare, hur det är att vara en och hur skiljer sig Senior från en mellannivåkodare? Låt oss ta reda på. Hur det är att vara seniorutvecklare.  En kort guide till rollen - 1

Vem är en senior utvecklare?

I sådana artiklar om yrken och specialiseringar inom mjukvaruutveckling måste vi alltid göra någon form av ansvarsfriskrivning och förklara att uppfattningen och förståelsen för en viss position kan variera mycket, beroende på företaget, branschen det är verksamt i och andra faktorer. . Vissa människor, mestadels de som tenderar att vara något konservativa, tror att du bara får kalla dig Senior om du har över 10 års erfarenhet av kodning, vilket är ansvarigt. Det betyder att bara åren när du faktiskt kodade som en heltidsanställd räknas, kan du inte börja räkna från när du först försökte programmera på Basic vid 12 års ålder (som många unga kodare brukar göra, vilket gör riktiga seniorprogrammerare förbannade ). Att vara mindre konservativ, många tror att mer än fem års heltidsarbete som mjukvaruutvecklare gör att du kan kalla dig senior. Å andra sidan är års erfarenhet bara en siffra, det som verkligen betyder något är kunskap, färdigheter och tillämplig erfarenhet. Det är här du verkligen måste leverera för att förtjäna Senior-titeln, eftersom Senior Developer ofta ses som en allvetande, allsmäktig kodningsguide. Enligt ledningens uppfattning är Senior normalt den som vet hur man löser alla projektrelaterade uppgifter eller hur man skriver den nödvändiga koden. Men en av de viktigaste funktionerna för en Senior utvecklare i ett specifikt programvaruutvecklingsprojekt är kunskapen om själva projektet med alla dess frågor, behov, nyanser och så vidare. Att kunna arbeta självständigt är en viktig egenskap hos en senior. Det betyder att senioren vet vad och när han ska göra, och behöver ingen övervakning för att leverera det arbete han förväntas göra. Och detta är en ganska värdefull egenskap i alla arbetsgivares ögon, eftersom det betyder att du kan ge den här utvecklaren en projektrelaterad uppgift och lämna resten till honom/henne. Med "allt resten" är: ta reda på behov, krav och begränsningar för uppgiften som ska slutföras, komma på rätt tillvägagångssätt, hitta rätt instrument, dela upp den stora uppgiften till mindre uppgifter och ge dem till mellan- och juniornivå Utvecklare, etc. Det finns en annan viktig aspekt som skiljer seniorer från medel- och juniorkodare. Det finns i koden de skriver, och hur de gör det. Senior är och bör normalt vara den som skriver den mest tydliga, enkla och koncisa koden. Ibland till den grad när den här koden ser alltför okomplicerad och primitivt grundläggande ut. Detta beror på att Senior måste betrakta inte bara slutförandet av uppgiften som slutresultat, utan den övergripande effekten av den nya koden på projektets kodbas. Senior utvecklare skriver sin kod med underhållsbarhet och skalbarhet i åtanke, och detta är deras största styrka, som bara kan komma med erfarenhet och inget annat.

Vilka ansvarsområden har en senior utvecklare?

Låt oss nu prata mer i detalj om några av de vanligaste och vanligaste ansvarsområdena för en senior utvecklare, naturligtvis med fokus på ansvar som är typiska för Java-programmerare.
  • Identifiera och analysera användarkrav;
  • Prioritera, tilldela och utföra kodningsuppgifter;
  • Utveckling av Java-applikationer;
  • Granska kodarbete för noggrannhet och funktionalitet;
  • Analysera kodsegment regelbundet;
  • Hålla dig uppdaterad med ny teknik och lära juniorutvecklare hur man använder den;
  • Generera idéer och lösningar relaterade till utvecklingscykeln med andra teammedlemmar;
  • Ta övergripande ansvar för allt utvecklingsarbete och projektets kod.

Krav på en senior utvecklare

Här är en lista över de vanligaste och typiska kraven för en seniorutvecklare som du bör uppfylla för att få det här jobbet. Naturligtvis skulle kraven variera beroende på företagets anställningspolicy, teknik som används i projektet och ditt programmeringsspråk.
  • Omfattande allmän kunskap om mjukvaruutveckling och dess teknologier;
  • Goda kunskaper i Java;
  • Erfarenhet av att designa, bygga och testa företagsapplikationer;
  • Fördjupad kunskap om populära Java-ramverk som Spring, Spring Boot eller Java EE, JSF och andra;
  • Erfarenhet av objektorienterad design (OOD).
Det här är bara grundläggande programmeringsrelaterade krav, men att ha tekniska kunskaper räcker ofta inte för att få jobb som Senior Developer, eftersom det finns så många andra viktiga färdigheter som utgör en stark Senior. Här är några vanliga icke-tekniska krav för Sr. Developer.
  • Goda delegerings- och tidshanteringsförmåga;
  • Problemlösningsförmåga;
  • God kommunikationsförmåga;
  • Starka skriftliga och muntliga kommunikationsförmåga;
  • Förmågan att hålla deadlines och tänka strategiskt.

Hur mycket tjänar seniorutvecklare?

Som du kanske vet, när det gäller löner för kodningsjobb i USA, för en erfaren seniorutvecklare, är himlen en gräns, eftersom jättar som Google, Facebook, Amazon, Apple och Microsoft betalar mjukvaruingenjörer MYCKET . Till exempel hos Google kan en mjukvaruingenjör på nivå 7, vilket anses vara det högsta du kan få som utvecklare, tjäna $608 000 totalt per år. Men låt oss gå igenom genomsnittliga siffror. Enligt Glassdoor tjänar den genomsnittliga senior programmeraren i USA runt 121 000 dollar per år, vilket är avsevärt högre jämfört med en medelkodares lön på 71 000 dollar per år och den genomsnittliga lönen på 63 502 dollar per år som juniorutvecklare tjänar i USA. en rapportav PayScale, en senior utvecklare med 10-19 års erfarenhet tjänar en genomsnittlig total ersättning på $109 122 baserat på 5 523 löner. Under sin sena karriär (20 år och högre) tjänar anställda en genomsnittlig total ersättning på $111 432. I Tyskland , enligt PayScale, tjänar en senior mjukvaruutvecklare med över 10 års erfarenhet en total genomsnittlig ersättning på €63 638. I Frankrike, är medellönen för en Senior €54 982. Som vanligt, när det enbart kommer till siffrorna, ligger amerikanska programmerare före sina kollegor i Europa och på andra håll. En annan intressant punkt att notera är att seniora programmerare i Amerika tjänar betydligt mer än medelkodare. Kanske skulle detta bäst förklaras med ett antagande om att majoriteten av riktigt professionella och erfarna seniorkodare i USA arbetar för amerikanska teknikjättar, som är de världsledande leverantörerna av mjukvaruarbetare.

Karriärperspektiv

När det kommer till karriärperspektiv har seniorutvecklare dem definitivt. Men det roliga är att majoriteten av dem inte riktigt letar efter någon. Positioner som Team Lead och Tech Lead skulle vara bland de viktigaste alternativen att se fram emot att nå seniornivån. Samt olika alternativ inom tech management. Med förmodligen positionerna som CTO och VD för ett teknikföretag som högsta möjliga prestationer i en Senior devs karriär. CTO är naturligtvis en mer realistisk sådan, eftersom även inom teknikbranschen har majoriteten av VD:arna faktiskt ingen eller mycket begränsad teknisk bakgrund.

Hur det är att vara seniorutvecklare. Åsikter

Naturligtvis, när det kommer till Senior Developer-positionen i allmänhet, tenderar de flesta diskussioner att fokusera på två nyckelämnen som utvecklarna bara är angelägna om att debattera om: vad som verkligen gör dig till en Senior Dev och hur snart du kan börja kalla dig Senior. "Det kan förvåna vissa människor, men jobben på seniornivå bad konsekvent om sökande att ha mellan 5 och 8 års erfarenhet. Det var några som bad om 10 år eller mer, men inte många. Som seniorutvecklare förväntar sig ett företag att du kan ta en vag idé, specificera den, planera utvecklingen, engagera ett team och följa den till slut. Medan en mellanliggande utvecklare i allmänhet förväntas utföra, utan övervakning, de individuella uppgifter som tilldelats dem, arbeta i ett team och utföra visst mentorskap.delar hans uppfattning. "Med en senior utvecklare kan jag ge en hög nivå/mer vaga mål och de kan specificera det, skapa en plan för utförande, köra den av mig och sedan implementera den med en minimal mängd handhavande. Så när du känner dig säker på att du kan ta en vag idé och fullborda den till fullo, är du en Senior dev. Observera att det inte betyder att du aldrig ber om hjälp, eftersom alla gör det då och då, men du kan driva processen utan att jag behöver vara barnvakt på dig”, säger Eric Wise, medgrundare och VD för Wise Telemetry. Och låt oss avsluta det med detta ganska bra citatav Pablo Oliva, en erfaren mjukvaruutvecklare från Tyskland: ”De seniorutvecklare jag har arbetat med verkade ha ett enormt verktygsbälte, så att säga. Närhelst problem uppstod hade de gott om resurser att vända sig till. De kunde de verktyg och språk vi använde dagligen ganska väl och visste var de skulle leta efter när de inte kunde något (det är skillnad på att googla planlöst och att gå till rätt manualsida vid första försöket). Denna kunskap om gamla lösningar och skicklighet i att söka nya lösningar gjorde dem väl respekterade av sina kamrater, som ofta vände sig till dem för att få förslag. De skulle också i sin tur veta när de skulle sluta leta själva och be en kollega om hjälp. Vissa hade certifieringar, andra hade inte. Vissa hade tagit examen, andra inte. Men de var alltid en referenspunkt för sina lag (och även för personer i andra lag, för några särskilt spektakulära seniora utvecklare). Så, hur många tänker på att be dig om hjälp när de fastnar?”
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION