Zamislite post-apokaliptičnu sliku svijeta bez programera. Zmajevi iz "Igre prijestolja" pretvorit će se u crno-bijeli Godzill. Razgovori, glasnici i čak Tetris neće nestati. Trebaju nam programeri. Oni pišu kodove za pametne telefone, računala i perilice rublja, prisiljavajući tehniku na rad. Ali to nije sve. Profesija ima mnogo područja i specijalizacija, od kojih svaka ima svoje karakteristike i poteškoće, plaća također ovisi o tome što programer radi.
Najpopularniji tip profesije "programer" za 2017. je web developer. Ova kategorija uključuje stručnjake u izradi web lokacija.
Uslovno webmasteri su podijeljeni u tri skupine:
Ne znaju svi tko je klijent i poslužitelj. Stoga poslodavci često brkaju specijalizaciju u razvoju weba. Postoje oglasi na freelance razmjene u kojima poslodavci iz front-end obrtnika zahtijevaju znanje fulstak, dok plaćaju kao običan izgled.
Za one koji nisu inicirani u tajanstveni kod, to su slične vrste smjerova. Programeri su angažirani, čini se, jedno. No, alati, jezik, dužnosti i plaće Frontendova čarobnjaka i programera poslužitelja su različiti.
Vidljivi dio internetskog resursa koji se otvara u pregledniku nakon unošenja zahtjeva naziva se klijent ili sučelje. Dizajn, boje, raspored naslova rješava dizajner. Umjetnik crta budući izgled i prenosi ga koderu koji ga pretvara u HTML predložak. U ovoj fazi web programer povezuje i dodaje dinamiku sučelju.
Front-end programeri su vrsta programera odgovornih za stvaranje widgeta, gumba, padajućih izbornika i slajdova. Svi interaktivni elementi pojavljuju se na stranicama zahvaljujući njima. Pišu skripte u JS-u, uključuju ih preko HTML oznaka i osiguravaju da svaki dio koda radi ispravno.
Pisanje koda u HTML, CSS i JavaScript nije dovoljno. Ostati konkurentan tržište rada, Razvojni programer frontenda trebao bi znati sljedeće:
Odgovornosti i aktivnosti programera uključuju ispravljanje pogrešaka i testiranje na strani klijenta. Web inženjer provjerava pojedine blokove izvornog koda za pogreške. Testira sučelje, saznaje kako će biti ugodno za korisnike da komuniciraju s aplikacijom. Također, front-end stručnjak bi trebao razumjeti osnove programiranja poslužitelja, Node.js tehnologije, uz JS pisati u PHP i SQL.
Prosječna plaća majstora iznosi 66 tisuća 410 rubalja mjesečno. U SAD-u taj iznos raste na 102 tisuće dolara godišnje. Visoke plaće, jednostavnost označavanja jezika i skriptiranje privlači početnike kod razvoja na front-end razvoj. Nakon što je ovladao JS-om, većina njih se prebacuje na poslužiteljske jezike. Najtalentiraniji su učenje na visokoj razini C i Java, postupno svladavanje igara, stvaranje aplikacija i drugih vrsta informativnih aktivnosti programera.
Backend je dio web-aplikacije koja se nalazi na poslužitelju. Nije prikazana u pregledniku, ali je odgovorna za promjenu sadržaja, dinamičko funkcioniranje i pohranu svih informacija o web-lokaciji. Sastoji se od poslužitelja, aplikacije i baze podataka. Tip programera koji stvaraju i razvijaju ovaj dio web-resursa nazivaju se Backend programeri.
Programer na strani poslužitelja je sljedeći evolucijski korak nakon razvojnog programera. Njegova je zadaća interakciju poslužitelja, aplikacija i baze podataka. Piše na jezicima poslužitelja PHP, Ruby, Python, Java i .Net. Kao alat za rad s podacima koristi MySQL, Oracle i SQL Server. U opisu posla poslodavci često navode dodatne zahtjeve:
Izrada web aplikacije složen je, višeslojni proces koji uključuje nekoliko stručnjaka. Stoga je razvoj u pozadini timski rad. Prilikom pisanja koda programer komunicira s dizajnerima, dizajnerima izgleda, menadžerima i kupcima.
To je tip rada programera koji uključuje sve faze izrade web aplikacije. Fullstack programer je dizalica svih obrta, pisanje dijelova klijenta i poslužitelja. Prvi spomen struke pojavio se 2010. godine nakon članka zaposlenika Facebooka Carlosa Buena. Od tog trenutka tvrtka zapošljava radnike isključivo na razini Fullstack-a.
Odgovornosti univerzalnog web programera:
Fulstakovi programeri su viši stručnjaci za razvojnu razinu. Lovac na glave ih lovi i imaju najviše plaće. U SAD-u, plaća Fullstack Developer počinje od 70-80 tisuća dolara i od 25-30 tisuća dolara u Zemlje istočne Europe. Na stranim burzama, kao što je Upwork, jedan sat Fullstack-developera procjenjuje se na 30 USD i više.
Razvoj računalnih igara jedno je od najbrže rastućih područja IT tehnologije. Prema analitičkoj agenciji NewZoo, obujam tržišta videoigara svake se godine povećava za 9%. Ako je u 2016. iznosila gotovo 100 milijardi dolara, do 2018. godine taj će se iznos povećati na 112,5 milijardi. Stoga je "inženjer za video igre" obećavajuća i visoko plaćena pozicija.
Inženjer, ili Game-developer - opći naziv kategorije stručnjaka uključenih u proces stvaranja igre. Glavni zadatak je pretvoriti ideju u programski kod i učiniti sve elemente interakcijom. 90% radnog vremena programeri pišu i debug algoritmi u C ++, Visual Basic, Java i MEL.
Romantika u struci nije dovoljna. U osnovi, ovo je rutina i mnogo sati rada na računalu. Raspored je obično nestandardan. Ako dizajner ima sjajnu ideju da hitno preradi nešto, programer cijelu noć provodi na kodu.
Stvaranje konzole, mobilne ili računalne igre je proces na više razina. Počinje u fazi projektiranja, završava se promocijom i komercijalizacijom proizvoda. Također, igra ima mnogo različitih aspekata, uključujući sučelje, audio i video efekte i umjetnu inteligenciju. Za svaku postoji poseban tip programera:
Za njihov rad u korist industrije igara, ova vrsta programera prima plaću od 60 tisuća rubalja. Dohodak indie programeri točno izračunati teško. Postoje slučajevi kada su uspješni projekti donijeli milijune doslovno za tjedan dana. Na primjer, hit igra Punch Club, Angry Birds i poznati "Minecraft". Postoje, naravno, neuspjele ideje poput Scroll Ninja, koje nisu ispunile očekivanja kreatora.
Sustav, softver ili softver je skup uputa za računalo. To uključuje uslužne programe, upravljačke programe, naredbe za procesor, grafičku karticu, monitor. Sistemski inženjer ih piše na jeziku koji je razumljiv stroju ili kodu.
Softver je razvijen za različite operativne sustave, uključujući poslužiteljeve Unix i Windows Server te mobilne platforme. Kôd je pisan na jezicima C, s rijetkim iznimkom asemblera. Glavni zadatak inženjera sustava je instalirati, konfigurirati, testirati OS i sve njegove komponente.
Različite vrste “programerske” profesije zahtijevaju od stručnjaka određene vještine, radno iskustvo i razinu vještine rada na računalu jezika. No, rad sistemskih inženjera je najteži. Da biste stvorili softver, potrebno je detaljno poznavanje računalnih znanosti, algebre, matematike i konstrukcije algoritama.
Sistemski programer je potreban u bilo kojem polju IT-a, uključujući automatizaciju proizvodnih procesa i sigurnosni nadzor. U SAD-u, za rad specijalista su spremni platiti od 87 do 104 tisuća dolara. U Engleskoj, 57 tisuća funti, u Rusiji, 90 tisuća rubalja.
Ovaj tip programera stvara aplikacijski softver, a ne softver sustava. To su programi ili aplikacije koje izravno komuniciraju s korisnikom. Na primjer, tekst i grafički urednici, baze podataka, audio i video playeri.
Posao inženjera aplikacije je pisanje koda, zatim njegovo prevođenje, ispravljanje i testiranje. Ponekad stručnjak ažurira ili napravi promjene u postojećem softveru. Za programiranje koristi jezike visoke razine Java, C #, C ++, Python, PHP. Programeri aplikacija rijetko rade sami. U osnovi, oni su sudionici startupa ili su zaposleni u tvrtki koja se bavi razvojem računalnog softvera.
"Programer" je zanimljiva i raznovrsna struka s različitim područjima i specijalizacijama. Neki stvaraju widgete za web-lokacije i dizajniraju API-je, drugi pišu kodove za poslužitelje ili grade grafike Disciplesa III. Svatko tko voli programiranje može se ostvariti u razvoju weba, postati poznati kreator igara ili pisati programe za NASA satelite.