Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows Phone
  • Kako postati programeri. Potrebne osobne i poslovne kvalitete, profesionalne vještine i sposobnosti za rad kao programer – što trebate znati i moći? Resursi za učenje

Kako postati programeri. Potrebne osobne i poslovne kvalitete, profesionalne vještine i sposobnosti za rad kao programer – što trebate znati i moći? Resursi za učenje

Iza većine tehničkih pogodnosti, poput internetske banke ili informativne ploče zračne luke, stoje stručnjaci jedne od najtraženijih profesija našeg vremena - programeri. Bez njih ne bi radili ni gadgeti ni društvene mreže. Čak bi i naručivanje novih tenisica iz online trgovine bilo problematično. Do sada je IT industrija samo ubrzavala tempo razvoja, zahtijevajući sve više novih zaposlenika. Kampanje su spremne zaposliti čak i početnike. Prosječna plaća programera počinje od 35 tisuća rubalja, a iskusni profesionalci mogu zaraditi pretjeran novac.

Profesija programera je popularna i tražena

U ovom članku ćemo vam reći kako ući u prestižnu profesiju, tko su stariji programeri i zašto će vam ovdje biti teško bez engleskog.

Tko su programeri i čime se bave

Zahtjevi IT industrije za profesionalcima stalno rastu. Stoga su potrebni ljudi koji će to razumjeti: stvarati, popravljati, podržavati. Koderi su različiti, a svaki posao ima svoje specifičnosti. Razgovarajmo o glavnim specijalizacijama IT stručnjaka:

Najočitija opcija. Ali nije tako jednostavno kao što mislite. Koderi obavljaju različite zadatke ovisno o svom specijaliziranom programskom jeziku i projektu.

Na primjer, programer mobilnih aplikacija stvara programe za android, ios i druge. Svaka prva osoba ima pametni telefon i tablet, tako da posao neće uskoro završiti.

Drugi smjer koji obećava je java programiranje. Većina bankarskih sustava dizajnirana je na ovom jeziku. Banke su spremne dobro platiti za kvalitetan proizvod i zaposlenima s punim radnim vremenom i tvrtkama trećih strana. Ali zahtjevi su i ovdje visoki: morat ćete biti odgovorni za ispravan rad aplikacije s tuđim novcem. Naravno, možete programirati na Javi ne samo u banci, već dobri IT stručnjaci s iskustvom primaju oko 200 tisuća rubalja mjesečno.

Tester je stručnjak, bez kojeg nijedan projekt neće biti objavljen. Ovaj informatičar zna sve o zamršenosti koda i o mjestima na kojima se program može srušiti. Njegova je odgovornost testirati otpornost proizvoda na bugove i bugove te ga vratiti programerima na popravke. U početku se provjera obavlja ručno, ali kada se pronađu sve slabe točke, tester napiše poseban program za automatizaciju rješavanja problema.

Druga slična profesija je qa inženjer, stručnjak za kvalitetu proizvoda. Njegova glavna razlika je u tome što ne traži greške u kodu, već ih pokušava izbjeći. Detaljno sagledavanje zahtjeva kupaca, planiranje razvoja, uspostavljanje komunikacije između grupa programera - sve su to odgovornosti qa inženjera. Često čak i nije potrebno poznavanje programskog jezika, važnije je razumjeti faze razvoja i značajke upravljanja projektima.

Profesija je privlačna zbog svoje plaće: čak i početnik ovdje može biti plaćen 50 tisuća kuna mjesečno.

Prema istraživanju StackOverFlowa, ovo je najtraženija profesija u 2017. godini. Web programeri dijele se u dvije kategorije: front end i back end (često su šifrirani kao UX / UI dizajn). Prvi prate sve što se odnosi na korisnički dio: upotrebljivost aplikacije i stranice, intuitivno korištenje i samo lijepa slika. Drugi rade na tehničkoj komponenti: logici stranice, njezinim funkcijama, interakciji s bazom podataka. Kako bi stranica na Internetu izgledala moderno, programeri pohađaju html i php tečajeve, master css, java-script, python programiranje.

Vaša plaća ovisit će o broju alata koje posjedujete. Najmanja naknada za html-kodere, primaju od 25 tisuća mjesečno.

  • 1C programator

Značajka 1C programiranja je bliska povezanost s gospodarskom industrijom. Primjerice, da biste ispravno izračunali plaću 3000 ljudi u tvornici, trebate negdje pohraniti podatke o njihovom radnom vremenu, plaćama, bolovanju itd. Ovaj zadatak preuzima program 1C-enterprise. 1C-programer postavlja računovodstvene programe i programe za upravljanje dokumentima tako da se dokumenti lako istovaruju, a izvješća se automatski generiraju.

Moguća rutina rada više je nego nadoknađena redoslijedom plaća. Ako govorimo o fiksnoj stopi, tada će početnik 1C programer odmah pronaći slobodno mjesto s plaćom od 45 tisuća mjesečno, a vodeći stručnjak prima od 120. Ali u slučaju freelancera, zarada će ovisiti o vašim vještinama i broj radnih sati tjedno. Profesionalci zarađuju i 200 i 500 tisuća mjesečno.

Polemika o pravim programerima traje do danas.

Ovaj IT tip zapravo nije programer. Njegova je posebnost što je dobro upućen u hardver. Povežite pisač, prijenosno računalo, projektor, konfigurirajte njegov rad, distribuirajte Internet i dizajnirajte zeznutu lokalnu mrežu - to je sve za njega. Gurui žica i radnih pisača plaćaju se od 25 tisuća rubalja, a plaća programera-administratora sustava s dobrim iskustvom može ići do 150 tisuća mjesečno.

On je menadžer proizvoda, on je vlasnik proizvoda. Voditelj proizvoda djeluje kao prevoditelj između kupca, koji ne razumije informacijsku tehnologiju, i izvršnog programera. Čini se da je ovo posao iz ničega - da kupac to ne može shvatiti od samih programera ?! Neće se moći dobro snaći. Voditelj proizvoda je taj koji može objasniti funkcionalnost kupcu i potom formulirati točan zadatak za IT stručnjake. Odgovornost vlasnika proizvoda je osigurati da gotova aplikacija, web stranica ili igra korisniku donose maksimalnu radost i vrijednost.

  • Direktor IT proizvoda

Svaki uspješan IT stručnjak može doći do najviše pozicije u informatičkoj sferi – glavnog službenika nabave (skraćeno CPO). Ova osoba duboko poznaje proizvod, razumije sustav kodiranja, poznaje najbolje strategije za izradu softvera. CIO srednje tvrtke može prijaviti 30-50 ljudi. Prosječan prihod ... znatno iznad prosjeka.

Predaje programiranje na sveučilištu

Najočitiji način da postanete programer je da se upišete na odgovarajući profil na sveučilištu. Život većine stručnjaka više nije moguć bez IT-tehnologija. U određenoj mjeri, i matematičari i kemičari i biolozi su naučeni rukovati kodom. Ali kako ne biste patili u predmetima koji vam nisu zanimljivi i proučavali samo specijalizirane discipline, odaberite jedan od sljedećih smjerova:

Svaka opcija ima svoje karakteristike. Na jednom odjelu diplomiraju znanstvenici, na drugom su diplomirani menadžeri, a na trećem pravi antihakeri! Za više informacija o tome, pogledajte našu infografiku. Budućim stručnjacima bolje je odabrati tehnička sveučilišta. Ovi profili su u, i drugi.

Obuka programera na fakultetu

Ne morate čekati maturu da biste se posvetili omiljenoj zabavi. Za programera se možete početi školovati nakon 9. razreda, samo trebate odabrati pravi fakultet. Nema toliko prikladnih specijaliteta:

  • 09.02.03 Programiranje u računalnim sustavima;
  • 09.02.05 Primijenjena informatika;
  • 09.02.07 Informacijski sustavi i programiranje.

Ukupno u zemlji postoji 71 ustanova srednjeg strukovnog obrazovanja s područjima osposobljavanja koja su nam potrebna. Ove profile ćete pronaći u Visoka škola za informacijske tehnologije u Sankt Peterburgu, Koledž Petrovsky, Visoka škola elektronike i računarstva Novosibirsk, v Uralski tehnološki koledž "MEPhI" i mnogi drugi.

Tečajevi dodatnog obrazovanja

Programiranje su počeli učiti u Rusiji ne tako davno, pa je pronalazak visokokvalitetnog stručnog tečaja cijela avantura. Osim toga, nisu sve opcije besplatne. Kako biste izbjegli bacanje novca, obratite pozornost na recenzije, fakultet, program i izglede za posao.

  • Online platforme

Programski jezik koji vam se sviđa možete naučiti sami i prikladnim tempom na jednom od resursa za obuku. Na primjer, na INTUIT-u je lako pronaći tečaj java programiranja. Nakon uspješno položenog završnog testiranja, sustav će izdati besplatan certifikat.

  • Online škole

Ako vam se ideja samostalnog učenja ne sviđa, onda pobliže pogledajte online škole. Značajan plus - najčešće tečajeve ovdje predaju programeri koji ne samo da će podijeliti opće znanje, već će pričati i o stvarnim zanimljivim slučajevima. Na kraju obuke daju diplomu i obećaju pomoć pri zapošljavanju. Edukacija je "službena", čak se može dobiti i porezni odbitak. Ali i košta dosta. Godišnji tečaj koštat će 150 tisuća rubalja. Evo, kako izgledate: ovo je veliki trošak ili pametno ulaganje u sebe.

  • Tečajevi s punim radnim vremenom

Za one koji žele vidjeti učitelja ne kroz ekran monitora, već uživo, postoje tečajevi licem u lice. Na primjer, MAKSIMUM izvodi nastavu iz studija informatičke sfere za školarce Digitalne vještine. Tu je i programiranje, a na uvodni sat možete doći besplatno.


Kako upisati specijalnost Programiranje i što polagati?

Sveučilišta najčešće zahtijevaju od budućih IT-specijalista rezultate Jedinstvenog državnog ispita u Ruski jezik, specijalizirana matematika i informatika... Neki će možda tražiti više i Engleski.

Što učiniti sada da poboljšate svoje šanse za uspješnu karijeru programiranja

Morate shvatiti da se IT sfera razvija ogromnom brzinom. Fizički, sveučilišta nikada neće imati vremena prilagoditi programe kako bi studentima pružili najnovije informacije. Sveučilište će postaviti temelje u obliku osnovnih jezičnih sposobnosti i standardnih algoritama. Zato je rad programera nemoguć bez kontinuiranog samoobrazovanja. Programski jezici se moderniziraju, programeri stvaraju nove prikladne alate kako bi sebi i kolegama olakšali rad, smišljaju nove algoritme za rješavanje problema. Nadalje ćemo vam reći gdje i što naučiti više da biste uspjeli u IT-sferi:

  • Bot engleski. Mnogi resursi su na engleskom. Kako ne biste čekali da vam se netko smiluje i prevede tekst, unaprijed vodite računa o jeziku. To je toliko važno da neki plaćeni tečajevi svojim studentima pružaju satu jezika kao dio njihovog glavnog kurikuluma.
  • Provjerite to na it forumima. Odgovori na mnoga pitanja mogu se pronaći na forumima programera, kao što je Habrahabr. Profesionalna zajednica velikodušno dijeli znanje i korisne dijelove koda. Istina, ponekad pretraživanja traju i po nekoliko dana, a pritom morate razumjeti nove alate s kojima prije niste bili upoznati. I da, često će najkorisnija poveznica biti na engleskom.
  • Uronite u knjige. Ne žurite kupiti prvu literaturu na koju naiđete u najbližoj knjižari. Na policama je puno beskorisnog i beznadno zastarjelog materijala. Opet, mnoga su djela izvorno napisana na engleskom, a ruska verzija može imati ozbiljne nedostatke u prijevodu. Možete početi s našim preporukama, a onda ćete shvatiti kako izgleda dobar sadržaj.

Jeste li pročitali do kraja? Evo još par zanimljivosti koje će vam pomoći da bolje zamislite profesiju programera.

  • Ako odete na radno mjesto, vidjet ćete: potrebni su tajanstveni srednji ili stariji programeri. Programeri imaju vlastitu gradaciju stupnja profesionalnosti: mlađi, srednji i stariji... Prvi, početnici, moraju ovladati svim sredstvima jezika na kojem rade. Drugi su informatičari s 3-5 godina iskustva. Drugi ne samo da znaju sve o kodu, već mogu i organizirati rad razvojnog tima na projektu. S rastom čina raste i plaća sukladno tome!
  • Popularan portret tipičnog programera je šutljivi muškarac u čašama s litrom kave. Zapravo, ova slika vrijedi samo za rijetke slobodnjake. I ne morate biti introvert da biste ušli u profesiju. Kao i u svakom drugom poslu, važne su preprofesionalne vještine – objasniti, raspravljati, pregovarati, izaći iz sukoba.

Ovaj portret programera je beznadno zastario. Moderni IT stručnjaci su društveni pozitivni dečki!

  • Cijela skupina stručnjaka za to radi na velikim projektima. Svatko je odgovoran za svoj dio koda, a svi dijelovi na kraju trebaju biti sastavljeni u jedan proizvod. Kako bi se to dogodilo, timovi neprestano održavaju sastanke za planiranje, pomažući kolegama da pronađu i isprave nedostatke. A neki uredi imaju čak i TV kutije i društvene igre. Kolektivna promjena aktivnosti pomaže uspostaviti kontakt i prebaciti se kada je posao "gore".
  • Programeri 13. rujna slave svoj profesionalni praznik. Datum nije slučajno odabran: to je 256. dan u godini, najveća moguća snaga dvojke, koja se uklapa u broj 365.

Da biste započeli svoj put do karijere programera, odgovor je na pitanje trebate li programiranje uopće? Ovo pitanje se ne odnosi na one koji studiraju ili studiraju u specijalnosti bliskoj programiranju. Ako ste u školi bili bolji u matematici nego u humanističkim znanostima, ako volite provoditi puno vremena za računalom, ako želite naučiti nešto novo, onda je programiranje za vas.

Gdje početi

Postoji nekoliko opcija za razvoj događaja, zbog čega osoba postaje programer. Prvi su roditelji-programeri koji su svoju djecu svemu naučili. Ova djeca čak ne moraju ići na sveučilište. Druga opcija je modna profesija programera. Nakon škole, trebalo je odabrati gdje ići studirati, i izabrao moderan smjer IT, činilo se da mi se sviđa. I posljednja opcija je hobi koji je prerastao u posao.

Ako vam se ništa od navedenog nije dogodilo, onda imate izbor između četiri opcije:

  • Samoobrazovanje... Ova se opcija može koristiti samostalno iu kombinaciji s drugim metodama. Internet je pun, a aplikacije koje vam pomažu da naučite razne programske jezike i tehnologije. Ali ovo je najteži put za početnike.
  • Sveučilište... Ako završavate srednju školu i želite biti programer, onda idite na sveučilište. Ako ne zbog znanja, onda iza kore. Može poslužiti kao bonus prilikom prijave za posao. Iako ćete i vi dobiti nešto znanja. Ali nemojte zaboraviti i samostalno učiti. Izboru sveučilišta treba pristupiti vrlo odgovorno. Pažljivo proučavajte studijske programe i birajte najbolja tehnička sveučilišta.
  • Mentor... Bit će jako lijepo ako nađete nekoga tko će vam pristati pomoći i uputiti vas u pravom smjeru. On će predložiti prikladne knjige i resurse, pregledati vaš kod i dati korisne savjete. Usput, već smo pisali o tome gdje možete pronaći mentora. Mentora možete tražiti među poznatim programerima, na IT druženjima i konferencijama, na internetskim forumima itd.
  • Specijalizirani praktični tečajevi... Pokušajte u svom gradu potražiti tečajeve koji vas uče programskom jeziku ili tehnologiji. Bio sam ugodno iznenađen brojem takvih tečajeva u Kijevu, uključujući besplatne i s naknadnim zapošljavanjem.

Koji jezik, tehnologiju i smjer odabrati

Kada postanete programer, nakon godinu-dvije moći ćete birati jezik koji vam se sviđa. Ali pri odabiru prvog programskog jezika, početnik bi trebao uzeti u obzir sljedeće kriterije:

  • Dostupnost slobodnih radnih mjesta na tržištu... Konačni cilj ovog puta je pronaći posao programera. A to će biti teško ako nitko ne traži programere u vašem programskom jeziku na tržištu rada. Provjerite web stranice za posao, pogledajte tko traži više, navedite desetak jezika. I prijeđite na sljedeći kriterij.
  • Niska ulazna razina... Ako morate provesti dugo vremena učeći jezik, to vas može obeshrabriti od programiranja općenito. Pročitajte o jezicima koje ste odabrali iznad. Pregledajte literaturu koju trebate pročitati da biste naučili ove jezike. I odaberite one o kojima piše da su lake, ili koje su vam se činile lake. Takvi jezici mogu biti PHP, Ruby, Python.
  • Uzbuđenje procesa... Ako ne volite pisati kod na odabranom jeziku, nećete uživati ​​u procesu, poslu i životu. Trebaš li to? Napravite pravi izbor.

Također, morat ćete odlučiti o smjeru programiranja. Mobilni, desktop, igre, web, programiranje niske razine i tako dalje. Najpopularnije i relativno lake industrije su razvoj za web, mobilne i desktop klijente. Za svaki smjer, jedan jezik može odgovarati, a uopće ne odgovara drugom. Odnosno, pri odabiru programskog jezika također vrijedi poći od ovog čimbenika.

U svakom slučaju naučite web tehnologije. To je označni jezik, stilovi i to će vašu stranicu učiniti dinamičnom. U sljedećem koraku naučite jezik na strani poslužitelja (Python, PHP, Ruby i drugi) i prikladne web okvire za njega. Pregledajte baze podataka: to spominje gotovo svako radno mjesto programera.

Kako steći početno iskustvo

Bez iskustva nećete dobiti posao. Bez posla nećete steći iskustvo. Začarani krug stvarnog života. Ali u redu je, izvući ćemo se iz toga.

Prvo, nemojte čekati da pročitate sve knjige na odabranom programskom jeziku. Počnite pisati svoje prve retke koda nakon drugog poglavlja knjige. Ispunite sve zadatke iz knjiga, pretipkajte primjere, razumite ih. Svojim idejama zakomplicirajte primjere i zadatke iz knjiga. Izradite svoje zadatke za obrađeni materijal. Riješite ove zadatke.

Drugo, morate pronaći svoje prve projekte. Ovo je vjerojatno najteža opcija, ali radna. Morat ćete sami tražiti narudžbe, ispunjavati ih, mučiti se s plaćanjem. Za početnika je ovo zastrašujuće, ali tada će se sve druge opcije činiti kao cinch. Dovršeni projekti mogu se zapisati u iskustvo i pokazati budućem poslodavcu. Pravi projekti su veliki plus u vašem životopisu.

Ako znate engleski, bolje je registrirati se na burzama koje govore engleski. Tržište je tamo veće. Ako ne znaš engleski, nauči ga. U međuvremenu su vam dostupne slobodne burze na ruskom jeziku. Potražite male projekte koji odgovaraju ili malo iznad vaše razine stručnosti. Prijavite se za nekoliko desetaka ovih zadataka. I pripremite se da dobijete more odbijenica. Ali ako se aktivira jedna ili dvije aplikacije, imate priliku steći pravo iskustvo.

Još jedna dobra opcija za stjecanje stvarnog iskustva je open source. Takvi projekti uvijek trebaju nove ljude, čak i početnike. Možete tražiti bugove u projektu ili pogledati u alatu za praćenje bugova i predložiti metode za njihovo rješavanje. Pronalaženje takvih projekata je jednostavno na GitHubu ili. Slobodno tamo postavljajte pitanja.

Četvrti način stjecanja iskustva je pomoć poznatim programerima. Zamolite ih da vam daju male i jednostavne zadatke. Ako nešto ne uspije, uvijek ćete se imati kome obratiti. A istovremeno ćete sudjelovati u pravom projektu.

Posljednji način su vlastiti projekti, razni hackathoni ili rad u coworking prostoru. Teško je pokrenuti vlastite projekte, bolje je tražiti poznanike ili prijatelje.

Zašto odabrati Python

Razgovarajmo još malo o odabiru vašeg prvog programskog jezika. Prvi jezik bi trebao biti jednostavan i popularan na tržištu. Ovaj jezik je Piton... Toplo preporučam da ga odaberete kao svoj prvi programski jezik.

Python programski kod je čitljiv. Ne morate čak ni biti programer da biste općenito razumjeli što se događa u programu. Zbog jednostavne sintakse Pythona, trebat će vam manje vremena za pisanje programa nego, na primjer, u Javi. Ogromna baza knjižnica koja će vam uštedjeti mnogo truda, živaca i vremena. Python je jezik visoke razine. To znači da ne morate previše razmišljati o memorijskim stanicama i što tamo staviti. Python je jezik opće namjene. A tako je jednostavno da ga čak i djeca mogu naučiti.

Iskrenosti radi, vrijedi spomenuti i druge programske jezike. Java može biti dobar izbor za početnika. Ovaj jezik je popularniji od Pythona, ali i malo složeniji. Ali razvojni alati su puno bolje razvijeni. Treba samo usporediti Eclipse i IDLE. Nakon Jave bit će vam lakše prijeći na rad s programskim jezicima niske razine.

PHP je još jedan vrlo popularan jezik. I mislim da je čak jednostavniji od Pythona. Na forumu je vrlo lako pronaći sebi mentora ili rješenje problema. To je zato što u svijetu postoji ogroman broj PHP-programera različitih razina. PHP nema normalan uvoz, postoji mnogo opcija za rješavanje istog problema. To otežava učenje. A PHP je skrojen isključivo za web.

Jezici C i C # vrlo teško za početnika. Rubin- dobar izbor kao drugi jezik, ali ne i prvi. JavaScript- vrlo jednostavan jezik, ali vas neće naučiti ničemu dobrom. A zadatak prvog programskog jezika je još uvijek naučiti nešto ispravno, postaviti nekakvu logiku.

Je li engleski važan

Važno! Ne znam? Učite. Znaš li? Poboljšati. Naučite čitati, pisati, slušati i govoriti engleski. Usredotočite se na tehničku literaturu. Slušajte podcaste na engleskom jeziku. Pročitajte vodiče za programiranje na engleskom.

Što trebate znati osim programskog jezika

Naravno, osim programskog jezika i engleskog, potrebno je još nešto znati. Ali što ovisi o smjeru koji odaberete. Web programer mora poznavati HTML, CSS, JavaScript. Stolni programer podučava API operativnog sustava i razne okvire. Programer mobilnih aplikacija podučava Android, iOS ili Windows Phone okvire.

Svatko treba naučiti algoritme. Pokušajte pohađati tečaj na Courseri ili pronaći knjigu o algoritmima koja vam odgovara. Osim toga, trebate poznavati jednu od baza podataka, obrazaca programiranja, strukture podataka. Također je vrijedno upoznati repozitorije koda. S barem jednim. Poznavanje sustava kontrole verzija je obavezno. Odaberite Git, on je najpopularniji. Morate poznavati alate s kojima radite, operativni sustav i razvojno okruženje. A glavna vještina programera je znati Google. Ne možete živjeti bez toga.

Posljednji koraci

Morate pripremiti životopis. Ne samo životopis, nego. Ne treba tu pisati, ali ne treba ni šutjeti o svojim vještinama. Nakon što ste pozvani na razgovor, morate se pripremiti za njega. Prođite kroz materijal u svom životopisu. Morate biti sigurni u svoje znanje. Pregledajte projekte na kojima ste radili, zapamtite tehnologije koje ste koristili. I naprijed - u svijetlu budućnost s novom profesijom programera.

Da biste započeli svoj put do karijere programera, odgovor je na pitanje trebate li programiranje uopće? Ovo pitanje se ne odnosi na one koji studiraju ili studiraju u specijalnosti bliskoj programiranju. Ako ste u školi bili bolji u matematici nego u humanističkim znanostima, ako volite provoditi puno vremena za računalom, ako želite naučiti nešto novo, onda je programiranje za vas.

Gdje početi

Postoji nekoliko opcija za razvoj događaja, zbog čega osoba postaje programer. Prvi su roditelji-programeri koji su svoju djecu svemu naučili. Ova djeca čak ne moraju ići na sveučilište. Druga opcija je modna profesija programera. Nakon škole, trebalo je odabrati gdje ići studirati, i izabrao moderan smjer IT, činilo se da mi se sviđa. I posljednja opcija je hobi koji je prerastao u posao.

Ako vam se ništa od navedenog nije dogodilo, onda imate izbor između četiri opcije:

  • Samoobrazovanje... Ova se opcija može koristiti samostalno iu kombinaciji s drugim metodama. Internet je pun, a aplikacije koje vam pomažu da naučite razne programske jezike i tehnologije. Ali ovo je najteži put za početnike.
  • Sveučilište... Ako završavate srednju školu i želite biti programer, onda idite na sveučilište. Ako ne zbog znanja, onda iza kore. Može poslužiti kao bonus prilikom prijave za posao. Iako ćete i vi dobiti nešto znanja. Ali nemojte zaboraviti i samostalno učiti. Izboru sveučilišta treba pristupiti vrlo odgovorno. Pažljivo proučavajte studijske programe i birajte najbolja tehnička sveučilišta.
  • Mentor... Bit će jako lijepo ako nađete nekoga tko će vam pristati pomoći i uputiti vas u pravom smjeru. On će predložiti prikladne knjige i resurse, pregledati vaš kod i dati korisne savjete. Usput, već smo pisali o tome gdje možete pronaći mentora. Mentora možete tražiti među poznatim programerima, na IT druženjima i konferencijama, na internetskim forumima itd.
  • Specijalizirani praktični tečajevi... Pokušajte u svom gradu potražiti tečajeve koji vas uče programskom jeziku ili tehnologiji. Bio sam ugodno iznenađen brojem takvih tečajeva u Kijevu, uključujući besplatne i s naknadnim zapošljavanjem.

