Frontend VS Backend - šta je za vas?
Ljudi koji nisu iz IT sveta obično se začude kada čuju pojmove poput “developer”, “frontend”, “backend”, “full stack developer” i drugo. Koje su razlike i sličnosti navedenih programera? Nekada se ne može povući jasna granica između ova dva pojma. Oba se tiču različitih aspekta IT industrije. Frontend se često naziva prednjom i vidljivom stranom programiranja, kao nešto što klijent može da vidi i oceni. Backend je serverski deo programa i stoga nevidljiv posetiocima sajta ili softvera.
Frontend u sebi sadrži dosta tipova posla, koji se mogu razlikovati od firme do firme. Veb dizajn je vrsta frontend razvoja koji se tiče dizajna sajta, koji najčešće počinje dizajnom u programu Photoshop, zatim prelazi na rad u HTML-u, CSS-u, i sličnim script jezicima poput korišćenja Lavarela, PHP-a, Javascripta i sve ozbiljnije programiranje koje se na klijentu razvija. UX i UI su skraćenice za “User Experience” i “User Interface” i potpuno su fokusirani na grafički dizajn sajta, i na poboljšanje utiska stečenog od strane krajnjeg korisnika. Svrha je da se posetilac sajta oseti prijatno i da može olako navigirati različitim opcijama. Frontend programeri vrlo retko imaju kontakt sa pozadinskim programskim kodom, i njihova uloga je da sajt učine responzivnim, interaktivnim, i dinamičnim.
Programeri koji rade na pozadinskom kodu nazivaju se backend programeri i bave se stvarima koje uključuju strukturu, sigurnost, baze podataka i upravljanje sadržajem. Backend programeri najčešće koriste PHP i Python programski jezik kad su web stranice u pitanju, a jezike kao što su Java i C# kada su kompleksniji projekti u pitanju.
Početak karijere svakog programera prožet je pitanjem: Šta je bolje za mene, backend ili frontend?
Postoji verovanje da, ako ste više kreativni, treba da idete put frontend karijere, dok ako ste više logičan tip, backend karijera je za vas. Ipak, ovakva podela nije precizna jer postoje sive zone. Činjenica je da pojedinci mogu biti i kreativni i logični, mogu imati osećaj za korisnika ali i sjajan osećaj za funkcionalnost. U tom slučaju mogu sebe smatrati full stack programerom, što je hibridna forma frontend i backend programera.
Fokus frontend programera je kako nešto izgleda. Dizajn prijemčiv ljudskom oku, način na koji se sa jedne opcije prelazi na drugu, jačina boja i usklađenost praznih polja je ono što zanima frontend programera. Uloga ovog programera je velika obzirom da korisnikovo zadržavanje na sajtu uveliko zavisi od njegovog dizajna i atraktivnog interfejsa. Takođe, ukoliko je uloga sajta prodaja, dizajn velikim delom odlučuje da li će korisnik nešto kupiti ili ne. Dovoljno je nekoliko sekundi da procenite da li je u neki sajt uložen dizajnerski trud ili je urađen samo da bi postojao. Stil kojim je nešto na sajtu prezentovano može dati na važnosti ili oduzeti, u zavisnosti od važnosti tog konkretnog elementa. Dizajn velikim delom navigira korisnika kroz različite elemente sajta, tekstualno i vizuelno navodi na određene delove sajta. Ukoliko sebe pronalazite u navedenim primerima, možda je karijera frontend programera krojena za vas.
Rešavanje problema, konstantno testiranje funkcija i kompleksno razmišljanje je karakteristika backend programera. Rad na velikim projektima često zahteva više ovakvih programera nego dizajnera i frontend profesionalaca. Pisanje koda, testiranje, baze podataka, sigurnost mreže zahtevaju stalnu proveru kako bi takav sistem funkcionisao. Za razliku od frontend razvoja, backend programer ne vidi rezultate svog rada dok se funkcionalnost operacija ne potvrdi kroz testiranje. Proces pisanja koda je često nepredvidiv i neizvestan, te zahteva strpljenje i temeljan rad. Zastupljeno je laičko mišljenje da je mnogo lakše preći iz backend programiranja u frontend, nego obratno. Ukoliko sebe smatrate logičnim tipom, možda je backend karijera upravo vaša.
Saveti iskusnih programera govore nam da je ipak najbolje testirati oba načina rada i posle izvesnog vremena doneti racionalnu odluku o tome koji put želimo da pratimo i u kakvu karijeru da ulažemo. Svakako je vredno oprobati se i u jednom i drugom pravcu, pa odlučiti šta vam bolje ‘leži.’ Možda vas opredeljenje na kraju dana iznenadi.