CodeGym /Java-blogg /Tilfeldig /Hvordan det er å være seniorutvikler. En kort veiledning ...
John Squirrels
Nivå
San Francisco

Hvordan det er å være seniorutvikler. En kort veiledning til rollen

Publisert i gruppen
Tradisjonelt i teknologibransjen er utviklere delt inn i fire graderinger basert på deres kvalifikasjonsnivåer: Junior, Middle, Senior og Team Lead. I to tidligere artikler har vi allerede dekket alt det grunnleggende om hvordan det er å være junior- og mellomnivåutvikler . Nå er det på tide å gå videre til neste gradering. Seniorutvikler, hvordan er det å være en og hvordan Senior er forskjellig fra en mellomnivåkoder? La oss finne det ut. Hvordan det er å være seniorutvikler.  En kort veiledning til rollen - 1

Hvem er en seniorutvikler?

I slike artikler om yrker og spesialiseringer innen programvareutvikling må vi alltid gjøre en form for ansvarsfraskrivelse, og forklare at oppfatningen og forståelsen av en bestemt stilling kan variere mye, avhengig av selskapet, bransjen den opererer i og andre faktorer. . Noen mennesker, for det meste de som har en tendens til å være litt konservative, tror at du bare har lov til å kalle deg senior hvis du har over 10 års erfaring med koding, noe som er ansvarlig. Det betyr at bare år da du faktisk kodet som en heltidsansatt teller, kan du ikke begynne å telle fra da du først prøvde å programmere på Basic i en alder av 12 (som mange unge programmerere pleier å gjøre, og irriterer ekte seniorprogrammerere ). Å være mindre konservativ, mange mennesker tror at mer enn fem års heltidsarbeid som programvareutvikler lar deg kalle deg senior. På den annen side er års erfaring bare et tall, det som virkelig betyr noe er kunnskap, ferdigheter og relevant erfaring. Det er her du virkelig må levere for å fortjene Senior-tittelen, fordi seniorutvikler blir ofte sett på som en allvitende, allmektig kodeveiviser. Etter ledelsens oppfatning er Senior normalt den som vet hvordan man løser enhver prosjektrelatert oppgave eller hvordan man skriver den nødvendige koden. Men en av de viktigste funksjonene til en seniorutvikler på et spesifikt programvareutviklingsprosjekt er kunnskapen om selve prosjektet med alle dets problemstillinger, behov, nyanser og så videre. Å kunne jobbe selvstendig er en viktig egenskap for en senior. Dette betyr at senioren vet hva og når han skal gjøre, og trenger ingen tilsyn for å levere det arbeidet han forventes å gjøre. Og dette er en ganske verdifull kvalitet i øynene til enhver arbeidsgiver, da det betyr at du kan gi denne utvikleren en prosjektrelatert oppgave og overlate resten til ham/henne. Med "alle resten" er: finne ut behov, krav og begrensninger for oppgaven som skal fullføres, komme opp med den riktige tilnærmingen, finne riktige instrumenter, dele opp den store oppgaven til mindre oppgaver og gi dem til mellom- og juniornivå Utviklere osv. Det er et annet viktig aspekt som skiller Seniorer fra Mid-level og Junior-kodere. Det står i koden de skriver, og måten de gjør det på. Senior er og bør normalt være den som skriver den mest klare, enkle og konsise koden. Noen ganger i en grad når denne koden ser altfor grei og primitivt grunnleggende ut. Dette er fordi Senior må vurdere ikke bare fullføringen av oppgaven som det endelige resultatet, men den samlede effekten av den nye koden til prosjektets kodebase. Seniorutviklere skriver koden sin med vedlikeholdbarhet og skalerbarhet i tankene, og dette er deres største styrke, som bare kan komme med erfaring og ingenting annet.

Hva er ansvaret til en seniorutvikler?

La oss nå snakke mer detaljert om noen av de mest standard og vanlige ansvarsområdene til en seniorutvikler, naturligvis med fokus på ansvar som er typisk for Java-programmerere.
  • Identifisere og analysere brukerkrav;
  • Prioritere, tildele og utføre kodeoppgaver;
  • Utvikling av Java-applikasjoner;
  • Gjennomgå kodearbeid for nøyaktighet og funksjonalitet;
  • Analysere kodesegmenter regelmessig;
  • Holde seg oppdatert med ny teknologi og lære juniorutviklere hvordan de skal bruke den;
  • Generere ideer og løsninger relatert til utviklingssyklusen med andre teammedlemmer;
  • Ta generelt ansvar for alt utviklingsarbeid og prosjektkodeks.

Krav til seniorutvikler

Her er en liste over de vanligste og typiske kravene til en seniorutvikler som du bør oppfylle for å få denne jobben. Selvfølgelig vil kravene variere avhengig av selskapets ansettelsespolitikk, teknologier som brukes på prosjektet og ditt programmeringsspråk.
  • Omfattende generell kunnskap om programvareutvikling og dens teknologier;
  • Sterk kunnskap om Java;
  • Erfaring med å designe, bygge og teste bedriftsapplikasjoner;
  • Inngående kunnskap om populære Java-rammeverk som Spring, Spring Boot eller Java EE, JSF og andre;
  • Erfaring med objektorientert design (OOD).