Koji jezik, tehnologiju i smjer odabrati

Kada postanete programer, nakon godinu-dvije moći ćete birati jezik koji vam se sviđa. Ali pri odabiru prvog programskog jezika, početnik bi trebao uzeti u obzir sljedeće kriterije:

  • Dostupnost slobodnih radnih mjesta na tržištu... Konačni cilj ovog puta je pronaći posao programera. A to će biti teško ako nitko ne traži programere u vašem programskom jeziku na tržištu rada. Provjerite web stranice za posao, pogledajte tko traži više, navedite desetak jezika. I prijeđite na sljedeći kriterij.
  • Niska ulazna razina... Ako morate provesti dugo vremena učeći jezik, to vas može obeshrabriti od programiranja općenito. Pročitajte o jezicima koje ste odabrali iznad. Pregledajte literaturu koju trebate pročitati da biste naučili ove jezike. I odaberite one o kojima piše da su lake, ili koje su vam se činile lake. Takvi jezici mogu biti PHP, Ruby, Python.
  • Uzbuđenje procesa... Ako ne volite pisati kod na odabranom jeziku, nećete uživati ​​u procesu, poslu i životu. Trebaš li to? Napravite pravi izbor.

Također, morat ćete odlučiti o smjeru programiranja. Mobilni, desktop, igre, web, programiranje niske razine i tako dalje. Najpopularnije i relativno lake industrije su razvoj za web, mobilne i desktop klijente. Za svaki smjer, jedan jezik može odgovarati, a uopće ne odgovara drugom. Odnosno, pri odabiru programskog jezika također vrijedi poći od ovog čimbenika.

U svakom slučaju naučite web tehnologije. To je označni jezik, stilovi i to će vašu stranicu učiniti dinamičnom. U sljedećem koraku naučite jezik na strani poslužitelja (Python, PHP, Ruby i drugi) i prikladne web okvire za njega. Pregledajte baze podataka: to spominje gotovo svako radno mjesto programera.

Kako steći početno iskustvo

Bez iskustva nećete dobiti posao. Bez posla nećete steći iskustvo. Začarani krug stvarnog života. Ali u redu je, izvući ćemo se iz toga.

Prvo, nemojte čekati da pročitate sve knjige na odabranom programskom jeziku. Počnite pisati svoje prve retke koda nakon drugog poglavlja knjige. Ispunite sve zadatke iz knjiga, pretipkajte primjere, razumite ih. Svojim idejama zakomplicirajte primjere i zadatke iz knjiga. Izradite svoje zadatke za obrađeni materijal. Riješite ove zadatke.

Drugo, morate pronaći svoje prve projekte. Ovo je vjerojatno najteža opcija, ali radna. Morat ćete sami tražiti narudžbe, ispunjavati ih, mučiti se s plaćanjem. Za početnika je ovo zastrašujuće, ali tada će se sve druge opcije činiti kao cinch. Dovršeni projekti mogu se zapisati u iskustvo i pokazati budućem poslodavcu. Pravi projekti su veliki plus u vašem životopisu.

Ako znate engleski, bolje je registrirati se na burzama koje govore engleski. Tržište je tamo veće. Ako ne znaš engleski, nauči ga. U međuvremenu su vam dostupne slobodne burze na ruskom jeziku. Potražite male projekte koji odgovaraju ili malo iznad vaše razine stručnosti. Prijavite se za nekoliko desetaka ovih zadataka. I pripremite se da dobijete more odbijenica. Ali ako se aktivira jedna ili dvije aplikacije, imate priliku steći pravo iskustvo.

Još jedna dobra opcija za stjecanje stvarnog iskustva je open source. Takvi projekti uvijek trebaju nove ljude, čak i početnike. Možete tražiti bugove u projektu ili pogledati u alatu za praćenje bugova i predložiti metode za njihovo rješavanje. Pronalaženje takvih projekata je jednostavno na GitHubu ili. Slobodno tamo postavljajte pitanja.

Četvrti način stjecanja iskustva je pomoć poznatim programerima. Zamolite ih da vam daju male i jednostavne zadatke. Ako nešto ne uspije, uvijek ćete se imati kome obratiti. A istovremeno ćete sudjelovati u pravom projektu.

Posljednji način su vlastiti projekti, razni hackathoni ili rad u coworking prostoru. Teško je pokrenuti vlastite projekte, bolje je tražiti poznanike ili prijatelje.

Zašto odabrati Python

Razgovarajmo još malo o odabiru vašeg prvog programskog jezika. Prvi jezik bi trebao biti jednostavan i popularan na tržištu. Ovaj jezik je Piton... Toplo preporučam da ga odaberete kao svoj prvi programski jezik.

Python programski kod je čitljiv. Ne morate čak ni biti programer da biste općenito razumjeli što se događa u programu. Zbog jednostavne sintakse Pythona, trebat će vam manje vremena za pisanje programa nego, na primjer, u Javi. Ogromna baza knjižnica koja će vam uštedjeti mnogo truda, živaca i vremena. Python je jezik visoke razine. To znači da ne morate previše razmišljati o memorijskim stanicama i što tamo staviti. Python je jezik opće namjene. A tako je jednostavno da ga čak i djeca mogu naučiti.

Iskrenosti radi, vrijedi spomenuti i druge programske jezike. Java može biti dobar izbor za početnika. Ovaj jezik je popularniji od Pythona, ali i malo složeniji. Ali razvojni alati su puno bolje razvijeni. Treba samo usporediti Eclipse i IDLE. Nakon Jave bit će vam lakše prijeći na rad s programskim jezicima niske razine.

PHP je još jedan vrlo popularan jezik. I mislim da je čak jednostavniji od Pythona. Na forumu je vrlo lako pronaći sebi mentora ili rješenje problema. To je zato što u svijetu postoji ogroman broj PHP-programera različitih razina. PHP nema normalan uvoz, postoji mnogo opcija za rješavanje istog problema. To otežava učenje. A PHP je skrojen isključivo za web.

Jezici C i C # vrlo teško za početnika. Rubin- dobar izbor kao drugi jezik, ali ne i prvi. JavaScript- vrlo jednostavan jezik, ali vas neće naučiti ničemu dobrom. A zadatak prvog programskog jezika je još uvijek naučiti nešto ispravno, postaviti nekakvu logiku.

Je li engleski važan

Važno! Ne znam? Učite. Znaš li? Poboljšati. Naučite čitati, pisati, slušati i govoriti engleski. Usredotočite se na tehničku literaturu. Slušajte podcaste na engleskom jeziku. Pročitajte vodiče za programiranje na engleskom.

Što trebate znati osim programskog jezika

Naravno, osim programskog jezika i engleskog, potrebno je još nešto znati. Ali što ovisi o smjeru koji odaberete. Web programer mora poznavati HTML, CSS, JavaScript. Stolni programer podučava API operativnog sustava i razne okvire. Programer mobilnih aplikacija podučava Android, iOS ili Windows Phone okvire.

Svatko treba naučiti algoritme. Pokušajte pohađati tečaj na Courseri ili pronaći knjigu o algoritmima koja vam odgovara. Osim toga, trebate poznavati jednu od baza podataka, obrazaca programiranja, strukture podataka. Također je vrijedno upoznati repozitorije koda. S barem jednim. Poznavanje sustava kontrole verzija je obavezno. Odaberite Git, on je najpopularniji. Morate poznavati alate s kojima radite, operativni sustav i razvojno okruženje. A glavna vještina programera je znati Google. Ne možete živjeti bez toga.

Posljednji koraci

Morate pripremiti životopis. Ne samo životopis, nego. Ne treba tu pisati, ali ne treba ni šutjeti o svojim vještinama. Nakon što ste pozvani na razgovor, morate se pripremiti za njega. Prođite kroz materijal u svom životopisu. Morate biti sigurni u svoje znanje. Pregledajte projekte na kojima ste radili, zapamtite tehnologije koje ste koristili. I naprijed - u svijetlu budućnost s novom profesijom programera.

1.1 Zašto vam treba

Budi pisar! Ona će te osloboditi poreza, zaštitit će te od svih vrsta posla. Ona će te skinuti s motike i ... a ti nećeš nositi košaru. Odvojit će vas od veslanja i veslanja, udaljit će vas od gnjavaže. Nećeš biti pod mnogim vladarima i mnogim vladarima.
[...]
Postani pisar! Njegovi članovi su glatki, a vaše će ruke postati mekane. Kad izađeš, dotjeran si, uzvišen si, dvorjani te ispituju. Kad netko traži stručnu osobu, nađe vas. Oni koji ništa ne znaju traže znanstvenika. On [je] uzvišen do te mjere da mu je dobio [naslov] sera, hvaljen za njegovo izvrsno ponašanje.

Papirus Apastasi II, Stari Egipat

Vremena prolaze, ali ništa se ne mijenja. Glavni razlog je taj što su programeri itekako potrebni na tržištu rada. Potražnja je temeljni uzrok svih ostalih čimbenika. Dobri uvjeti rada, visoke plaće, lojalni šefovi. Sve ovo izgleda vrlo, vrlo atraktivno. Zapravo, profesija programera jedino je društveno dizalo u naše vrijeme. Ne trebaju vam bogati roditelji, opsežne veze sa svim vrstama "pravih ljudi", prestižno visoko obrazovanje i drugi atributi uspješnih ljudi u naše vrijeme. Sve što trebate je sposobnost izrade računalnih programa ili web stranica. Kodiranje možete početi živeći u najudaljenijoj i najmanje prestižnoj provinciji. I postići fantastičan uspjeh u životu.

Provizorno, u najgorem slučaju, vaša bi karijera mogla izgledati ovako. Prvo, pola godine ili godinu samostalnog studija. Oni. proučavati bez opsežne vanjske pomoći. Maksimalno što možete, pitajte nešto na tematskim forumima. Sigurno će vam se pomoći. Ali 99% će čitati velike debele knjige i od tamo raditi vježbe, 3-4 sata svaki dan. Tada možete biti plaćeni za svoje znanje. I bit će realno pronaći takav posao. Nakon što sam ovako radio godinu dana, za najobičniju plaću od 300-400 dolara. Imat ćete iskustvo koje vam otvara svaka vrata u životu. Možete primiti od 1000 $ na daljinu i \ ili otići gdje god želite. Čak i u drugu zemlju. A živjeti tamo nije ništa gore od mještana. Ne podržavam glupi slogan "izlazi iz...", ali ako baš želiš promijeniti prebivalište. Ovo zanimanje je najkraći i najlakši put.

Nakon što završite staž, nikada nećete živjeti lošije. Ovo će biti jako teško. Čak i čisto psihološki, profesija je opuštajuća. Nećete se bojati kriza, ratova, prirodnih katastrofa i loših gazda. Jer u svakom trenutku možete se preseliti bilo gdje i promijeniti posao za drugi. Uvijek ćete imati dovoljno novca za "rolnu maslaca", pa čak i prijevremenu otplatu hipoteke.

1.2 Tko može postati programer?

Sada malo muhe. Programer može postati svatko tko zna raditi svojom glavom. Zapravo, rad glave je težak kao i težak fizički rad. Tijekom vježbanja mozak troši puno hranjivih tvari i energije. Mora se natjerati da radi naporom volje. Ljubitelji rada na glavi ne mogu se naći češće od ljudi koji uživaju u fizičkoj aktivnosti. Svi znamo koliko se ljudi može dobrovoljno javiti za vježbanje ujutro i redovito ići u teretanu godinama. Otprilike isti broj želi dobrovoljno opteretiti svoj mozak radom. Trebat će volje i strpljenja. Ako ste spremni rješavati složene probleme, "nerješive" probleme više od godinu dana, možete postati programer.

Naravno, u ovom dijelu sam morao navesti kakvo obrazovanje trebate imati. Koje tečajeve, diplome i kompetencije trebate imati. Ali sve je to sporedno. Jer su diplome, kompetencije i tečajevi isplativi. Ako niste spremni glodati granit znanosti, ništa vam neće zasjati. Inače, sva potrebna znanja moći ćete steći za šest mjeseci.

Logično je da što bolje poznajete svoje računalo, to će vam put biti lakši. Morate biti iskusan korisnik računala. Oni. znati što je datotečni sustav, u smislu kako pohraniti svoje datoteke tamo, kako ih otvoriti različitim programima, kako instalirati programe i koristiti bilo koji od njih, ako to ne zahtijeva neko posebno znanje o tome što ti programi rade. Mislim da za šest mjeseci možete naučiti dovoljno koristiti računalo. Čak i ako prije, nikad ga niste vidjeli.

Većina onih koji žele postati programeri, ljubitelji računalnih igrica, čiji su roditelji isključili internet kako bi se vratili u stvarnost. Povratak u stvarnost, gdje se morate hraniti, a ne virtualni lik. Postavljaju administratori sustava, najniža razina. Oni idu raditi u tehničku podršku, jer jedino što mogu koristiti je računalo. Takvi ljudi već imaju potrebnu bazu znanja.

Ako imate poteškoća u komunikaciji s računalom, moj vam je savjet da prvo naučite kako ga samouvjereno koristiti. Ako samo zato što problemi s kojima ćete se susresti tijekom učenja programiranja zahtijevaju isti pristup i vještine kao i kod rješavanja problema običnog korisnika. Stoga neiskusni korisnici moraju postati iskusni. Postoji mnogo besplatne literature, online tečajeva, video tutoriala i naprednih korisnika koji će vam pomoći. U najmanju ruku, zadaci u učenju programiranja puno su teži od zadataka običnog korisnika. Dobro poznavanje rada na računalu odgovornost je svakog programera!

Ostalo znanje, poput stranih jezika, pa čak i matematike, u početnoj fazi može se smatrati beznačajnim.
Naravno, bit će ljudi koji će pitati: „Čekaj !!! Što ako sam glup (star, invalid itd.)??? Koji IQ trebam imati???"

Zapravo, ne postoji 100% način da definirate svoju sposobnost programiranja prema nekim formalnim kriterijima. Prema jednom popularnom neuroznanstveniku, ljudski je mozak vrlo varijabilan. Ako težina, visina, veličina glavnih ljudskih organa variraju, konvencionalno + \ - 50% u većini odraslih osoba, tada se veličine režnja mozga razlikuju deseterostruko. Stoga je vrlo teško razumjeti koja je aktivnost najprikladnija za vas. Za to je potrebno izraditi novi tip ionako suludo skupog medicinskog uređaja. Zatim unajmite rijetke i skupe stručnjake koji će analizirati očitanja uređaja. I nije činjenica da za vaš novac jednostavno neće pogriješiti. Kao što se događa u svim složenim i skupim projektima, u početnoj fazi.

Naravno, svi misle da se sve može svesti na nešto poput prijemnog ispita za fakultet, gdje će glavni predmet biti matematika. Ali ne! Žurim da uznemirim sve. Izvana je matematika slična programiranju, ali to je samo na prvi pogled. Sjećam se da sam prije 10 godina čitao ulomak iz knjige u kojoj je autor, iskusni programer, rekao da je programiranje više poput lingvistike. Da da! Po njegovu mišljenju, profesionalni lingvisti mogu biti bolji programeri od profesionalnih matematičara! Ne mogu se složiti 100%. Ali u tome postoji racionalno zrno.

Uzmimo primjer. Morate sastaviti upute za vaše dijete za kupnju namirnica u trgovini. Kao: “Ideš u dućan tražiti šećer od trske, ako ga nemaš, kupiš običan šećer. Onda kupiš kruh, pogaču bijelog i crnog. Ako nema crne, kupite sivu ... ”Iznenadit ćete se, ali ovakve upute su čisto programiranje. Štoviše, možete ih napisati na stranim jezicima. Ili možete, koristeći sintaksu programskog jezika na isti način kao stranog. I drugi će programer moći razumjeti što je napisano.

Za one koji ne vjeruju, pogledajmo jednostavnu logiku implementiranu u stotine programa. “Zatražite broj redaka odabranih u tablici. Ako je količina veća od nule, aktivirajte gumb "Primijeni". Inače pasivno ... ”Ovaj algoritam možete napisati i na prirodnom materinjem ili stranom jeziku ili na programskom jeziku.
I vi ćete se iznenaditi, ali prevođenje algoritama s prirodnog jezika u programski jezik najčešći je posao. Kada programer dobije zadatak da implementira jasnu logiku koju su izmislili drugi. Suprotno tome, također je potreban prijevod programirane logike na prirodni jezik. Kad ti "drugi" trebaju opisati kako točno program radi. Da, tako je, C ++, PHP i drugi programski jezici mogu se percipirati kao posebni strani. Matematika je također ponekad potrebna, ali u pravilu pri obavljanju nekih visokospecijaliziranih zadataka s kojima se možda nikada nećete susresti. Možete početi bez ikakve matematičke pozadine.

Programiranje je zasebna grana znanosti. To je na neki način povezano s matematikom. Ali može se povezati i s lingvistikom. Svakako su neke tehnologije programiranja povezane s nečim drugim. Stoga je nemoguće tako jednostavno reći hoćete li uspjeti ili ne.

1.3 Tri etape na putu do profesije

Sada kada ste dovoljno umorni od svih vrsta gluposti gotovo programera i malo iznenađujućih činjenica, vrijeme je da prijeđete izravno na učenje. Vaš profesionalni razvoj trebao bi se odvijati u tri faze:

1) Probni rok. Trebali biste isprobati ovu aktivnost.
Činjenica je da je za svladavanje struke potrebno šest mjeseci ili čak godinu dana učenja. I morate što prije shvatiti možete li ili ne. Trebate li uložiti svoje vrijeme, pa čak i novac. Ili čeka razočaranje.

U tom razdoblju potrebno je savladati 2-3 tehnologije stvarnog programiranja. Ali ne bi trebalo dugo da ih svladaju. Ako to možete, ima smisla potrošiti obećanih šest mjeseci ili godinu dana na sljedeću fazu.

2) Samostalno učenje.
Ako ste prošli prethodnu fazu, možete uložiti svoje vrijeme u ovladavanje strukom.

3) Pripravnički staž.
Vaš prvi posao i prvi novac.

2 Probni rok

2.1 Što učiniti?!

Zapravo, postoji samo jedan način da saznate možete li ili ne. “Da biste počeli programirati, morate početi programirati. A da biste počeli programirati, morate početi programirati!"

Mnogi ljudi programiranje smatraju teškim zanimanjem, morate puno znati da biste radili kao programer. I to je istina. Da je lako, ne bi im bile isplaćene tako velike plaće. No, s druge strane, mnogo je knjiga u javnom vlasništvu. Štoviše, većina ih je visoke kvalitete. Profesionalci iz velikih tvrtki obično pišu velike knjige ili članke u kojima drugima opisuju svoje neprocjenjivo iskustvo. Čudni ljudi, naravno. Umjesto da za svoj rad dobiju velike novce, bave se pisanjem knjiga za koje plaćaju manje, ili čak ništa. O tim "neobičnostima" bit će riječi kasnije. I sada moramo jasno naučiti, u ovoj profesiji ima vrlo malo tajni. Većina pitanja rješava se pretraživanjem interneta. Stoga, unatoč složenosti, programiranje je jedno od najpristupačnijih zanimanja.

Tijekom probnog razdoblja morate odlučiti o tehnologijama na kojima ćete početi. Ne bi trebali biti previše komplicirani i dugotrajni za učenje. Ali, s druge strane, moraju biti tražene na tržištu kako se i tih par tjedana ili mjesec dana utrošenih na njih ne bi protraćilo.

Osobno, moje mišljenje bi trebalo biti sljedeće:

2.1.1 HTML
Vrlo jednostavan programski jezik. Točnije rečeno, ovo čak nije ni programski jezik na koji su svi navikli. Proceduralno i objektno orijentirano, poput C++, PHP, Ruby, itd. Na njemu je nemoguće napisati "što raditi u trgovini". To je jezik za označavanje na koji ćete naići na bilo kojoj web stranici. Upute ovog jezika izgledaju otprilike ovako: "Ovaj odlomak bi trebao imati kurziv font", "Prikaži sliku ovdje picture.png", "Veličina fonta ovog dijela teksta je 12 bodova. Boja je crvena."

To je vrlo koristan jezik za početnike. Čak i ako se ne bavite web razvojem, ovo znanje će vam biti korisno. Predviđeno vrijeme razvoja, 2-5 dana. Međutim, nije potrebno pamtiti opsežne referentne podatke. Dovoljno je naučiti koristiti te iste priručnike. Među programerima se HTML ne smatra ništa ozbiljnim ili teškim. Ali nepoznavanje osnova HTML-a, što možete priznati samo najbližim ljudima. Poslodavci i kolege će vas doživjeti kao mentalno retardirane.

Dok učite HTML, stalno ćete nailaziti na reference na CSS tehnologiju. Istraživanje u ovoj fazi nije potrebno. No, ako se zanesete s CSS-om, ovo znanje neće biti suvišno.

2.1.2 JavaScript

Ovo je već "pravi" programski jezik. Njegovo proučavanje usko je povezano s HTML-om. Tu vas čekaju prve prave poteškoće. Iako postoji ogromna raznolikost udžbenika, video tutoriala i svih vrsta stranica u jezičnom smislu, gdje je sve prožvakano do najsitnijih detalja. Ovo će biti pravi test.

Sigurno netko želi početi učiti C, Python, pa čak i Haskell. Ali čak i ako ćete postati sistemski programer. Najvjerojatnije ćete prije ili kasnije naići na HTML i JS.

Jedan od razloga za odabir JS-a kao prvog programskog jezika je njegova primjenjivost u raznim područjima. Počevši od logike web stranica na strani klijenta. Završimo s QML jezikom nalik na JS, gdje nas programeri Qt frameworka vuku za uši.

Ako programer početnik ne zna jednostavne stvari, nema velike razlike odakle početi. Predložene tehnologije ne zahtijevaju velika i teška okruženja za razvoj i izvršavanje. Za njih postoji mnogo udžbenika i priručnika na ruskom jeziku. Ne morate se zbuniti s adresnom aritmetikom i sličnim specifičnostima. Vaš zadatak je naučiti kako napraviti osnovne logičke konstrukcije kao što su petlje, grane itd.

Svaki tutorial sadrži vježbe. I u početnoj fazi trebali biste raditi ove vježbe. Što veće, to bolje!

Međutim, postoje dvije male kategorije ljudi koji JS mogu zamijeniti nečim drugim:

1) Oni koji imaju dobre mentore u drugim programskim tehnologijama.
Na primjer, brat / provodadžija koji radi kao sistemski programer C. I on je spreman pomoći vam. U ovom slučaju, C može biti poželjniji. Ali koliko ja znam, oko 30% programera su WEB programeri. Stoga će JS vjerojatno biti pravi izbor.

2) Ljudi kojima je trenutno potreban neki drugi jezik za rad. Administratori sustava su obično SQL i bash.

U slučaju SQL-a, ne bih si laskao. Ovo je također "lažni" jezik. Složenost između HTML-a i JS-a. To će se najvjerojatnije u svakom slučaju morati naučiti svakoga. Ali s vremenom bih vam savjetovao da ipak isprobate nešto poput JS-a koji podržava proceduralne i OOP paradigme. Još uvijek postoji plus u učenju SQL-a. Ako to ne svladate, nema smisla nastaviti.

Ali s bash-om je drugačije. Čuo sam da JS omogućuje zamjenu basha putem modula u node.js. Dakle, ako trebate pisati skripte od nule, JS će biti zanimljiviji. Ako ispraviš ono što je prije tebe napisano, onda nema drugog izbora. Baš kao i kod SQL-a, JS će ostati na vašem redu.

2.2 Vodiči

Vrlo važno pitanje je koje tutorijale koristiti. Ovdje su opcije u u redu koja bi ih trebala proći.
  1. Video lekcije. Ima ih puno na bilo koju temu. Youtube će definitivno izdati popise za reprodukciju koristeći bilo koju popularnu tehnologiju. Čak i na ruskom. Tu je sve jasno, i počnite klesati svoj prvi "Hello, world!" potrebno je od njih. Postoji samo jedan nedostatak. Možda ne pokrivaju sve dubine ciljanog jezika. Ali i bez toga ćete imati dovoljno problema.
  2. Multimedijalni udžbenici. Najvjerojatnije su to zbirke video tutorijala plus nešto drugo. Često se prodaju za novac.
  3. knjige. Najteže za percipirati. Oni samo pokrivaju više zamršenosti raznih tehnologija. Ostavite za kasnije. Kada iscrpite mogućnosti prethodnih opcija.
Ali molim vas, u nastavku. Ne morate kupovati nikakve tečajeve i plaćati čudesne udžbenike. Sva "čuda" postoje već odavno, najviše na torrentima. Po mom mišljenju, rutrracker, zabranjen u Rusiji, sadrži najbolju kolekciju multimedijskih udžbenika i knjiga.

2.3 Rješavanje tehničkih problema

Snagom volje i strpljenjem, herojski ste započeli proučavanje ove teme. I pred vama su se počeli javljati svakakvi tehnički problemi. Sve možete učiniti prema uputama. Ali vaši primjeri možda neće raditi. Makar samo zato što se upute mogu napisati za prethodne verzije softverskih alata. Najteži korak može biti s prvim pokretanjem izvornog koda, koji ste upravo prepisali iz tutoriala.

Najčešće pogreške vezane su za to što početnici imaju tendenciju žuriti i neke stvari smatraju neobaveznim. Vi, kao i svaka normalna osoba, mislite da u knjigama o programiranju postoje sporedne točke. Vjerojatno želite brzo dobiti rezultat, u obliku pripravničkog mjesta. A onda ćete, okruženi kompetentnim kolegama, sve razumjeti i temeljito proučiti. Dakle, "neki vodič" o JavaScriptu koji vam neće biti ni primarni jezik. Može se percipirati kao maratonska distanca koju treba što brže prebroditi. Zapravo, na svaki udžbenik programiranja treba gledati kao na polje koje treba orati. Svatko tko preskoči male stvari na kraju se suočava s nerješivim problemima. I umjesto u društvu kompetentnih kolega, bit će potpuno sami u iznova proučavanju gradiva.

Na primjer, sjećate li se slabo sekundarnog pojma? I nakon nekoliko dana tumač koda ili prevodilac će vam dati opsežan izlaz greške. U kojem će biti na desetke pojmova, kako onih koji su se ranije susreli u udžbeniku, tako i onih koji se nisu susreli. A greška koju prepoznajete može biti ključna. Nakon što ga popravite, svi ostali će magično nestati. Većina razloga za napuštanje školovanja u početnoj fazi vezana je upravo za analizu pogrešaka tumača ili prevoditelja.

Mislite li da je detaljan opis korištenja navodnika s aritmetičkim operacijama neka luda glupost koju nikada nećete koristiti? Možda nećete biti. Ali autor to smatra jednostavnim. Stoga će se dalje u udžbeniku posvuda naći dodavanje znakova sa i bez navodnika. Ali čak i ako odlučite da je bolje uzeti udžbenik na nekom drugom programskom jeziku u koji polažete velike nade. I on će vas mučiti recima poput "5" + 3. Štoviše, istim "glupim" opširnim objašnjenjima.

Nerješivi problemi dio su života svakog programera. I koliko god marljivo sve radili, nećete im pobjeći. Osobno, iako imam 5 godina iskustva, gledam i knjige o nečem nejasnom i složenom. I također ponekad pomislim: “To je još uvijek neka glupost. Kako ću ja to odlučiti?!" I potpuno isti kao i tvoj. Za mene puno ovisi o rješenju problema koji se čine potpuno slijepim.

Ako imate problema s kojima se možete obratiti forumu ili tematskoj grupi društvene mreže, onda je s mojim problemima beskorisno.

Zapravo, postoji poseban algoritam za njihovo rješavanje:

1) Moramo dobro razmisliti o razlozima. Raščlanjivanje poruka prevoditelja, runtimea ili interpretera (JavaScript) povezanih s greškom. Trebali biste dobro razumjeti da vam računalo govori o problemu. Ako ne razumijete, potražite tekst ili kôd pogreške na internetu. Vrlo često se nađu objašnjenja, ali na engleskom. Čak se i nakon prijevoda malo toga može razumjeti. Ali morate se jako potruditi. Nije zapravo samo situacija u kojoj rješavate konkretan problem. Ovo je situacija u kojoj dobivate nova iskustva. Ništa manje važno od znanja iz udžbenika. Uz to se provodi analiza potencijalno problematičnog koda. Ako ste odnekud prepisali ili kopirali kod, morate ga temeljito razumjeti.
Ako vam se u sat i pol-dva činilo da ste sve istražili i razumjeli. Ali nisu našli rješenje. Stoga moramo ostaviti problem za sutra. Čak i ako ima više ideja.

2) Učinite nešto drugo što ne ovisi o vašem problemu i ispadne. Možete čak nastaviti proučavati svoj trenutni vodič. Iznenadit ćete se, ali s vremenom će se pojaviti ideje kako riješiti problem. Ako nisu posve jasni. Ne preporučuje se odmah žuriti s rješenjem. Bolje je zapisati i ostaviti za sutra.

3) Sljedeći ili bilo koji drugi dan. Iskušavamo sve nove ideje kako bismo riješili problem. Ponavljamo prvu fazu.

4) Ako je i dalje sve loše, pripremamo pitanje za mentora ili za forum. Morate biti jasni o tome što ste htjeli učiniti. I koji je tvoj kod. Tražiti da umjesto vas sredite kod koji se niste ni potrudili dobro proučiti je potpuno nepoštovanje.

U pravilu, to je dovoljno za rješavanje bilo kojeg problema.

2.4 Rad s mentorima

Mali skup pravila za rad s raznim iskusnim stručnjacima, mentorima, mentorima itd.
  • Prije nego što pitate, morate pokušati sami pronaći rješenje.
  • Pokušajte pitati samo ono što nije opisano u knjigama, dokumentaciji i internetu. U suprotnom ćete biti poslani tamo.
  • Ako ste negdje poslani, trebali biste otići tamo. Inače će mentor sam otići tamo i pronaći rješenje. To će uvelike pokvariti njegovo mišljenje o vama.
  • Kako mentor ne bi satima stajao za vašim stolom i pazio na svaki vaš korak, trebate grupirati pitanja. Pitajte ih "na veliko", puno se nakupilo u jednom trenutku. A ne kako nastaje.
  • Najbolje je postavljati pitanja kada je vaše kretanje naprijed blokirano. Ako osim toga treba još nešto učiniti, učini to. Također može izazvati pitanja. Koje je bolje pitati zajedno.

3 Samostalno učenje

Stanite na svoje mjesto! Knjige su već pred vašim drugovima. Uzmi svoju haljinu i pobrini se za svoje sandale. Marljivo čitajte knjigu. Ne provodite dan besposleno, inače jao tijelu! Pišite rukom, čitajte ustima, tražite savjet od nekoga tko zna više od vas.

Ne provodite dane besposleno, inače ćete dobiti batine, jer dječaku je uho na leđima, a on sluša kad ga tuku.

Ne budi čovjek bez razuma, bez obrazovanja! I noću te poučavaju, a danju te odgajaju, ali ne slušaš nikakve upute i radiš ono što si planirao. I lavovi su dresirani, i konji pripitomljeni – i samo ti! Ne poznaju vas kao što ste u cijeloj zemlji. Zabilježite to sebi!

Kažu mi da napuštaš učenje, prepuštaš se užicima, lutaš od ulice do ulice, gdje miriše na pivo. A pivo zavodi ljude, uznemiruje ti dušu. Ti si kao molitvena kuća bez svoga boga, kao kuća bez kruha. Naučeni ste pjevati uz flautu. Sjediš pred djevojkom i namazan si tamjanom. Tvoj vijenac od cvijeća visi ti oko vrata.

Vezat ću ti noge ako lutaš ulicama i budeš tučen bičem poskoka!
Upute pisaru. Drevni Egipt

Nakon savladavanja osnova JavaScripta. Već imate dobru ideju o tome što znači pisati programski kod.

I spremni ste provesti šest mjeseci ili godinu dana svladavajući struku. I ono što je važno, to je za vas pitanje vremena.

3.1 Što naučiti?

Svi ljudi koji nastoje ovladati profesijom mogu se podijeliti u dvije kategorije: amateri i profesionalci.

Ljubavnici, ljudi koji vole ovu aktivnost. I spremni su to učiniti čak i besplatno. Žrtvovanje vremena koje se može utrošiti na zabavu, opuštanje itd. Otkad ste to isprobali, savršeno dobro znate volite li programirati ili ne. Amateri imaju jednu jako dobru kvalitetu. Ne treba ih motivirati. Radit će vrijedno, savjesno i sa zadovoljstvom primati nova znanja. Zatim će s istim zadovoljstvom podijeliti ovo znanje s kolegama i prijateljima. Ali većina amatera među amaterima pišu članke, pa čak i cijele knjige o svojim iskustvima.

Profesionalci spremni su to učiniti samo za novac. Ili zbog mogućnosti da ih dobijete. Profesionalci moraju biti motivirani. I gotovo uvijek se zaustavljaju u svom razvoju čim dobiju dobar posao. Čak i povećanje plaće. dva puta im možda neće biti dovoljan razlog za nastavak studija. U pravilu su samo amateri prikladni za napredni trening.

Naravno, rijetki su čisti profesionalci i amateri. Neki ljudi vole pola ili četvrtinu posla. Netko, nakon što je isprobao različite tehnologije, pronađe nešto po svom ukusu.

Recimo da je programer radio za sebe za novac. Imao je priliku nekako otići do kupca, razjasniti zahtjeve s izravnim korisnicima. I programer je razumio. Posjet računovođama puno je zanimljiviji od pisanja koda. Kao rezultat toga, programer će voziti za cijeli tim. Čak i nakon radnog vremena. Postupno se prekvalifikacija za sistemskog analitičara ili voditelja projekta.

Ali u osnovi, oni isprobavaju različite tehnologije. Neki od njih zadivljuju, a neki ne. Čak i ista tehnologija može prvo osvojiti, a nakon godinu dana dosaditi.

Vrlo je važno da svaka osoba shvati kakvu aktivnost više voli. Jer udobnost života jako ovisi o tome. Uobičajena je zabluda da se radi samo za zarađivanje novca. Iako je ovo ogroman i najbolji dio života. Na poslu možete biti kreativni, komunicirati i još mnogo toga. Odete li na nevoljeni posao zbog novca, morat ćete to nekako nadoknaditi zabavom, odmorom. Kao rezultat toga, možda neće biti dovoljno novca ni za odštetu.

Najplaćeniji profesionalci su iskusni amateri. Oni također najviše uživaju u poslu i životu. Stoga u ovoj fazi morate odlučiti što vam se najviše sviđa.

Tehnologija (programski jezik koji ćete naučiti) mora biti komercijalno dostupna. Iz TOP 10 popularnih jezika. U suprotnom nećete moći dobiti novac za svoj rad. To znači da ne možete postati programer. Morat ćete zaraditi zasebno, programirati zasebno. Što je, naravno, nemoguće.

Pred vama je još pripravnički staž. I rado primaju praksu samo u oskudnim specijalitetima. Pogotovo na daljinu. Stoga razmislite / odlučite čemu želite posvetiti svoj život. Što ćete studirati u ovoj fazi. JavaScript se može nastaviti. Možete probati nešto drugo. Nitko se ne trudi promijeniti mišljenje nasred ceste. Već ste se testirali i postoji određeno polje za eksperimentiranje.

Jedina iznimka koju bih napravio je za C++. To je težak jezik. Vjerojatno je potrebno dvostruko duže da se svlada. Nego samo C ili JS. U tom slučaju plaća će biti veća za najviše 20%. C ++ je jezik C++ hobista.

Ako vam se ne sviđa JS, a osjećate se kao gore opisani "profesionalac", Java je vjerojatno najbolji izbor. Jednom nisam mogao niti pokrenuti program napisan na ovom jeziku (jar arhiva). No, s druge strane, Java programeri u suradnji s Oracleom (PL \ SQL) iz velikih korporacija vjerojatno su najplaćeniji programeri u IT-u. Unatoč činjenici da se radi o tehnologijama srednje složenosti. (Pretpostavljam da u svijetu Jave plaćaju samo za mogućnost pokretanja jar datoteka.)

Tu je i prekrasan jezik Python. Bit će vrlo korisno svim vrstama matematičara, statističara, jer otvara im vrata u svijet znanosti o podacima. S druge strane, to je jezik za web razvoj za sve ostale.

Studije u ovoj fazi imaju za cilj podizanje njihove kvalifikacije do maksimuma. Zapravo, povećat ćete tržišnu vrijednost svog rada. Budite uvjereni da će se sve što izgubite kroz programiranje u ovoj fazi višestruko vratiti.

Samostalno učenje ima prednost u odnosu na praksu. Možete dobiti više temeljnih znanja. Zapravo, većina programera su profesionalci. Malo su naučili. Moramo raditi. I iskorištavaju svoje malo znanje. Većina onoga što čitaju su mali članci o tome kako nešto brzo skuhati. Ili prešuti svaki problem. Stvarno im nedostaje temeljno znanje. Iznenadit ćete se, ali nije sve moguće
"Google". Nešto što u početku morate znati i moći. Pa makar samo zato što se morate nositi s onim što "guglate". Kod koji nađete može napisati vrlo dobra osoba. Uz nedostatak temeljnog znanja, jednostavno ga nećete razumjeti.

Trebali biste za sebe odabrati veliku, temeljnu knjigu o programskom jeziku. I proučite ga do kraja. Zajedno sa svim studijskim zadacima.

Dovršavanje obrazovnih zadataka u ovoj fazi je težak, tužan zadatak! Bit će vam dosadno, nezanimljivo, htjet ćete se odreći svega. Većina to čini. Motivirajte se, smislite zanimljive zadatke, nastavite učiti. I nećete biti ta većina.

Osim glavnog programskog jezika poput C, Java, JS itd., morate naučiti sljedeće:

Engleski jezik
Kao što znate, programeri su ljudi koji znaju čitati engleski, ali ne govore. To je jezik na kojem ćete tražiti rješenja za svoje probleme, komunicirati s kupcima. Konverzacijski engleski uvelike proširuje raspon traženja posla. Ovo je jako dobro za plaću. Iako se na to, doduše, može potrošiti koliko i na programski jezik.

Tehnički engleski, lakši za učenje. Samo prevedite materijale koji su vam potrebni u raznim prevoditeljima. Zapamtite nepoznate riječi.

SQL
U većini slučajeva ova tehnologija će vam trebati prije ili kasnije. Nije potrebno učiti PL \ SQL dodatke (osim učenja Jave). Ali vrlo je poželjno svladati stvaranje tablica, spojeva i spojeva. Najkorisnije će, možda, biti studija na primjeru PostgreSQL-a.

SQL ima još jedan aspekt. Ovaj jezik je možda najteže pitati kada zapošljavate testera. Stoga, ako ga samo naučite, postoji šansa da se zaposlite vrlo blizu programiranja. U takvom poslu bit će malo lakše naučiti samo programiranje. I vrlo lako ćete biti prebačeni s testera na programere. Jednom kada pokažete da možete napisati dobar kod.

Ovladajte "slijepom" desetprstnom metodom tipkanja po tipkovnici
Ima puno toga za tiskati. Stoga, svakako svladajte. Na webu ima dovoljno besplatnih online simulatora. Možete ga pokušati svladati prije prve, "testne" faze. Ako nemate strpljenja ni za ovo, nema smisla ići dalje.

Sustavi kontrole verzija
Ovo će naravno biti Git. Svakako naučite osnove i isprobajte ih na svojim projektima učenja. Ali zadnje, ali ne i najmanje važno. U početku će biti teško razumjeti što je to, koje prednosti daje.

Ovi predmeti su dobri jer vam omogućuju da idete ukorak sa svojim učenjem. Čak i kad zaglavi s učenjem glavnog jezika. Vjerojatno ćete imati opisane “nerješive” probleme. Prebacite se ovdje i polako tražite rješenje.

3.2 Uobičajeni načini stjecanja znanja

Sveučilište
Mogu vam puno reći o visokom obrazovanju. Ali ovo nema praktičnog značenja. Ukratko. Bolje je biti pripravnik nakon godinu dana samostalnog studija nego nakon četiri godine pohađanja sveučilišta. Oni koji počnu studirati prema mojim preporukama sada, za 4 godine, provodit će tehničke testove pri zapošljavanju onih koji sada upisuju fakultete.

Plaćeni tečajevi obuke programera
Ovdje je sve vrlo komplicirano. Potražnja stvara ponudu. Ali ova ponuda je često vrlo nekvalitetna. Možete probati bilo koji od njih. Ali molim te, nemoj se nadati. Pokušajte uzeti prve lekcije besplatno. I bježi odande ako ništa ne razumiješ u razredu. Niti jedan od brendova pod kojima su ovi tečajevi napravljeni neće doprinijeti vašem razumijevanju teme. "Garancija zaposlenja" tamo je u pravilu prijevara.

Tečajevi i škole koje vode velike tvrtke za svoje buduće zaposlenike
Najpoznatiji slučaj, možda, je "Škola analize podataka" Yandexa.

Ovdje će vas podučavati stvarno skupi stručnjaci. I to će učiniti za svoje unutarnje potrebe. Takvi tečajevi u pravilu imaju nekakve zahtjeve za kandidate. Yandex je zahtijevao matematičku obuku. EPAM je zahtijevao osnovno znanje programiranja. Jednostavno ne možete stići tamo. Ali ako postoji prilika za pohađanje ovih tečajeva, tamo se svakako isplati truditi! Čak i ako ostanete u "ropstvu" kod ovih tvrtki za nekih 400-500$ mjesečno cijelu godinu. Veliki plus takvih tečajeva. Ne zahtijevaju nikakvo obrazovanje.

3.3 Strategija učenja

Većina učenika očekuje da će naučiti programiranje samo učeći. Kao da sam sjeo za udžbenik koji nije znao predmet, ali sam ga završio s predavanjem i počeo sve razumjeti. Cijeli proces je linearan za početnike. Krećući se od poglavlja do poglavlja, prolazeći obrazovne zadatke, osoba stječe znanje. Ljudi ne predstavljaju druge modele. Jer nikad nismo radili složene i dugotrajne projekte. Ali u stvarnosti, sve nije tako jednostavno. Svaki programer zna da se tijekom projekta neizbježno otkrivaju novi detalji koji ometaju ili, naprotiv, pomažu u njegovoj provedbi. U pravilu, što je projekt veći, to manje podsjeća na ono što je izvorno zamišljeno.

Jednostavan primjer. Naručili ste odijelo u krojačkoj radnji. Dogovorili smo sve detalje. Tjedan dana kasnije zove se majstor s vijestima, dogovoreni oblik šavova izgleda jako loše na odijelu, mora se promijeniti. Tada se ispostavlja da dio materijala treba promijeniti. Nema potrebe. Mijenjaš se i mijenjaš. Na kraju dobijete oko 2/3 onoga što ste prvobitno namjeravali. U slučaju razvoja softvera. U projektu poslovnog odijela možete dobiti kupaći kostim. I za cijenu odijela. Ako mislite da je to nevjerojatno, pitajte nakon toga pametnog voditelja projekta. U međuvremenu, jednu stvar morate naučiti, u vašem će studijskom projektu biti mnogo neočekivanih stvari. I morate se moći nositi s tim iznenađenjima.

Ako ne ulazite u džunglu upravljanja projektima, ne biste se trebali razvijati u IT-u linearno, kao što je opisano na početku. I to "u spiralu". Izgleda otprilike ovako. Ako ne poznajete dobro računalo. Ne morate misliti da ćete za godinu dana biti C ++ ili PHP programer. Prvo, proučavate računalo. Otvaraju vam se nove mogućnosti i prepreke. Na primjer, postali su svjesniji onoga što na kraju želite učiniti, web stranice ili desktop aplikacije. Zatim, tijekom probnog razdoblja, pokušat ćete programirati za web (html, js). Naučit ćete još više o programiranju. Nakon probnog razdoblja, već možete pogoditi svoj glavni smjer. Koji jezik ćete naučiti. Netko na samom početku putovanja možda nije sumnjao u programiranje sustava. Da postoji zasebno područje gdje programeri pišu programe nevidljive prosječnom korisniku. A možda će vam to biti zanimljivije od onoga o čemu ste sanjali na početku.

U procesu učenja svakako će biti čitanja udžbenika i rješavanja problema odatle. Ali sam slijed i redoslijed polaganja udžbenika moraju se pokoravati "spiralnom" ciklusu. Tako da svaka faza predstavlja dobar temelj za sljedeću.

Morate biti svoj vlastiti menadžer i plan ostvarivo ciljevi, faze. Upravo sada mnogi mladi ljudi sanjaju kako će biti kreatori vrhunske web stranice ili operativnog sustava. A netko želi napisati kalkulator i s njim dobiti poziciju za pripravništvo. Nadam se da možete pogoditi tko će biti uspješan programer za godinu dana. Vrlo je važno da vaši projekti i ideje imaju svoju uspješnu implementaciju. Ptica u ruci vrijedi dva u grmu.

Osim toga, "menadžerske" kvalitete vrlo su korisne za one koji sebe smatraju "glupima". U IT-u je vrlo lako biti pametan i jako teško naprotiv. Pametan može lako uzeti udžbenik, pročitati ga i odmah učiniti nešto korisno. Oni koji su glupi čitat će isti udžbenik i ništa ne razumiju. Dakle, morate razbiti materijal za obuku na dijelove i trenirati više (pisati kod) na temelju tih dijelova. Materijal možete rastaviti na dijelove tako da ga svatko može dobiti. Za one koji znaju planirati svoj obrazovni proces i rješavati "nerješive probleme" (2.3) ne postoje nepremostive prepreke. Savladat ćete apsolutno sve, bez obzira na inteligenciju. Neka potraje znatno duže. Ali puno vam je važnije imati holističko i provjereno znanje/iskustvo od brzine njihovog stjecanja.

Naravno, bit će vam vrlo teško razumjeti i, što je najvažnije, takav model primijeniti u praksi. Ali oni koji uspiju imat će lijep bonus u vidu mogućnosti da postanu "projektni menadžer". Ako sada samo želite dobiti plaću programera, onda ćete toliko htjeti plaću projekt menadžera da nećete moći spavati. Ovdje je samo jedan minus. Ipak, prvo morate postati dobar programer.

3.4 Kada tražiti posao

Vrlo je teško reći kada tražiti svoj prvi posao u ovoj specijalnosti. Zapravo, možete započeti traženje posla odmah nakon prve faze. Sumnjam da će mnogi. Ako ste mlađi od 23 - 25 godina i živite u dobro razvijenoj industriji razvoja softvera, možete to učiniti. Možda niste dobar profesionalac. Ali sigurno ćete zaraditi za život.

Na drugoj strani. Postoje ljudi koji žive tamo gdje se nitko ne bavi razvojem softvera. A ima ljudi koji imaju i više od 25 godina. Takvi bi ljudi trebali duže učiti. Pretvoriti se iz niskokvalificiranog u visokokvalificiranog. Kako bi u svoje redove ubacio visokokvalificirane programere, poslodavac je spreman na mnogo. Možda će vam biti ponuđena pomoć pri preseljenju. Ili čak i rad na daljinu. Dob u vašim 30-im ili 40-im neće biti bitne. Glavna stvar je pokazati svoju visoku razinu iskustva.

Ima smisla započeti traženje posla što je prije moguće ako već radite na poslu s velikim opterećenjem. Gdje ne čitate knjige o programiranju. U ovom slučaju vam je svejedno nakon kojeg posla navečer učite predmet. Trenutni pripravnik ili pripravnik nakon posla.

Rane pretrage imaju veliki nedostatak. Poslodavac će nakon razgovora imati mišljenje o vama. Što ne želite mijenjati s vremenom, ako ste jednom pokazali nisku razinu znanja. Za šest mjeseci, kada znate puno više, vaš životopis možda neće biti ni razmatran. Jer mišljenje o vama će ostati isto. Ostaje se samo nadati da će prvi intervju na kraju biti zaboravljen. Ali ovo je najmanje šest mjeseci. Moguće je da poslodavac vodi bazu podataka kandidata. Da ih ne bi dvaput intervjuirao. U ovom slučaju, sve će biti vrlo tužno.

3.5 "Što trebam znati da bih se zaposlio kao junior?"

Novopridošlice često postavljaju ovo pitanje. Nema definitivnog odgovora. Na ovo pitanje može odgovoriti samo određeni poslodavac u određenom trenutku. Nemoguće je u svakom trenutku biti odgovoran za cijelo tržište rada. Vaše šanse da dobijete posao kao “junior” ili, kako ja kažem, “pripravnik”, variraju tijekom vremena, ovisno o nekoliko procesa i čimbenika.

Vaš proces samostalnog učenja čini vas privlačnijim poslodavcima. U ovom trenutku pojavljuju se slobodna radna mjesta prikladna za vas. Usko povezan s programskim jezikom koji učite. Tamo šaljete svoj životopis. A poslodavac među ispitanicima bira najprikladnijeg kandidata. Kvalifikacije kandidata odozgo su ograničene plaćom radnog mjesta. Možda ćete biti najbolji za ovu plaću. Ili možda ne. Dakle, s vremenom se uči i postaje skuplji. A u jednom trenutku, svejedno, bit ćete najbolji od svih koji su se odazvali.

Tu je i faktor dobi kandidata. Što malo umanjuje vašu privlačnost. Što je dob veća, to je pad veći. Postoji faktor dobrog portfelja koji povećava. Iskustvo, preporuke i još mnogo toga.

Možda vrijedite puno kao C++ programer, ali vrlo malo kao PHP programer.
Najviše "besplatan" faktor je vaša popularnost kod poslodavaca. Kad ste poznati više poslodavaca. Više šanse da ćete biti odvedeni negdje.

"Strpljenje i rad će sve samljeti!" Kontinuirano samoobrazovanje vaša je garancija za dobivanje posla!

4 Prvi posao pripravnika

4.1 Kako potražiti svoj prvi posao?

4.1.1 Portfelj

Prvo napišite portfelj. To bi trebao biti mali program ili skripta za stranicu koja obavlja posao koji izgleda korisno. Zadatak mora biti jasan vašem potencijalnom poslodavcu. Na primjer, adresar. Ako napravite kalkulator za izračun putanja Zemljinih satelita, sigurno će biti cool. Ali vaš budući poslodavac teško da je u toj temi. Stoga neće moći ocijeniti rezultat. Poželjno je da program nekako pohranjuje postavke i korisničke podatke. Trebao bi postojati neki mali i koherentni dio koda. Na primjer, ako svoju zakrpu pošaljete nekom besplatnom projektu, poslodavac je možda previše lijen da se udubi u izvorni kod cijelog projekta. I procijenite što ste tamo promijenili u ovom kontekstu. Dobro je ako će aplikacija koristiti SQL bazu podataka tamo gdje ima smisla.

I ono najvažnije, naravno. Kako će biti napisano. To bi trebao biti dobro formatiran i strukturiran kod. Budite spremni, poslodavac će uzeti redak iz ovog koda i unijeti ga u tražilicu.

Da bi kod u portfelju bio dobar, potrebno ga je pustiti da "odmara" tjedan dana. Oni. napiši i ostavi na tjedan dana. Zatim revidirajte cijeli kod. Nakon što popravite greške, uploadajte ga na neku privremenu loptu i napravite temu na forumu sa zahtjevom da vidite izvorni kod iskusnijih programera. Uz obaveznu naznaku da je ovo vaš portfelj.

Nakon što popravite greške na koje će vam se ukazati. Možda će to čak biti i globalna prerada vašeg rada. Prenesite kod na jedan od hostinga izvornog koda. Izbrišite temu u kojoj vam je rečeno o vašim greškama. Budući poslodavac ne mora znati za greške.

U konačnici, vrlo je važno razumjeti svaki redak koji napišete. Najvjerojatnije će vas vući okolo i postavljati razna škakljiva pitanja.

Vjerujte mi, stvaranje portfelja i pregleda koda (code review) od strane iskusnijih kolega će dodati +30% vašem iskustvu. Također vam omogućuje da adekvatno procijenite svoje trenutne kvalifikacije. Vaš kod sigurno neće biti savršen. Pripremite se, tamo će pronaći greške (besplatno!) Još uvijek je pola nevolje. Ali kada ne znate zašto ste kod napisali ovako, a ne na neki drugi način, prava nevolja. To znači da jednostavno niste vi napisali kod! U tom slučaju krenut će sa željom da se za šest mjeseci vrate sa svojom šifrom.

4.1.2 Sažetak

Općenito, životopis može puno reći o osobi. Na primjer, loše strukturiran životopis. Najvjerojatnije će ga napisati programer koji ne mari puno za strukturu izvornog koda.
Odjeljak kopiran s mreže, na primjer, "Profesionalne kvalitete". Kaže da je kandidat sklon lagati. Nedostatak postignuća, koji se ne pamte ni na razgovoru, govori da je osoba "profesionalna". I mnogo više.

Bila je jednom smiješna priča. Obvezao se kritizirati životopis jednog kolege. Nalazi su bili razočaravajući. Kažem: “Imaš tako loš životopis da bih te zaposlio! Ti si dobar stručnjak. Ali sa svojim životopisom nećete naći dobar posao. Stoga se možete zadržati na maloj plaći. A ti ne ideš nikamo!"

Da se to ne dogodi. Također je poželjno dati životopis stručnjacima za ljudske resurse i programerima na evaluaciju.

Naravno, nema potrebe lagati ili iznositi sumnjive činjenice u životopisu. Vrlo pažljivo će ga čitati ljudi s velikim životnim iskustvom. Svaki pokušaj da se nešto sakrije ili uljepša smatrat će se izrazito negativnim.

Bolje je imati skroman životopis. Ali svakako odgovorite za bilo koju riječ u njemu.
Ako ste već stekli neko radno iskustvo i imate se čime pohvaliti. Možete dodati odjeljak "Portfolio" na samom kraju. Detaljno opišite projekte u kojima ste sudjelovali. Zanimljiva tehnička rješenja, postignuća (detaljno). Najmanje 10 stranica. Ali upravo na kraju.
Obavezno naznačite da ste spremni za preseljenje (selidbu) i poslovna putovanja.
Popunjeni profil na LinkedInu, HeadHunteru i drugim stranicama za traženje posla također će vam pomoći.

4.1.3 Traženje posla

Sada na zabavni dio.
Morate jasno razumjeti, pripravnici i neiskusni programeri rijetko su ikome potrebni. Poslodavci traže prvenstveno iskusne. Ali njihove plaće im ne dopuštaju uvijek da zaposle prave ljude. Stoga će se vaš životopis s nula iskustva prije ili kasnije uzeti u obzir. A kod iz vašeg portfelja će u tome puno pomoći.

Stoga biste trebali poslati životopis na sva slobodna radna mjesta koja odgovaraju vašem profilu. Na primjer, proučavali smo JavaScript. Pošaljite svoj životopis gdje god je potreban ovaj JavaScript. Unatoč minimalnom potrebnom radnom stažu, prisutnosti specijaliziranog visokog obrazovanja, činjenici da je radno mjesto već zatvoreno i još mnogo toga. “Drugi kraj linije” bolje zna što će s tim. Također pošaljite svim tvrtkama koje teoretski imaju ili bi mogle imati stručnjake u vašem profilu. Poštu obično razvrstavaju tajnice. Nije velika stvar ako pošalju tvoju e-poštu u kantu za smeće. Mišljenje ovih poslodavaca o vama nije važno. Čak i ako su to najprestižnije tvrtke.

Samo traženje posla traje od mjesec do dva. Obično, ako se prijavite na natječaj, kontaktirat ćemo vas za 2-3 dana. Zatim, u roku od tjedan dana, intervju i/ili testni zadatak. A onda će, u roku od mjesec dana, poslodavac razmišljati o rezultatima. Izravna odbijanja se obično ne šalju. Samo zaborave na tebe i to je to. Stoga se pripremite za mnoštvo intervjua zbog kojih ćete zaboraviti na njih. Ne polagajte nade ni u kakve opcije. Obavite intervju i zaronite natrag u učenje programiranja.

4.1.4 "Karma" programera

Postoji jedan vrlo zanimljiv trenutak kada tražite posao. Recimo da ste naučili JavaScript. Učio i učio savjesno. Zatim tražim posao kao JavaScript programer. I odjednom vam se nudi da postanete, na primjer, sistemski programer. Poslodavac bi mogao reći da je vaš JavaScript dobar. Ali on ima samo slobodna mjesta za pripravnike za sistemske programere C. Stoga možete odabrati pripravnika S.

Trik je ovdje nakon ovog prvog posla. Povratak na rad s JavaScriptom bit će problematičan. A ovo nije neka magija tamo. Baš kao C programer bit ćete iskusni. Kao JavaScript programer, neiskusan. Oni. vraćanje na JavaScript smanjuje vašu plaću. Možda čak dvaput. Stoga ćete do kraja života ostati programer sustava C. Mislim da ovo nije loša opcija. Ali morate biti svjesni takvih ograničenja.

4.1.5 Intervju

Iznenadili biste se, ali većina intervjua za programere odvija se na daljinu. Stoga, čak i ako se želite zaposliti u gradu, stotinama kilometara udaljenom od vas, sasvim je u redu da ste sada na drugom mjestu. Poslodavac može na daljinu provjeriti vaše kompetencije i odlučiti hoćete li otići na razgovor licem u lice ili odmah na posao u njegov grad.

Ako je intervju u odsutnosti, sve je jednostavno. Trebat će vam dobra veza, internet i telefon. I jedan i pol do dva sata vremena kada se nitko neće miješati. Ako je tišina i dobar internet u vašem domu nemogući. Dogovorite se s prijateljima da će vam dati svoju kompjutersku sobu ili stan za razgovor. Video komunikacija obično nije potrebna. Najvjerojatnije trebate Skype i TeamViewer. Teška razvojna okruženja, prevoditelji, uređivači obično nisu potrebni. Dovoljan je jednostavan uređivač koda kao što je Sublime ili Notepad ++. Poslodavac će sam napisati što trebate imati za razgovor.

Mnogo je napisano o intervjuima licem u lice. Ne vidim razloga da se ponavljam. U svakom slučaju, nakon što su dobili poziv, trebali bi naučiti što je više moguće o tvrtki koja poziva. Pogledajte recenzije o njoj kao poslodavcu. I odlučite želite li tamo raditi. Ako želite, svakako smislite razlog zašto baš tamo. Zašto ste tamo poslali svoj životopis?! Uostalom, možda ne odgovara formalnim zahtjevima.

U svakom slučaju, prije svega trebate željeti zanimljiv posao i profesionalni rast. Kao što smo pokušali programirati, jako vam se svidjelo. A sada tražite zanimljiv posao u ovom smjeru. Prije svega očekujete zanimljive zadatke iz budućeg zaposlenja. Sposobnost komunikacije s kolegama istomišljenika. I, naravno, polirajte svoje profesionalne vještine. Ovo je pitanje koje biste trebali postaviti na početku. Trebalo bi vas zanimati kakvo će iskustvo imati vaši budući kolege. Koje tehnologije se koriste u projektu za koji traže djelatnika.

Naravno, budimo iskreni. Većinu njih svrbi glavno pitanje, o plaći. Ovo je zadnje što treba saznati. Ova pitanja obično isprva postavljaju "profesionalci". Gazde traže amatere.

Obično je plaća pripravnika, uz određeno poznavanje teme, plaća običnog uredskog hrčka u istom gradu. Ali ako je ponuda manja, moj savjet je da ipak pristanete. Recimo da radite kao administrator sustava. Dobivate 500 dolara. Mislim da je 500 dolara za sysadmina u središnjoj Rusiji plafon. A sada vam se nudi pozicija programera (zapravo pripravnika) za 300 dolara. Ako ti je to sranje. Nemojte ni početi ništa učiti. Zatvorite ovaj članak. I zaboravite na programiranje kao buduću profesiju.

Vaša prva plaća programera mora biti dovoljna da preživite. Činjenica je da ćete zajedno s 300 dolara dobiti iskustvo i znanje u vrijednosti od 1000 dolara. Steknite iskustvo suradničkog razvoja. Vaš rad će ocijeniti iskusniji kolege. Dobijte neograničen pristup njihovom iskustvu. Najvjerojatnije će vaš portfelj rasti s stvarnim projektima. Sve će vas to učiniti pravim i traženim stručnjakom. Ako niste lijeni i iskoristite sve ovo. Za šest mjeseci sustignite svojih 500 dolara. I ovo će biti samo početak vaše karijere.

Naravno, može se dogoditi, "Iskustvo i znanje za 1000 dolara" neće dobiti. U ovom slučaju jednostavno potražite drugi posao.

Tijekom intervjua ne treba se ničega bojati. Morate se ponašati prirodno, ali imati radni stav. Intervjui se obično vode pristojno. Zadatak vašeg budućeg šefa je razumjeti kakva ste osoba i stručnjak. Radije će vas vrlo pomno promatrati.
Nitko ti nikada neće reći pravo mišljenje o tebi. Loše mišljenje može vas okrenuti protiv. Što nema nikakvog smisla. Što ako vam ipak dobro dođe. Dobar može biti razlog za zahtjeve za većom plaćom.

Intervju je kao prvi spoj s djevojkom. Uvijek je sve pristojno, kulturno i dobro. Samo se sljedeći možda neće održati.

4.2 Pripravnički staž

Zadatak prakse je dotjerati stečeno znanje.

4.2.1 Freelance

Programeri početnici mogu čitati članke s interneta koji govore koliko je sjajno biti “slobodnjak”. Sjedim pod palmama, primam jednokratne narudžbe i “ne radim za ujaka”.

Da biste razumjeli prednosti i nedostatke freelancinga, morate razumjeti da je poslodavac spreman uložiti u vašu obuku, gledajući samo dugoročnu perspektivu. Inače mu je lakše preplatiti gotovog stručnjaka nego čekati da početnici rješavaju složene probleme. Stoga freelancing ne pruža dubinsko iskustvo. Nitko vam jednostavno neće zapovijedati ako nemate potrebne kompetencije. S druge strane, freelancing je prva zanimljiva praksa i prvi novac. A za novac kupca, istovremeno možete kreirati i portfelj za sebe.

Nema potrebe polagati velike nade. Samo pokušajte pronaći narudžbe na kraju samostalnog učenja. Bit će super ako uspijete. Ali nemojte pretpostavljati da ste završili staž i postali pravi programer. Ovo je dobra aktivnost samo kada vas još nisu preuzele ozbiljne tvrtke. Ili ste već tamo radili 3-5 godina.

4.2.2 Tvrtke

Jednom sam čuo za ekonomski zakon. Što je veći sindikat radnika, to ovaj sindikat prima više prihoda za svakog zaposlenika. Sukladno tome, u velikim poduzećima plaće radnika obično su veće. Nego neki "slobodnjaci". Barem u IT-u. Poznati industrijski divovi su ti koji plaćaju najveće plaće i kupuju najbolje umove. Stoga se mora voljeti "striček" koji okuplja specijaliste u šaku i daje posao. Jer zajedno možete zaraditi mnogo više nego odvojeno.

I ako je tako. Morate naučiti kako raditi kao tim. Koristite alate za kolektivni razvoj. Kolege će s vama podijeliti svoja iskustva, pomoći vam da ispravite greške. I sami ćete se iznenaditi koliko toga u struci ima novoga s čime se do sada niste susreli.

Kao što je ranije rečeno, većina ljudi su "profesionalci". Kad dođu na svoj prvi posao, “smire se”. A njihova strategija je preživljavanje. Oni će samo ovdje i sada ovladati znanjem potrebnim. Recimo da trebate napisati SQL upite za kod. Brzo će na internetu pogledati kako napraviti zahtjev za određeni zadatak. I na osnovu toga će napisati kod. Zatim se kod šalje iskusnom kolegi na pregled koda. Ispada da umjesto dva zahtjeva i hrpe koda možete napisati jedan zahtjev, ali s "joins". A onda se pripravnik penje na internet. Tamo čita dio nekog materijala o "pridruživanju". Prerađuje kod. Tako svaki dan. Tako većina polaznika stječe znanje.

Bilo bi ispravno, nakon 3-4 slična pitanja vezana za bazu podataka, uzeti priručnik o ovom DBMS-u i proučiti ga u potpunosti. To obično rade samo "amateri". Što postaje znatiželjno što, osim "spojeva", još ima.

Treba napomenuti da je čitanje bilo kakvih priručnika u ovoj fazi puno zanimljivije. Već ste upoznati s tehnologijom. A dobro znanje može znatno olakšati posao. Ovo je mnogo privlačnije od samo apstraktnih primjera iz knjiga u prethodnom koraku.

Pripravnički staž nesmetano prelazi u redoviti rad. Teško je točno odrediti trenutak kada se možete smatrati punopravnim programerom. Vjerojatno kad na vaša pitanja kolegama ponestane jednostavnih odgovora. I razumiješ, većinu problema morat ćemo riješiti sami. Obično je ovo razdoblje šest mjeseci. Ako ste dobro obavili posao u prethodnoj fazi. Ako ste bili u žurbi, smjestili ste se, nakon što ste do pola pročitali knjigu na glavnom jeziku. Stoga nastavite svladavati knjigu i dodatne tehnologije.

Nakon pripravničkog staža slobodni ste raditi što god želite. Freelance. Radite samostalne projekte i još mnogo toga. Ali moj savjet tebi. Ponekad čitajte literaturu vezanu za vaš rad. Za naprednu obuku. Ako ste prije čitali kako napisati kod. Sada možete pročitati kako to učiniti vrlo dobro i ispravno. Budite uvjereni, uvijek ćete vidjeti nove horizonte za profesionalno usavršavanje. Ne budi lijen! Pogotovo ako želite veliku plaću.

5. Zaključak

Nadam se da će ovaj članak pomoći svima koji žele savladati našu divnu profesiju.
Ako vam se sviđa ovaj rad. Imam ideju razgovarati o prednostima i nedostacima visokog obrazovanja u IT-u.

Oznake:

  • programiranje
  • karijera programera
  • studirati na tome
  • samostalni studij
  • samoobrazovanje
  • pripravnički staž na njemu
Dodaj oznake

Komentari 179

Kako sami postati programer od nule? Kako početi učiti programiranje za čajnik?

Pripremili smo detaljne upute kako savladati programiranje i napisati optimiziran, razumljiv kod.

Kako naučiti programirati od nule?

1. Samostalno

Ako imate željeznu snagu volje i željni ste postati programer, tada svoj cilj možete postići samoobrazovanjem. Ovo nije najlakši i najkraći put. Informacijski kaos morat ćete sami shvatiti, ali možete učiti u prikladno vrijeme i potpuno besplatno.

Najlakše je započeti s interaktivnim online tečajevima. Na mreži postoji mnogo stranica čiji materijali na pristupačan način objašnjavaju osnove programiranja i postavljaju smjer daljnjeg razvoja.

Obratite posebnu pozornost na one tečajeve koji podučavaju na primjerima stvarnih projekata, odnosno govore vam korak po korak kako izraditi određeni program ili web stranicu.

FreeCodeCamp platforma za razvoj weba

Zapamtite da ne možete učiniti ništa bez vježbe. Proučite projektno orijentirane tečajeve i pokušajte napisati programe i stranice koje su u njima rastavljene. Pretražujte YouTube predavanja o projektima koje biste željeli razviti. Prvo kopirajte tuđe radove i analizirajte ih. Zatim se pokušajte odmaknuti od originala, eksperimentirajte, mijenjajte pojedinačne elemente dok ne možete stvoriti nešto jedinstveno.

Uz tečajeve i video predavanja, službenu dokumentaciju možete pronaći na web stranicama za jezike i knjige. Kada dobijete osnove, potražite najnovije naslove najboljih praksi za svoj programski jezik. Ove knjige sadrže najbolje tehnike dizajna.

(!) Svakako si postavite cilj kreirati svoj projekt i stalno radite na njemu.

To će vam pomoći konsolidirati stečeno znanje i razumjeti koje informacije vam još nedostaju. Vaše će se vještine razvijati zajedno s projektom. Kad ga završite, radite na novom, složenijem.

Ako imate bilo kakvih poteškoća u procesu učenja ili razvoja, uvijek se možete obratiti programerskim zajednicama kao što su "" i Stack Overflow za bilo koje pitanje.

Na primjer, pomoći će vam riješiti problem, odabrati dobar tečaj ili ukazati na pogreške u kodu.

Zgodno je usavršavati vještine na posebnim stranicama na kojima se možete natjecati s drugim programerima rješavajući razne praktične probleme uz pomoć koda. Te usluge uključuju Codewars, TopCoder i HackerRank.

2.Uz pomoć mentora

Mentor- osobni mentor koji ukazuje na pogreške, upozorava na zamke, pomaže u osmišljavanju tečaja obuke. Korisna preporuka, primljena u pravo vrijeme, može vam uštedjeti mnogo problema i uštedjeti puno vremena. Stoga mentor nikome neće smetati.

Saznajte postoje li programeri koje poznajete. Možda će vam netko od njih htjeti pomoći. Ako ne poznajete takve ljude, možete ih potražiti u programskim zajednicama. Na primjer, na istom "". Samo mentorske usluge nisu jeftine, a nitko ne želi samo tako provoditi puno vremena s nepoznatim ljudima.

3. Kod nastavnika "živih" tečajeva

Tečajevi na daljinu i licem u lice s instruktorima koji obučavaju programere od nule postali su nevjerojatno popularni posljednjih godina. Unutar ovog formata morate puno raditi i sami. Ali učiti ćete po stručno pripremljenom programu, a prava osoba će provjeravati rješenje problema. Nedostaci tečajeva uključuju visoku cijenu obuke.

Popularne internetske platforme na ruskom jeziku koje se bave sustavnom obukom programera: Netology, GeekBrains i Loftschool.

Ako više volite interno studirati, možete potražiti obrazovne centre koji podučavaju programiranje u vašem mjestu. Nažalost, ovakvi objekti su najčešće prisutni samo u velikim gradovima.

4. Na sveučilištu

Ako vam je ostalo puno vremena i sigurni ste da svoj život želite povezati s programiranjem, možete studirati informatiku na fakultetu. No, imajte na umu da tradicionalne obrazovne institucije zaostaju za napretkom, pa ćete morati sami svladati moderne programske jezike i druge tehnologije.

S druge strane, sveučilište će pružiti temeljna znanja iz matematike, algoritama i drugih područja koja će vam pomoći da postanete visokokvalitetni programer. Tijekom godina marljivog učenja razvit ćete ispravan način razmišljanja, zahvaljujući kojem ćete sve u hodu shvatiti na profesionalnom polju.

Kako odabrati smjer i jezik

Postoji nekoliko smjerova u industriji informacijske tehnologije, od kojih svaki koristi svoj skup jezika. Navodimo glavne smjerove prema rastućoj složenosti, imajte na umu da smo odabrali najpopularnije i najraširenije programske jezike:

  1. Web razvoj: JavaScript, PHP, Python, Ruby.
  2. Razvoj mobilnih uređaja: Java (Android), Swift, Objective-C (IOS).
  3. Razvoj igara i programa za stolna računala: C++, C#, C.
  4. Umjetna inteligencija, strojno učenje: Python, R, Scala.

Što tražiti pri odabiru?

Da biste napravili pravi izbor smjera, a posebno jezika, uzmite u obzir sljedeće čimbenike: složenost svladavanja i količinu materijala za obuku na internetu, vaše osobne preferencije (što točno želite razviti) i potražnje za jezikom na tržištu rada.


Grafikon potražnje za programskim jezicima na međunarodnom tržištu rada / research.hackerrank.com

Potražnja za jezikom u vašoj regiji lako je provjeriti na stranicama za traženje posla. Samo otvorite odjeljak za programere softvera i pogledajte broj slobodnih mjesta.

Ako se ne možete odlučiti

Ako ste zbunjeni, pobliže pogledajte JavaScript – jezik na kojem je napisan gotovo cijeli web. Mnoge organizacije i programeri savjetuju početnicima da odaberu ovaj jezik kao svoj prvi jezik.

Na primjer, Quincy Larson, osnivač obrazovnog resursa freeCodeCamp, preporučuje JavaScript svi početnici. Larson iznosi vrlo jednostavne argumente:

  1. JavaScript relativno lako naučiti. A da biste nešto napisali i pokrenuli na ovom jeziku, samo trebate imati uređivač koda i preglednik.
  2. JavaScript je najtraženiji jezik na međunarodnom tržištu rada i ima velike izglede. Velike tvrtke poput Googlea, Microsofta i Facebooka ulažu u JavaScript ekosustav.
  3. Imati JavaScript vrlo širok raspon: od web stranica i igara preglednika do mobilnih aplikacija.

Osim toga, oko ovog jezika se formirala velika zajednica programera. Veliki interes za JavaScript pruža ogroman broj tečajeva, knjiga i drugih obrazovnih sadržaja.

Što bi još programer trebao znati: matematiku i engleski?

Svaki programer će imati koristi od dubokog razumijevanja matematike. Za stvari poput grafike igara ili velikih podataka, matematički um je neophodan. Ali što se tiče web razvoja i izrade jednostavnih programa, u većini slučajeva možete bez matematike. Iako ne postoji konsenzus među stručnjacima o ovom pitanju.

Ali razumijevanje engleskog, barem na razini tečnog čitanja dokumentacije, nužno je za sve programere. Službeni dokumenti i većina obrazovnih materijala pojavljuju se prvenstveno na engleskom jeziku. Knjige su često zastarjele prije objavljivanja prijevoda. Osim toga, znanje engleskog jezika otvara izglede za rad s cijelim svijetom.

Kako steći prvo iskustvo i prvi posao

Da biste pronašli svoj prvi posao programera, morate imati portfelj. Ovo je projekt koji ste kreirali, ili još bolje, nekoliko koji pokazuju sve vaše razvojne vještine. Većina tečajeva uključuje razvoj projekata koji se mogu uklopiti u vaš portfelj.

Radno iskustvo, posebno razvoj tima, bit će vrlo vrijedna stavka u životopisu. Ali gdje ga možete dobiti ako tražite svoj prvi posao?

  1. Ispunite više narudžbi na burzama slobodnih zanimanja. To može biti Freelance ili Upwork. Ponudite svoje usluge besplatno, tada će vam prvi kupci doći.
  2. Pronađite istomišljenike i stvorite zajednički projekt s njima. Ljudi se u takve svrhe udružuju na gotovo svim obrazovnim stranicama gdje postoje tečajevi programiranja.
  3. Odaberite tečajeve koje pružatelj pomaže pri zapošljavanju. Primjerice, u GeekBrainsu se nakon treninga otvara pristup praksi raznih tvrtki, pa tako i onih koje se plaćaju. GeekUniversity i STEP jamče zaposlenje svojim diplomantima.

(!) Prije intervjua svakako potražite na internetu popise zadataka i pitanja koja poslodavci često postavljaju.

Pridružite se našem Telegram kanalu kako biste bili u tijeku sa svim najnovijim vijestima iz svijeta Applea, Samsunga, Microsofta, Googlea i drugih inovativnih tvrtki.

Vrhunski povezani članci