Computerprogrammeringsfærdigheder for 2020: Undersøgelsesresultater fra 116.000 udviklere og ansættelsesledere

I de sidste 3 år har freeCodeCamp undersøgt 10.000'ere udviklere om, hvordan de lærer at kode og forfølge deres karriere. Og vi har gjort vores fulde datasæt offentligt tilgængelige.

I 2020 besluttede vi at tage et år fri. Så denne artikel handler ikke om et nyt datasæt fra os. Det handler snarere om en undersøgelse foretaget af vores venner på HackerRank. De undersøgte 116.000 udviklere til deres 2020-kvalifikationsrapport. Og jeg vil nedbryde de resultater, som jeg synes er mest relevante for nye udviklere her.

Mange af de udviklere, de undersøgte, ansatte også ledere. Så lad os starte der.

Hvad ser ansættelsesledere efter i Developer Hires?

Det viser sig, at dette afhænger meget af virksomhedens størrelse.

Mindre virksomheder stoler mere på generalister. De får masser af full-stack-udviklere, der kan bære mange hatte.

Dette kommer normalt på bekostning af dedikerede front-end og back-end udviklere.

Mindre virksomheder anser fuld-stack-udviklere for vigtigere. Større virksomheder vil sandsynligvis have specialister.

Hvis du tænker over det et øjeblik, giver det mening. Større virksomheder giver mulighed for mere specialisering.

Dette sagde, at de fleste ansættelsesledere i alle størrelser virksomheder rapporterede prioriterede front-end, back-end eller full-stack udviklere. Kun ca. 30% af ansættelsesledere anså det for at være en højere prioritet at udfylde roller som:

  • DevOps Engineering
  • Dataforsker
  • QA ingeniør

Og med hensyn til færdigheder, som arbejdsgivere leder efter, når de ansætter ...

JavaScript er stadig den mest efterspurgte færdighed i programmeringssprog af arbejdsgivere.

JavaScript var langt den mest populære globalt efterfulgt af Python.

I Asien-Stillehavsområdet er Java stadig meget efterspurgt. C # og C ++ er mere populære i Afrika-Europa-Mellemøsten-regionen end andre steder.

Men en af ​​de mest interessante indsigter her er, at et voksende antal ledere - især i Amerika - er "sprog agnostiske." De er ligeglad med hvilke specifikke programmeringssprog du kender.

Dette går tilbage til noget, jeg har forkyndt ad kvalme gennem de sidste par år: hvis du kan lære et programmeringssprog godt, kan du nemt lære et andet sprog på jobbet.

Så jeg er glad for, at flere arbejdsgivere anerkender denne virkelighed i stedet for bare at sende job til "JavaScript-udviklere" eller "Python-udviklere."

Hvad en udvikler tidligere har bygget, er en meget bedre indikator for evne end hvilke specifikke værktøjer de brugte til at bygge den.

Færre og færre arbejdsgivere har brug for universitetsgrader. Og mindre virksomheder er mere fleksible på dette.

31% af udviklerne, der arbejder i små virksomheder, har ikke bachelorgrader (også kendt som "bachelorgrader" eller "4-årige grader" i USA).

Og selv i store virksomheder har 9% til 18% af deres udviklerarbejde ikke grader.

Dette repræsenterer et ret stort skift fra 1990'erne og begyndelsen af ​​2000'erne, hvor de fleste udviklerjob krævede en grad.

Men hvis du tænker over dette et øjeblik, giver det perfekt mening.

Omkostningerne ved at tjene en universitetseksamen - bestemt i USA - er steget kraftigt i løbet af de sidste 40 år.

Flere og flere amerikanere vælger at give afkald på traditionelle universitetsgrader til fordel for selvlæring.

Mit råd har altid været: gå til et billigt community college, derefter et billigt offentligt universitet. Jeg synes stadig, at 4-årige grader er det værd, hvis du kan tjene dem uden at gå i gæld.