Dette er bare grunnleggende programmeringsrelaterte krav, men å ha teknisk kunnskap er ofte ikke nok for å få jobben til en seniorutvikler, siden det er så mange andre viktige ferdigheter som utgjør en sterk senior. Her er noen ofte nevnte ikke-teknologiske krav for Sr. Developer.
  • Gode ​​delegerings- og tidsstyringsevner;
  • evner til å løse problemer;
  • Gode ​​kommunikasjons evner;
  • Sterke skriftlige og muntlige kommunikasjonsevner;
  • Evne til å møte tidsfrister og tenke strategisk.

Hvor mye tjener seniorutviklere?

Som du kanskje vet, når det gjelder lønn for kodejobber i USA, for en erfaren seniorutvikler, er himmelen en grense, ettersom giganter som Google, Facebook, Amazon, Apple og Microsoft betaler MYE for programvareingeniører . For eksempel hos Google kan en programvareingeniør på nivå 7, som regnes som det høyeste du kan få som utvikler, tjene 608 000 dollar totalt i året. Men la oss gå gjennom gjennomsnittstallene. I følge Glassdoor tjener den gjennomsnittlige seniorprogrammereren i USA rundt 121 000 dollar per år, noe som er betydelig høyere sammenlignet med lønnen til en koder på mellomnivå på 71 000 dollar i året og gjennomsnittslønnen på 63 502 dollar i året som juniorutviklere tjener i USA. en rapportav PayScale, en seniorutvikler med 10-19 års erfaring tjener en gjennomsnittlig total kompensasjon på $109,122 basert på 5,523 lønn. I sin sene karriere (20 år og høyere) tjener ansatte en gjennomsnittlig total kompensasjon på $111.432. I Tyskland , ifølge PayScale, tjener en senior programvareutvikler med over 10 års erfaring en total gjennomsnittlig kompensasjon på €63 638. I Frankrike, er gjennomsnittslønnen til en senior €54,982. Som vanlig, når det bare gjelder tallene, er amerikanske programmerere foran sine kolleger i Europa og andre steder. Et annet interessant poeng å merke seg er at seniorprogrammerere i Amerika tjener betydelig mer enn mellomnivåkodere. Kanskje kan dette best forklares med en antagelse om at flertallet av virkelig profesjonelle og erfarne seniorkodere i USA jobber for amerikanske teknologigiganter, som er verdensledende brukere av programvarearbeidsstyrke.

Karriereperspektiver

Når det gjelder karriereperspektiver, har seniorutviklere dem definitivt. Men det morsomme er at de fleste av dem egentlig ikke leter etter noen. Stillinger som Team Lead og Tech Lead vil være blant de viktigste alternativene for å se frem til å nå seniornivået. Samt ulike alternativer innen teknisk ledelse. Med sannsynligvis stillingene som CTO og administrerende direktør i et teknologiselskap som de høyest mulige prestasjonene i en seniorutviklers karriere. CTO er selvfølgelig mer realistisk, siden selv i teknologibransjen har flertallet av administrerende direktører ingen eller svært begrenset teknisk bakgrunn.

Hvordan det er å være seniorutvikler. Meninger

Naturligvis, når det kommer til seniorutviklerstillingen generelt, har de fleste diskusjoner en tendens til å fokusere på to nøkkeltemaer utviklerne bare er opptatt av å debattere om: hva som virkelig gjør deg til seniorutvikler og hvor snart du kan begynne å kalle deg selv senior. "Det kan overraske noen mennesker, men seniorjobbene ba konsekvent om at søkere skulle ha mellom 5 og 8 års erfaring. Det var noen få som spurte om 10 år eller mer, men ikke mange. Som seniorutvikler vil et selskap forvente at du kan ta en vag idé, spesifisere den, planlegge utviklingen, engasjere et team og følge den til fullføring. Mens en mellomutvikler vanligvis forventes å utføre, uten tilsyn, de individuelle oppgavene som er tildelt dem, arbeide i et team og utføre noe mentorskap.deler hans syn. "Med en seniorutvikler kan jeg gi et høyt nivå/mer vagt mål, og de kan spesifisere det, lage en plan for utførelse, kjøre den av meg, og deretter implementere den med en minimal mengde håndtak. Så når du føler deg trygg på at du kan ta en vag idé og fullføre den fullt ut, er du seniorutvikler. Merk at det ikke betyr at du aldri ber om hjelp, for alle gjør det fra tid til annen, men du kan drive prosessen uten at jeg trenger å passe deg, sier Eric Wise, medgründer og administrerende direktør i Wise Telemetry. Og la oss avslutte det med dette ganske gode sitatetav Pablo Oliva, en erfaren programvareutvikler fra Tyskland: «Seniorutviklerne jeg har jobbet med så ut til å ha et enormt verktøybelte, for å si det sånn. Hver gang det oppsto problemer, hadde de mange ressurser å henvende seg til. De kunne verktøyene og språkene vi brukte til daglig ganske godt, og visste hvor de skulle se etter når de ikke kunne noe (det er forskjell på å google målløst og å gå til riktig manualside ved første forsøk). Denne kunnskapen om gamle løsninger og ferdighetene til å søke nye løsninger gjorde dem godt respektert av sine jevnaldrende, som ofte henvendte seg til dem for forslag. De ville også på sin side vite når de skulle slutte å lete selv og be en kollega om hjelp. Noen hadde sertifiseringer, noen hadde ikke. Noen var uteksaminert, noen hadde ikke. Men de var alltid et referansepunkt for lagene deres (og til og med for folk i andre lag, for noen spesielt spektakulære seniorutviklere). Så, hvor mange tenker på å be deg om hjelp når de sitter fast?»
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION