"Missä ovat nuoret punkit, jotka pyyhkivät meidät pois maan päältä?"

Esitin itselleni Grebenštšikovin sanamuodon otsikossa olevan eksistentiaalisen kysymyksen toisen keskustelukierroksen jälkeen jossain yhteisössä siitä, tarvitseeko aloitteleva web-taustakehittäjä SQL-tietoa vai tekeekö ORM kaiken joka tapauksessa. Päätin etsiä vastausta hieman laajemmin kuin vain ORM:sta ja SQL:stä ja pohjimmiltaan yrittää systematisoida, keitä ovat ne ihmiset, jotka nyt menevät haastatteluihin juniori- ja keskitason kehitystehtäviin, mikä on heidän historiansa ja millainen maailma he ovat. elää. Yleisesti ottaen minulla oli mielipide, mutta se muodostui henkilökohtaisesta rekrytointikokemuksesta ja sopeutui selvästi paikallisiin markkinoihin. Yleisesti ottaen siitä tuli mielenkiintoista. Tässä on mitä löysimme.

Maailmanlaajuinen kehittäjäväestö

Lähestykseni kysymystä jotenkin päätin aloittaa etsimällä tietoja siitä, kuinka monta kehittäjää maailmassa on nykyään ja kuinka tämä väestö muuttuu ajan myötä.
Eri lähteiden arvioiden mukaan luvut ovat 12–30 miljoonaa ihmistä. Päätti pysähtyä klo SlashDatan tiedot, koska heidän menetelmänsä vaikutti melko tasapainoiselta ja sopivalta tarpeisiini. Arvioinnissaan he ottivat huomioon Githubissa olevien tilien ja tietovarastojen määrän, StackOverflow-tilien määrän, npm-tilit ja virallisten lähteiden tiedot työllisyydestä Yhdysvalloissa ja Euroopassa. He myös korjasivat saatuja lukuja omalla 16 tutkimuksellaan, joissa kussakin tutkimuksessa oli mukana noin 20 000 henkilöä.

SlashDatan mukaan vuoden 2018 viimeisellä neljänneksellä maailmassa oli noin 18.9 miljoonaa kehittäjää, joista 12.9 miljoonaa oli ammattikehittäjiä, eli he tekevät elantonsa ohjelmoinnista. Ne, jotka eivät tällä hetkellä ole ammattikehittäjiä, ovat ihmisiä, joille ohjelmointi on harrastus, sekä niitä, jotka opiskelevat parhaillaan ammattia (eri opiskelijat ja itseoppineet). Eli tässä on vihje minua kiinnostavan ryhmän koosta - 6 miljoonaa ihmistä. Rehellisesti sanottuna tämä on enemmän kuin odotin.

Toinen yllätys minulle oli ohjelmoijien määrän kasvuvauhti: vuoden 2017 toiselta neljännekseltä vuoden 2018 neljännelle neljännekselle se nousi 14.7:stä mainittuun 18.9 miljoonaan eli nousi 21 % vuonna 2018! Jos minua pyydettäisiin arvioimaan ohjelmoijien määrän kasvuvauhtia, sanoisin, että se on noin 5 % vuodessa, jossa vauhti kasvaa hieman vuosittain. Ja tässä se osoittautuu jopa 20 prosentiksi.

Lisäksi SlashData arvioi, että väkiluku nousee 2030 miljoonaan vuoteen 45 mennessä. On helppo ymmärtää, että tämä merkitsee hieman yli 8 prosentin vuosittaista kasvua, ei 20 prosenttia, mutta ne viittaavat mukauttamiseen Internetin levinneisyyden huomioon ottamiseksi (tällä hetkellä noin 57 prosenttia maailmanlaajuisesti). Statistan mukaan) ja useat muut tekijät, kuten kehittäjien määrä henkeä kohti. Maantieteellisesti kehittäjien määrä kasvaa voimakkaimmin Intiassa ja Kiinassa, Intian odotetaan ohittavan Yhdysvallat kehittäjien määrässä vuoteen 2023 mennessä (tämä on jo C# Corner tiedot).

Yleisesti ottaen ohjelmoijia tulee olemaan paljon, katsotpa sitä miten tahansa, koska kysyntä kasvaa. Muuten kysynnästä.

Mikä on kysyntää?

Kysynnän arvioimiseksi käytin HackerRank-tietoja 2018 и 2019 vuosi.

Ohjelmointikielistä suurin kysyntä on JavaScriptille, Pythonille ja Javalle lähes kaikilla toimialoilla tietokonelaitteistoja lukuun ottamatta. Jälkimmäisessä eniten kysyntää on C/C++:lle, mikä on ymmärrettävää, laitteistoprojekteissa on edelleen vaatimuksia vastaavien ohjelmistojen resurssiintensiivisyydestä ja suorituskyvystä.

"Missä ovat nuoret punkit, jotka pyyhkivät meidät pois maan päältä?"

Kehysten osalta eniten kysyntää ovat AngularJS, Node.js ja React, ja niillä on suurin ero kysynnän ja tarjonnan välillä, mikä näyttää selittävän JavaScript-ekosysteemin muuttumisnopeudella, koska esim. ExpressJS:lle , tarjonta ylittää jo kysynnän.

"Missä ovat nuoret punkit, jotka pyyhkivät meidät pois maan päältä?"

Osaamisen osalta työnantajat odottavat hakijoilta ensisijaisesti ongelmanratkaisutaitoja. Noin 95 % työnantajista mainitsee nämä taidot tärkeiksi. Ohjelmointikielen taito on toisella sijalla 56 prosentilla. Algoritmien, tietorakenteiden ja muun tietojenkäsittelytieteen perustavanlaatuinen tietämys ei muuten ole linjassa ollenkaan, joko sitä ei ollut kyselyssä tai akateemista tietoa ei enää vaadita suuressa mittakaavassa.

Tietokantasuunnittelua tarvitsee 23.2 % alle 100 hengen yrityksistä ja 18.8 % yli 1000 hengen yrityksistä. Kyllä, näyttää siltä, ​​​​että kyse on ORM: sta ja SQL: stä! Looginen, IMHO, selitys on, että suurissa yrityksissä on oma roolinsa DBA:lla, joka vastaa tästä näkökulmasta, ja siksi on mahdollista pehmentää kehittäjien vaatimuksia ja palkata nopeammin. Mutta System Designissa se on päinvastoin: 37.0 % pienissä, 44.1 % suurissa. Vaikuttaa siltä, ​​että suurilla pitäisi olla omistautuneita arkkitehtejä, mutta ehkä he eivät yksinkertaisesti pysty kattamaan syntyvien järjestelmien määrää. Tai samat perusalgoritmit ja tietorakenteet laitetaan System Designiin, niin siitä tulee hieman selkeämpi.

Pienet yritykset tarvitsevat Framework Proficiencyä enemmän ja vähemmän edellä mainittua System Designia, josta voimme vetää kapteenin johtopäätöksen, että startupeille on tärkeää saada jotenkin toimiva tuote mahdollisimman nopeasti markkinoille, ja huomenna on huomenna.

"Missä ovat nuoret punkit, jotka pyyhkivät meidät pois maan päältä?"

Mitä opiskelijat oppivat?

Tässä luotin toisen tietoon HackerRank tutkimus.
On tärkeää ottaa huomioon, että vaikka ohjelmointia opetetaan tavalla tai toisella yliopistoissa (tarkoitan tietojenkäsittelytieteen pääaineita), yli puolet vastaajista ilmoitti harjoittavansa myös itseopiskelua.

Nykyaikaiset opiskelijat haluavat oppia YouTubesta, kun taas vanhemmat kehittäjät suosivat opetusohjelmia ja kirjoja. Molemmat käyttävät aktiivisesti StackOverflowa. Tämä johtuu siitä, että video on tuttu mediakanava Z-sukupolvelle, kun taas Y-sukupolven edustajat ovat edelleen aikakaudella, jossa ei ole bloggaajia.

He opettavat mitä työnantajat vaativat: JavaScript, Java, Python. He osoittavat osaavansa C/C++:aa, mutta tämä johtuu luultavasti siitä, että näitä kieliä käytetään opetuksessa yliopistoissa. He opettavat JS-kehyksiä, mutta kysyntä on huomattavasti suurempi kuin tarjonta, joten ilmeisesti he oppivat aktiivisesti ensimmäisen työpaikkansa löytämisen jälkeen.

"Missä ovat nuoret punkit, jotka pyyhkivät meidät pois maan päältä?"

Yleensä, kuten odotettiin, he opettavat sitä, mitä on kysyntää.

Opiskelijat odottavat ammatillista kasvua ensimmäisestä työpaikastaan, työ- ja perhe-elämän tasapaino tulee toiseksi (joissain maissa ensin) ja mielenkiintoiset tehtävät kolmanneksi.

Kehittäjäjoukon dynamiikka ohjelmointikielien ja ohjelmistotyyppien mukaan

"Missä ovat nuoret punkit, jotka pyyhkivät meidät pois maan päältä?"

Verkkosovellukset ovat ensimmäisellä sijalla arviolta 16.9 miljoonalla kehittäjällä. Tämä on taas SlashData. Seuraavaksi tulevat taustapalvelut (13.6 miljoonaa), mobiilisovellukset (13.1 miljoonaa) ja pöytätietokoneet (12.3 miljoonaa). AR/VR ja IoT ovat vähitellen kasvattamassa suosiotaan, AI/ML/Data Science on kasvanut merkittävästi viimeisen kahden vuoden aikana.

Javascript kasvaa nopeimmin; sen yhteisö on jo nyt suurin, kasvaen 2018 miljoonalla pelkästään vuonna 2.5. He jopa yrittävät kirjoittaa siihen IoT- ja ML-sektoreilla.
Python kasvoi 2018 miljoonalla vuonna 2.2 johtuen ML:n suosion kasvusta, jossa se on perinteisesti vahva, sekä oppimisen helppouden ja kielen mukavuuden ansiosta.

Java, C/C++ ja C# kasvavat hitaammin kuin kehittäjien kokonaismäärä. Ne ovat nykyään harvoin ohjelmointikieli, jolla ihmiset päättävät aloittaa. Täällä kehittäjien kysyntä on enemmän tai vähemmän tasapainossa tarjonnan kanssa. Luulen, että Java olisi kasvanut vielä hitaammin, jos ei Androidia.

PHP on toiseksi suosituin verkkosovellusohjelmointikieli, ja se myös kasvaa merkittävästi (32 % vuonna 2018). Sen yhteisön arvioidaan olevan 5.9 miljoonaa kehittäjää. PHP:n polarisoivasta maineesta huolimatta se on melko helppo oppia ja laajalti käytetty.

Miten tämän päivän nuoret hakijat opiskelevat verrattuna aikaisempiin sukupolviin?

HackerRank-tiedot jälleen. Ne, jotka ovat nyt 38–53-vuotiaat, listaavat pelejä ensimmäisiksi projekteiksi.

Muuten, vahvistan, että ensimmäinen enemmän tai vähemmän toimiva projektini oli "tic-tac-toe" jopa viiteen peräkkäin rajoittamattomalla kentällä, toinen oli 15:n peli. Kirjoitin tämän kaiken eKr. 010-01, siellä oli Vilnan perus, eli BASIC-86 ja polttopiste. Eh.

Nykyaikaiset aloittelevat ohjelmoijat (enintään 21-vuotiaat) kirjoittavat laskimia ja verkkosivustoja ensimmäisinä projekteinaan.

X-sukupolven edustajista lähes puolet aloitti koodin kirjoittamisen ennen 16-vuotiaana, monet tekivät sen 5-10-vuotiaina (pääasiassa ne, jotka ovat nyt 35-45-vuotiaita). Se on enemmän tai vähemmän selvää miksi: tietolähteitä oli vähän, ja ohjelmoijaksi tuli todella haluta sitä pahasti, ja ne, jotka todella halusivat, aloittivat ohjelmoinnin aikaisin. Niillä, jotka eivät sitä niin kovin halunneet, on nyt todennäköisesti eri ammatti, joten sosiologian kuva on juuri tällainen.

"Missä ovat nuoret punkit, jotka pyyhkivät meidät pois maan päältä?"

Nykypäivän nuoret ehdokkaat vain 20 % ajasta aloittavat ohjelmoinnin ennen 16-vuotiaana, suurin osa jossain 16-20-vuotiaana. Mutta heidän on myös paljon helpompi oppia; nyt se on paljon helpompaa.

Tulokset

En ole vieläkään löytänyt konkreettista vastausta kysymykseen, tarvitseeko aloitteleva web-taustakehittäjä SQL:ää tänään, mutta olen korjannut käsitystäni nykyaikaisesta ohjelmoijajoukosta.

Seuraava kehittäjäsukupolvi on tavallisia ihmisiä, jollain tapaa muistuttavat edellisiä, asuntoongelma vain hemmotteli heitä. Ne tyydyttävät työnantajien luoman kysynnän. Kynnys ammattiin pääsylle on laskenut kätevämpien työkalujen ja puitteiden ansiosta, joiden avulla voit saavuttaa tuloksia nopeasti. Yhä useammista ihmisistä tulee nyt ohjelmoijia, digitaalinen sukupolvi (Z-sukupolvi) on elänyt teknologian parissa syntymästään asti, heille se on yleinen ammatti, ei huonompi kuin muut.

Ne, jotka tietävät, että L1-välimuistin latenssi on ~4 jaksoa ja että on parempi olla kaataamatta välimuistirivejä tarpeettomasti, pienenee prosentteina koko väestön koosta. Heidän ei kuitenkaan pidä huolehtia työllistymisestä, vaan jonkun on kirjoitettava matalan tason asioita sinne, missä sitä vielä tarvitaan. Samoin niiden, joilla on syvää perustietoa järjestelmäsuunnittelusta ja jotka ovat hankkineet sen verisissä käytännön taisteluissa, eivätkä vain seuraa rahtikulttia, ei kannata huolestua. Koska tiimeissä tulee olemaan enemmän ihmisiä, jotka osaavat "vain kirjoittaa koodia" ja "vain" käyttää kehyksiä, ja "välttääkseen päämäärättömästi elettyjen vuosien sietämättömän tuskan" (c) heidän on oltava tasapainossa juuri tällaisten ihmisten kanssa. .

Pehmeät taidot ovat vähitellen siirtymässä toivottavien luokasta pakolliseen (minulla ei ole objektiivista tietoa tämän vahvistamiseksi, vain käytännön havainto). Ohjelmoijien määrä kasvaa ja heitä kaikkia pitää ohjata saavuttamaan tuloksia joko suoralla tai epäsuoralla ohjauksella, ja juuri tähän tarvitaan pehmeitä taitoja.

"Enter IT" vaikuttaa minusta paikalliselta alueelta, tyypilliseltä niille paikkakunnille, joissa ohjelmoijan tulot eroavat merkittävästi vastaavan "ei-IT"-asiantuntijan tuloista. Minskissä, missä asun, tämä on yleensä massaliikettä, näen päivittäin ilmoituksia uusista kursseista, kuinka päästä haluttuun IT-alaan, ja siivousyritykset kohdistavat ohjelmoijia viestillä ”Ymmärrätkö tämän kuvan koodin? Tämä tarkoittaa, että sinulla on varaa olla siivoamatta asuntoa, me teemme kaiken puolestasi." Samaa tapahtuu ilmeisesti jossain Intiassa. Minulla ei myöskään ole tietoja tämän todistamiseksi.

Yleisesti ottaen mielestäni mikään ei uhkaa ohjelmoijien väestöä. Ei ole mitään järkeä höpöttää siitä, että et löydä oikeita ohjelmoijia päivän aikana ja että ehdokkaat usein "ei tiedä mitään". He ovat yhtä älykkäitä ja osaavia, ehkä jopa älykkäämpiä ja kyvykkäämpiä kuin "oikeat ohjelmoijat"; he yksinkertaisesti hankkivat tiedon, jota nopeasti kasvavat markkinat heiltä vaativat, ja lykkäävät myöhempään sitä, mitä he eivät vielä ole tarvinneet ja jotka eivät tuota oikeaa hyötyä. nyt. He oppivat tarvittaessa, koska he haluavat silti oppia. Todennäköisesti kaikki eivät pysty tähän, mutta kaikki eivät myöskään tarvitse sitä, vaan markkinat hyväksyvät lähitulevaisuudessa helposti ihmisiä, jotka pystyvät nopeasti rakentamaan toisen sovelluskonseptin jollain viitekehyksellä.

Vain rekisteröityneet käyttäjät voivat osallistua kyselyyn. Kirjaudu sisään, ole kiltti.

Edellyttääkö web-backender-haastatteluissa SQL-taitoa?

  • Kyllä, vaadin sitä, koska tarvitsen sitä töihin

  • Kyllä, vaikka sitä harvoin töissä tarvitaan.

  • Ei, en vaadi sitä, meillä on NoSQL

  • Ei, en vaadi sitä, ORM tekee kaiken

320 käyttäjää äänesti. 230 käyttäjää pidättyi äänestämästä.

Lähde: will.com

Lisää kommentti