Men jeg kan forstå, hvorfor en person, der allerede er forbi den traditionelle universitetsalder (slutningen af ​​teenagere til begyndelsen af ​​20'erne) måske vil springe universitetet helt over.

Denne stigning på 2.500% i universitetsundervisning og gebyrer er også faldet sammen med fødslen af ​​verdensomspændende internet og et væld af gratis læringsressourcer.

I disse dage kan du lære stort set alt gratis, hvis du er villig til at sidde ned og lære det.

Så det er opmuntrende at se flere og flere arbejdsgivere, der får fuldt selvlærte udviklere ud over universitetsuddannede.

Og der er en ny mellemvej mellem at gå på universitetet og bare lære alt gratis på nettet: kodning af bootcamps.

Jeg har skrevet udførligt om kodning af bootcamps og den rolle, de kan spille for folk, der ikke ønsker at gå tilbage i skole.

De fleste mennesker er i stand til med succes at få et udviklerjob efter et eller to år med selvlæring med online ressourcer, deltage i lokale tekniske begivenheder og hænge ud på lokale hackerspaces.

Men nogle mennesker foretrækker den ekstra struktur og ansvarlighed, som tilmelding til et kodende bootcamp kan give. Disse kan være næsten lige så dyre som at gå på community college + statsuniversiteter. Men de er lidt hurtigere.

Og den gode nyhed er, at nogle arbejdsgivere ansætter disse kodende bootcamp-grader og deler deres meninger om dem.

Fungerer kodning af bootcamps? Her er data fra arbejdsgivere.

Omkring 32% af de adspurgte ansættelsesledere sagde, at de havde ansat en kodende bootcamp-grad.

Og her er hvad de havde at sige om deres opfattelse af disse bootcamp-graders færdigheder:

De fandt ud af, at disse kodende bootcamp-grader for det meste var lige så veludstyrede som deres andre ansættelser. Og næsten 1/3 sagde kodende bootcamp-grader var bedre end deres typiske leje.

En ting at bemærke er, at mange kodende bootcamp-grader allerede har bachelorgrader - nogle inden for datalogi og teknik. Så nogle af disse bootcamp-kvaliteter har mere uddannelse end en typisk ansættelse ville have.

Bemærk også, at kvaliteten af ​​instruktionerne mellem forskellige kodende bootcamps varierer dramatisk.

Denne undersøgelse frigav ikke de underliggende data, så vi ved ikke, hvilke kodende bootcamps der er mest gunstige blandt arbejdsgivere. Vi ved heller ikke, hvor mange af disse der var traditionelle personlige kodende bootcamps VS online kodende bootcamps. (Og hvis du tidligere har læst mine artikler, ved du, at jeg synes meget mere om den personlige sort.)

Men uanset hvad, det faktum, at de 32% af ansættelsesledere, der har ansat en kodende bootcamp-grad, tænker så højt på deres færdigheder, skal være betryggende for alle udviklere derude, der har grundlagt deres egne kodende bootcamps i deres byer.

Hvilke færdigheder er udviklere interesserede i at lære?

Mens JavaScript er den mest anvendte og mest efterspurgte programmeringssprog i dag, er der altid et spørgsmål om, hvad der er næste.

Heldigvis dækkede undersøgelsen det også. Her er diagrammet:

Vi kan antage, at de fleste af respondenterne allerede kender JavaScript, da det er svært at være udvikler i 2020 uden at vide det. Så udviklere skifter blik for at fokusere på nogle nye sprog.

Jeg vil beskrive disse sprog lige nu, hvis du endnu ikke er bekendt med dem.

Go er et stærkt serversprog oprettet af Google i 2007. Go tilbyder:

  • dagrenovation
  • hukommelsessikkerhed
  • begrænset strukturel typning
  • og masser af funktioner til at skrive stærkt parallel programmering.

Vil du lære Go? Du har held. Vi har et gratis 7-timers kursus på Go lige her:

Lær det hurtige og enkle Go-programmeringssprog (Golang) på 7 timer Go-programmeringssproget (også kaldet Golang) blev udviklet af Google for at forbedre programmeringsproduktiviteten. Det har oplevet en eksplosiv vækst i brugen i de seneste år. I dette gratis kursus fra Micheal Van Sickle vil du lære at bruge Gå trin for trin. Go er designet specifikt som et systemprogr ... Beau Carnes freeCodeCamp.org

Andetsproget udviklere ønsker at lære er Python.

Vil du lære Python? Mere end 10 millioner mennesker har gjort dette gratis 4-timers kursus freeCodeCamp offentliggjort på Python:

Lær grundlæggende om Python med dette dybdegående videokursus Hvis du har ønsket at lære Python, har du held og lykke. Mike Dane skabte dette dybdegående videokursus til Python. Det er 4 og en halv time, så det vil sandsynligvis tage dig mindst en weekend at gå igennem. I denne video vil Mike lede dig gennem vigtige Python-koncepter og hjælpe dig med at opbygge nogle grundlæggende ... Quincy Larson freeCodeCamp.org

Og vi har også den verdensberømte Dr. Chuck, der underviser i et gratis 14-timers kursus kaldet "Python for Everybody":

Python for Everybody - Gratis 14 timers Python-kursus fra Dr. Chuck Dette kursus sigter mod at lære alle det grundlæggende ved programmering af computere ved hjælp af Python 3. Kurset har ingen forudsætninger, og alle med moderat computeroplevelse skal være i stand til at mestre materialerne i dette kursus. Kurset blev oprettet af Dr. Charles Severance (aka Dr. Chuck). Han er aCli ... Beau Carnes freeCodeCamp.org

Og vi arbejder på en interaktiv browserbaseret Python-læseplan med certificeringer også. Det kommer ud senere i 2020.

Byg 111 projekter, tjen 10 certificeringer - nu med Python Vi har arbejdet hårdt på version 7.0 af freeCodeCamp-læseplanen. Her er hvad vi bygger. Nogle af disse forbedringer - inklusive 4 nye Python-certificeringer - vil spille i begyndelsen af ​​2020. Bemærk: Hvis du allerede gennemgår den aktuelle version af læseplanen, skal du fortsætte. Som du vil se ... Quincy Larson freeCodeCamp.org

Den 3. sprogudvikler ønsker at lære i 2020 er Kotlin. Kotlin er et fantastisk sprog oprettet af vores venner på JetBrains (skabere af populære IDE'er som InteliJ og WebStorm).

Kotlin gør det meget nemmere at oprette Android-apps (som oprindeligt blev skrevet i Java).

Så - selvfølgelig - har freeCodeCamp også et gratis 4-timers kursus på Kotlin:

Lær, hvordan du udvikler native Android-apps med Kotlin - En fuld kursus Android er det mest populære operativsystem i verden. Det er på flere enheder og computere end Windows, iOS og MacOS kombineret. I denne komplette videokurs fra Ryan Kay lærer du, hvordan du bygger native apps til Android ved hjælp af Kotlin. Dette fulde kursus forklarer, hvordan man bygger en hel Andro ... Beau Carnes freeCodeCamp.org

Hvad bryder professionelle udviklere sig faktisk med hensyn til professionel udvikling?

I et ord: færdigheder .

De fleste udviklere bekymrer sig mindre om traditionelle markører for professionel udvikling (forfremmelser). De interesserer sig mere for at udvide deres værktøjskasse med tekniske færdigheder.

Og det giver meget mening, når man ser på dette følgende diagram:

De fleste udviklere vil hellere blive forfremmet til en mere teknisk rolle end en ledende rolle.

En ingeniørchef er en leder, og en individuel bidragyder er en udvikler, der styres. Men hvad er en teknisk føring nøjagtigt?

Rollen som Tech Lead varierer fra virksomhed til virksomhed, men involverer normalt at tage tekniske beslutninger på højt niveau (som en arkitekt) og sætte visionen for et team af udviklere. Tech Leads rapporterer normalt til Engineering Managers, som derefter rapporterer til ledere som CTO.

Fra og med 2020, hvor mange penge tjener udviklere hvert år?

Baseret på de 116.000 undersøgte udviklere er den gennemsnitlige årsløn 54.000 $. Dette er for udviklere globalt.

Lad os zoome ind for at se på USA - det land, hvor udviklere får mest betaling. (Jeg er ikke helt sikker på, hvorfor dette er, men jeg formoder, at det er en kombination, hvor USA huser hovedkvarteret for mange af verdens største softwarevirksomheder kombineret med en restriktiv immigrationspolitik, der begrænser tilgængeligheden af ​​udviklere.)

Her er den gennemsnitlige udviklerløn efter det amerikanske metroområde:

For at sætte disse tal i perspektiv tjener den gennemsnitlige amerikaner omkring $ 47.000. Så at være en udvikler - ikke dårligt arbejde, hvis du kan få det. ?

Tak igen til HackerRank-teamet for at have gennemført denne undersøgelse og oprettet disse visualiseringer. Disse kombineret med Stack Overflow-undersøgelser og freeCodeCamps egne undersøgelser hjælper med at male et billede i højere opløsning af softwareudvikling som felt.