Dragan Zarić - Frontend developer
Srbija je zemlja IT stručnjaka, i poslovi u IT sektoru su jedni od najisplativijih kod nas. Mnogo ljudi se oprobalo u ovoj struci, a mnogi su i u njoj ostali godinama. Dragan Zarić (Dezareo) će nam iz prve ruke opisati kako izgleda baviti se poslom frontend developera:
Ćao Dragane, hvala ti što si odvojio vreme da porazgovaramo. Da li bi mogao da nam kažeš nešto osnovno o svom poslu, šta je suština tvog zanata?
Zdravo. Ja se bavim frontend programiranjem. Frontend programiranje podrazumeva vizuelni deo jedne web aplikacije i to je prvo što korisnik aplikacije ili posetilac sajta vidi. Ovde govorimo o UI i UX (User Interface i User Experience dizajnu). Suština mog posla je da ja napravim lep proizvod a koji će biti dopadljiv korisnicima.
Znači, u pitanju je dizajn. Kada si počeo da se baviš web dizajnom i kako je došlo do toga?
Web dizajnom i uopšteno programiranjem sam počeo da se bavim 2004. godine. Tada je nekako i kretao internet da se budi u Srbiji. Prvo su internetu pristupali na brzini 28kbps. Pristupalo se preko telefonske linije. Sećam se da sam svoj prvi local server - easyphp koji je težak 20MB skidao cele noći. Do tada sam već krenuo sa HTML-om. Tada su na internetu mahom preovlađivala custom rešenja, websajtovi su se kreirali od nule, skoro da nisu postojala predefinisana rešenja poput CMS-ova. Negde u periodu 2005. godine sam se prvi put susreo sa Mambo CMS-om. On mi nikada nije legao, jer je imao prekomplikovani administratorski deo, što me je strašno odbijalo. Bio je limitiran pluginovima, prilično krut što se tiče koda. Oko 2007. godine saznajem za WordPress i od tada ga nikada nisam napustio. Jednostavno, pomalo vizionarski sam znao da je on next big thing i da njegovo vreme dolazi. Do danas se moja priča vrti u frontendu.
2004. godina zvuči daleko. Koliko je truda potrebno da bi se došlo do senior nivoa web developer-a, i šta je potrebno da znaš od tehnologija?
Potrebno je dosta vremena. Da se ne lažemo, programiranje nije lak posao i ovde ne postoji čarobni štapić sa kojim ćeš uz pomoć "hokus pokusa" postati senior. Potrebno je krenuti od osnova i one se moraju savladati a nakon toga i utvrditi. Ja se često vratim osnovama čak i posle ovoliko godina rada. Često čujem od onih koji tek počinju sa učenjem "E ja sam to naučio, savladao sam". Ok, ali ovo je kao učenje stranog jezika, svako od nas će savladati pojedine reči ali kada treba izgovarati rečenice dobićemo urnebesno smešan i netačan strani jezik. U programiranju se tačno zna šta čemu služi i to se mora poštovati.
Zatim potrebno je videti da li postoji predodređenost za bavljenje ovim poslom. Vrlo je mali broj ljudi kojima sam mentorisao a koji su ostali u ovoj priči. Web programiranje traži mnogo rada, mnogo odricanja, mnogo učenja. Ako se u ovu priču uđe zbog para onda se ta osoba neće dugo zadržati u celoj priči.
Kako izgleda proces učenja jednog programskog jezika ili web tehnologije, šta je najbitnije za početak?
Početak je najzanimljiviji kada se krene sa programiranjem. Entuzijazam je jak kao i ushićenje kada se reši neki od problema. Kao što sam već rekao prvo se dobro moraju savladati osnove i moraju se dobro utvrditi. Najbitnija stvar je upornost (možda bih mogao da je nazovem i beskompromisnom tvrdoglavošću). Dobar programer će se vraški mnogo potruditi da reši neki problem. Ako se mlad čovek koji uđe u ovu priču baš potrudi da rešava zadatke, sa strašću i posvećenošću to je siguran znak da je odabrao pravo zanimanje. Mlak pristup i copy/paste odgovora sa interneta vas neće odvesti nigde.
Pored strasti i posvećenosti, šta još misliš da je ključno za tvoj posao?
Odmah ću reći da su to metodika rada i fokus. Te dve stvari će odrediti da li ćete posao uraditi kako treba ili ne. Ovo kažem iz mog iskustva. Metodika rada podrazumeva da razumete proces svog rada ili projekta od početka do kraja. Ne možete krenuti od sredine procesa rada ili od finalnog dela. Programiranje je egzaktan proces, nema mnogo prostora za improvizacije jer to može dovesti do toga da vam se cela struktura projekta sruši kao kula od karata. Da bi bili efikasni morate imati metodiku rada, tačno utvrđene korake koji se prate.
Fokus je takođe bitan. Bez fokusa nećete moći rešavati probleme. Ako su vam misli raspoređene na "sto strana" ništa nećete odraditi kako treba. Dobićete polovična rešenja, neće biti kvalitetna. Ja nisam zastupnik multitaskinga. Smatram da se trebaju pratiti koraci i raditi stvari jednu po jednu.
Koliko se brzo napreduje u tvom poslu, i koliko je truda potrebno za napredovanje?
Napredovanje je relativna stvar. Neko brže napreduje, neko sporije. Sve zavisi od rezultata rada. E tu opet dolazimo do predodređenosti za ovaj posao. Neko ima više talenta za programiranje i više se trudi i on će svakako brže napredovati od nekog ko ne želi da npr. uči nove stvari, radi posao rutinski, sasvim mu odgovara trenutna pozicija. Ono sto ja mogu da kažem da se trud na kraju uvek isplati u ovom poslu, to ne može da prođe neopaženo.
Da li misliš da je bolje biti freelancer ili zaposlen u nekoj firmi,i zašto?
Freelancing je ok jel vam daje osećaj slobode, ali i neizvesniji je. Na Upworku (globalnoj platformi za IT poslove), imate periode u godini kada možete imati poslove preko glave ali i periode kada posla ima jako malo ili ga uopšte nema. Ta finansijska neizvesnost je prilično neprijatna stvar. Ipak, možete raditi u koje vreme dana hoćete, tzv. klizno radno vreme. Mislim da je rešenje za freelancing nalaženje takozvanog zlatnog klijenta, odn. osobe za koju ćete raditi i koja će vam dobavljati poslove koje ćete raditi iz topline svog doma.
Sa druge strane, stalni posao podrazumeva da idete u kancelariju gde ćete raditi sa kolegama. Imaćete stalnu platu ali takođe i konstantne obaveze i radno vreme od "9 do 17". Tu gubite na nezavisnosti ali nema finansijske neprijatnosti...osim ako vam ne kasni plata. Takođe, bićete deo tima i moraćete da se ponašate u skladu sa tim. Iskreno ja sam zastupnik rada u firmi, taj osećaj obaveze je nešto što je sastavni deo mene i mog karaktera.
Koliko je tvoj posao stresan i kako se nosiš sa stresom svog posla?
Stes postoji, uvek je prisutan. Obično je vezan za prilično kratke rokove. Jednostavno ako čovek ne uživa u procesu kreacije web sajtova ne vredi ni raditi ovaj posao. Opravdani stres je ok, nerealno kratki rokovi - treba bežati od toga.
Da li je tvoje zanimanje perspektivno kod nas što se zarade tiče?
Jeste. Ipak i tu postoje nivoi zarade. Odlični programeri zarađuju odlične sume novca. Postoje mid level programeri koji pristojno zarađuju i naravno početnici koji zarađuju solidno. Kako vreme ide, ako ulažete u sebe i svoje znanje očekivano je da ćete pristojno zarađivati od svog posla.
Kako izgleda tvoj radni dan?
Pošto sam sada u freelance fazi, probudim se i krećem sa radom na tekućem projektu. To može da bude nekoliko sati rada na njemu ili da bude jedan duži period dana u zavisnosti da li se treba nešto hitno završiti. Drugi deo dana je obično posvećen nekom učenju, testiranju nekih stvari. Jednostavno nema napretka ako se ne uče nove stvari, to je kod mene postalo sastavni deo dana. Npr. ja učim nemački jezik jer smatram da će to unaprediti moj posao. Jedan deo dana obavezno posvetim učenju nemačkog jezika.
Šta imaš da poručiš mladima koji razmišljaju da postanu web developeri?
Ono što bih rekao a nisam, a izuzetno bitna stvar je Mentorstvo. Nađite mentora ako krećete u ovaj posao. On će vas upućivati na prave stvari, pratiti vaš razvoj, pomoći vam da rešite neki problem kad zapnete, imaćete sa kim da popričate o stvarima bitnim za programiranje. Mentor ako primeti vaš potenicijal će vas preporučiti svojim drugarima i tako ćete brže naći posao. Zatim: budite korektni, pozitivni, učite i budite vredni. To su sigurno dobri saveti koji će vam pomoći da postanete programeri.