CodeGym /Java blog /Tilfældig /Hvordan det er at være seniorudvikler. En kort guide til ...
John Squirrels
Niveau
San Francisco

Hvordan det er at være seniorudvikler. En kort guide til rollen

Udgivet i gruppen
Traditionelt er udviklere i teknologiindustrien opdelt i fire gradueringer baseret på deres kvalifikationsniveauer: Junior, Mellem, Senior og Team Lead. I to tidligere artikler har vi allerede dækket alt det grundlæggende om, hvordan det er at være en junior- og mellemniveauudvikler . Nu er det tid til at gå videre til næste graduering. Seniorudvikler, hvordan er det at være en, og hvordan adskiller Senior sig fra en Mid-Level-koder? Lad os finde ud af det. Hvordan det er at være seniorudvikler.  En kort guide til rollen - 1

Hvem er en seniorudvikler?

I sådanne artikler om professioner og specialiseringer inden for softwareudvikling er vi altid nødt til at lave en form for ansvarsfraskrivelse, der forklarer, at opfattelsen og forståelsen af ​​en bestemt stilling kan variere meget afhængigt af virksomheden, den branche, den opererer i og andre faktorer. . Nogle mennesker, for det meste dem, der har tendens til at være lidt konservative, mener, at du kun har lov til at kalde dig selv en senior, hvis du har over 10 års erfaring med kodning, hvilket er ansvarligt. Det betyder, at kun år, hvor du faktisk kodede som fuldtidsansatte, kan du ikke begynde at tælle fra, da du første gang prøvede at programmere på Basic i en alder af 12 (som mange unge kodere plejer at gøre, og pissede rigtige senior-programmører af ). At være mindre konservativ, mange mennesker tror, ​​at mere end fem års fuldtidsarbejde som softwareudvikler giver dig mulighed for at kalde dig selv senior. På den anden side er års erfaring bare et tal, det der virkelig betyder noget er viden, færdigheder og anvendelig erfaring. Det er her, du virkelig skal levere for at fortjene Senior-titlen, fordi Senior Developer ofte ses som en alvidende, almægtig kodningsguide. Efter ledelsens opfattelse er Senior normalt den, der ved, hvordan man løser enhver projektrelateret opgave, eller hvordan man skriver den nødvendige kode. Men en af ​​de vigtigste funktioner for en seniorudvikler på et specifikt softwareudviklingsprojekt er viden om selve projektet med alle dets problemstillinger, behov, nuancer og så videre. At kunne arbejde selvstændigt er en vigtig egenskab for en senior. Det betyder, at senioren ved, hvad og hvornår han skal gøre, og behøver ikke opsyn for at levere det arbejde, han forventes at udføre. Og dette er en ganske værdifuld kvalitet i enhver arbejdsgivers øjne, da det betyder, at du kan give denne udvikler en projektrelateret opgave og overlade resten til ham/hende. Med "alt resten" er: at finde ud af behov, krav og begrænsninger for opgaven, der skal udføres, komme med den rigtige tilgang, finde de rigtige instrumenter, dele den store opgave op i mindre opgaver og give dem til mellem- og juniorniveau Udviklere osv. Der er et andet vigtigt aspekt, der adskiller Seniorer fra Mid-level og Junior-kodere. Det er i koden, de skriver, og den måde, de gør det på. Senior er og bør normalt være den, der skriver den mest klare, enkle og præcise kode. Nogle gange i et omfang, hvor denne kode ser alt for ligetil og primitivt grundlæggende ud. Det skyldes, at Senior ikke kun skal betragte færdiggørelsen af ​​opgaven som det endelige resultat, men den overordnede effekt af den nye kode på projektets kodebase. Seniorudviklere skriver deres kode med vedligeholdelse og skalerbarhed i tankerne, og dette er deres største styrke, som kun kan komme med erfaring og intet andet.

Hvad er en seniorudviklers ansvar?

Lad os nu tale mere detaljeret om nogle af de mest standard og almindelige ansvarsområder for en seniorudvikler, naturligvis med fokus på ansvar typisk for Java-programmører.
  • Identifikation og analyse af brugerkrav;
  • Prioritering, tildeling og udførelse af kodningsopgaver;
  • Udvikling af Java-applikationer;
  • Gennemgang af kodearbejde for nøjagtighed og funktionalitet;
  • Analyse af kodesegmenter regelmæssigt;
  • At holde sig ajour med ny teknologi og lære juniorudviklere at bruge den;
  • Generering af ideer og løsninger relateret til udviklingscyklussen med andre teammedlemmer;
  • Tage det overordnede ansvar for alt udviklingsarbejde og projektets kodeks.

Krav til en seniorudvikler

Her er en liste over de mest almindelige og typiske krav til en seniorudvikler, som du bør opfylde for at få dette job. Selvfølgelig vil kravene variere afhængigt af virksomhedens ansættelsespolitikker, teknologier, der bruges på projektet, og dit programmeringssprog.
  • Omfattende generel viden om softwareudvikling og dets teknologier;
  • Stærkt kendskab til Java;
  • Erfaring med at designe, bygge og teste virksomhedsapplikationer;
  • Indgående kendskab til populære Java-frameworks som Spring, Spring Boot eller Java EE, JSF og andre;
  • Erfaring med objektorienteret design (OOD).
Dette er blot grundlæggende programmeringsrelaterede krav, men at have teknisk viden er ofte ikke nok til at få et seniorudviklerjob, da der er så mange andre vigtige færdigheder, der udgør en stærk senior. Her er nogle almindeligt nævnte ikke-teknologiske krav til Sr. Developer.
  • Gode ​​delegerings- og tidsstyringsevner;
  • Problemløsningsevner;
  • Gode ​​kommunikationsfærdigheder;
  • Stærke skriftlige og mundtlige kommunikationsevner;
  • Evnen til at overholde deadlines og tænke strategisk.

Hvor meget tjener seniorudviklere?

Som du måske ved, når det kommer til lønninger for kodningsjob i USA, for en erfaren seniorudvikler, er himlen en grænse, da giganter som Google, Facebook, Amazon, Apple og Microsoft betaler softwareingeniører MEGET . For eksempel hos Google kan en softwareingeniør på niveau 7, som anses for at være det højeste, du kan få som udvikler, i alt tjene $608.000 om året. Men lad os gennemgå gennemsnitstal. Ifølge Glassdoor tjener den gennemsnitlige senior programmør i USA omkring $121.000 om året, hvilket er betydeligt højere sammenlignet med en Mid-Level-koders løn på $71.000 om året og den gennemsnitlige løn på $63.502 om året, som juniorudviklere tjener i USA. en rapportaf PayScale, en seniorudvikler med 10-19 års erfaring tjener en gennemsnitlig samlet kompensation på $109.122 baseret på 5.523 lønninger. I deres sene karriere (20 år og derover) tjener medarbejderne en gennemsnitlig samlet kompensation på $111.432. I Tyskland tjener en senior softwareudvikler med over 10 års erfaring ifølge PayScale en samlet gennemsnitlig kompensation på €63.638. I Frankrig, den gennemsnitlige løn for en senior er €54.982. Som sædvanlig, når det udelukkende kommer til tallene, er amerikanske programmører foran deres kolleger i Europa og andre steder. Et andet interessant punkt at bemærke er, at seniorprogrammører i Amerika tjener betydeligt mere end kodere på mellemniveau. Måske ville dette bedst forklares med en antagelse om, at størstedelen af ​​virkelig professionelle og erfarne seniorkodere i USA arbejder for amerikanske teknologigiganter, som er verdens førende brugere af softwarearbejdsstyrke.

Karriereperspektiver

Når det kommer til karriereperspektiver, har seniorudviklere dem bestemt. Men det sjove er, at de fleste af dem ikke rigtig leder efter nogen. Stillinger som Team Lead og Tech Lead ville være blandt de vigtigste muligheder for at se frem til at nå seniorniveauet. Samt forskellige muligheder inden for tech management. Med formentlig stillingerne som CTO og CEO for en teknologivirksomhed som de højest mulige præstationer i en seniorudviklers karriere. CTO er naturligvis mere realistisk, da selv i tech-industrien har flertallet af CEO'er faktisk ingen eller meget begrænset teknisk baggrund.

Hvordan det er at være seniorudvikler. Meninger

Når det kommer til seniorudviklerstillingen generelt, har de fleste diskussioner en tendens til at fokusere på to nøgleemner, som udviklerne bare er ivrige efter at debattere om: hvad der virkelig gør dig til en seniorudvikler, og hvor hurtigt du kan begynde at kalde dig selv en senior. "Det kan måske overraske nogle mennesker, men seniorjobene bad konsekvent om, at ansøgere skulle have mellem 5 og 8 års erfaring. Der var nogle få, der bad om 10 år eller mere, men ikke mange. Som seniorudvikler vil en virksomhed forvente, at du er i stand til at tage en vag idé, specificere den, planlægge udviklingen, engagere et team og følge den igennem til fuldførelse. Hvorimod en mellemudvikler generelt forventes at udføre de individuelle opgaver, der er tildelt dem, uden supervision, arbejde i et team og udføre nogle mentorskaber.deler hans synspunkt. "Med en seniorudvikler kan jeg give et højt niveau/mere vagt mål, og de kan specificere det, lave en plan for eksekvering, køre det af mig og derefter implementere det med en minimal mængde håndholdt. Så når du føler dig overbevist om, at du kan tage en vag idé og bringe den helt til ende, er du seniorudvikler. Bemærk, at det ikke betyder, at du aldrig beder om hjælp, for det gør alle fra tid til anden, men du kan drive processen, uden at jeg skal passe dig,” siger Eric Wise, Co-founder og CEO for Wise Telemetry. Og lad os afslutte det med dette ret gode citataf Pablo Oliva, en erfaren softwareudvikler fra Tyskland: “De seniorudviklere, jeg har arbejdet med, så ud til at have et enormt værktøjsbælte, så at sige. Når der opstod problemer, havde de masser af ressourcer at henvende sig til. De kendte de værktøjer og sprog, vi brugte til daglig, ret godt, og vidste, hvor de skulle lede efter, når de ikke kunne noget (der er forskel på at google formålsløst og at gå til den rigtige manualside i første forsøg). Denne viden om gamle løsninger og dygtighed til at søge nye løsninger gjorde dem godt respekterede af deres jævnaldrende, som ofte henvendte sig til dem for at få forslag. De ville også til gengæld vide, hvornår de skulle holde op med at lede selv og bede en kollega om hjælp. Nogle havde certificeringer, nogle havde ikke. Nogle var færdiguddannede, andre havde ikke. Men de var altid et referencepunkt for deres hold (og endda for folk i andre hold, for nogle særligt spektakulære seniorudviklere). Så hvor mange mennesker tænker på at bede dig om hjælp, når de sidder fast?”
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION