O kompaniji
18
Iskustva
17
Plate
Poslovi
Enlight Engineering logo

Enlight Engineering

5
17.01.2023.

Front-end developers are not just designing user interface, they are influencing user behaviour

Helloworld

U doba kada mnoge aplikacije dobijaju svoju web verziju a ljudi traže da aplikacije budu vizualno lepe, lake i intuitivne za korišćenje, front end development dobija sve više na značaju.

Đorđe Stanivuković je u našoj firmi više od 6 godina. On je jedan od naših najboljih front-end developera i razgovarali smo sa njim o promenama koje se dešavaju u ovoj oblasti. Podelio je par priča sa početka svoje karijere i uputio nas gde se to front end development kreće.

Kako je izgledao tvoj razvojni put u Enlight-u?

U februaru 2016. kada sam bio poslednja godina na fakultetu došao sam u Enlight na praksu od 2 meseca. U to vreme vreme bili smo mala firma, sa nekih 10 ili 11 zaposlenih. Posle samo dva meseca dobio sam priliku da odem u Švajcarsku na nedelju dana, što je bilo sjajno iskustvo, a ispostavilo se i kao super druženje. Bili smo u periodu Uskrsa, pa se nije radilo puno. Imao sam osećaj kao da sam na work and travel programu na početku karijere! Takav mi je bio početak. Posle nekoliko meseci prakse sam dobio stalni posao.

U to vreme sam bio jedini koji se u Enlight-u bavio web developmentom i tražio sam put da se ostvarim u tom domenu. Prvo sam radio interni projekat - ažuriranje Enlight-ovog sajta.

Nakon toga je počeo rad sa klijentom. Za kompaniju Arktis iz Ciriha pravili smo web aplikaciju za operatere sistema za detektovanje radijacije. koji se koristi, na primer, u lukama, i na aerodromima. Sam projekat je trajao nekoliko meseci.

Kasnije, 2018. godine, sam u timu sa 13-14 kolega radio projekat za Geuterbreuck, koji je tada bio naš najveći klijent. Radili smo na stvaranju aplikacije FIM (Federal Identity Management), čiji je cilj bio prepoznavanje - na primer, da omogući tržnim centrima da prepoznaju VIP osobe, lopove i slično. Bio je to jedan veliki projekat u trajanju od godinu dana, zanimljiv i poučan. Ali iz ove pozicije, sa malo više godina iskustva, mogu da prepoznam nedostatke i znam šta bih drugačije uradio.

Koji je najveći projekat na kom si radio?

Definitivno projekat na kojem radim već dve i po godine, za Pantone. U pitanju je razvoj aplikacije Pantone Connect. Pantone je u procesu digitalne transformacije, pa tako, sve što je ranije bilo u knjigama i njihova najveća klasifikacija boja na svetu, sada prelazi na digitalnu bazu. Dosta toga se promenilo od početka do sada, ali ovo je sigurno projekat gde sam dao najviše doprinosa, a i gde lično imam najveći osećaj satisfakcije.

Ovaj projekat se razlikuje od svega što sam do tada radio. Prvenstveno, meni je ovo prvi B2C proizvod na kome radim i mnogo mi se dopada taj aspekt. Proizvod koji ja pravim koriste na stotine hiljada ljudi širom sveta, u različitim oblicima. To je aplikacija koja je dostupna kao iOS aplikacija, android aplikacija, photoshop plugin, web aplikacija. Najuzbudljivije mi je to što mogu da odem na Youtube, ukucam Pantone Connect i vidim mnogo videa korisnika kojima služi nešto u čijem razvoju sam ja učestvovao.

Na primer, kako se Pantone dosta reklamira u Americi, video sam da dizajneri koji sarađuju sa Kanye West-om koriste aplikaciju! To mi je bio baš neverovatan momenat! Na većini drugih projekata ne vidiš način na koji finalni proizvod utiče na ljude, odnosno često ne možeš ni da ga staviš u kontekst - ne znaš ko će ga koristiti, kada, kako. Zato je ovo toliko posebno.

Što se samog mog rada tiče, bilo je izazovno, jer sam na ovom projektu prvi put video da možeš da koristiš samo Web tehnologije, a da napraviš proizvod koji je toliko ozbiljan i optimizovan za različite platforme, i to većinu toga iz jednog koda. Otprilike 80% koda je bilo shared code, a 20% specifično za platformu. Moćno je i shvatio sam da to daje mnogo prilika - pokazalo mi je da se budućnost front end-a kreće ka product development-u.

Zasto si izabrao da se bavis front endom?

Ja sam vizuelna osoba i volim da se bavim stvarima koje imaju izraženu vizuelnu komponentu. Obožavam programiranje, pa je to idealan spoj. Pored toga, volim da imam interakciju sa korisnicima, pa se pokazalo da je front end u srcu svih ovih tačaka. Omoguća mi da razvijam korisničke interfejse na aplikacijama koje će koristiti veliki broj ljudi.

Ako polazim od sebe, mnogo volim aplikacije, računare, telefone. Kako i sam volim da koristim te aplikacije, pokreće me ideja toga da neki ljudi, koji mogu biti u Kini, Australiji ili Americi ili bilo gde na svetu imaju koristi od nečega što sam ja napravio. Da imaju interakciju sa tim aplikacijama. Front end mi omogućava da, na neki način, komuniciram sa ljudima širom sveta kroz interakciju koju oni imaju sa aplikacijom koju sam ja programirao.

Gde i kako učiš i usavršavaš se u svojoj oblasti?

Web development je grana u IT-u koja se najbrže menja. Neke stvari koje su možda važile pre dve godine, danas mogu biti drugačije, tako da je veoma važno da se konstantno usavršavamo. Imam nekoliko kanala gde učim i otkrivam nove stvari - najviše koristim tech twitter. Tamo ima ljudi koji su kao poznate ličnosti iz oblasti programiranja i dosta može od njih da se nauči. Imam osećaj kao da se prvo nešto desi na twitteru, pa se zatim prenese negde drugde. Pored toga kombinujem različite izvore - priče sa ljudima, youtube, konferencije, networking, različite web platforme.. Kombinacija svega po malo.

Kako se promenio front end? Kako je izgledao ranije, a kako izgleda sada?

Ranije nije bilo toliko potrebe za front endom jer su aplikacije bile jednostavne. Na front end se gledalo kao da je sekundarna stvar. Back end je starija oblast, koja se mnogo više koristila kada su računari primarno bili fokusirani na funkcionalnost. Računar je morao da radi, dizajn je bio praktično nebitan. Početkom doba interneta i pojavom pametnih telefona, uređaji postaju sve jači a različiti aspekti digitalnog sadržaja sve bitniji. Pametni telefoni sada mogu da urade mnogo više, grafika i procesor su mnogo bolji, a samim tim front endom možeš da uradiš više. Taj telefon u džepu korisnika znači da kompanije imaju milione ljudi kojima plasiraju proizvode i usluge, a ti korisnici uvek žele još više i još bolje.

Većina ljudi danas reaguje na vizuelne aspekte - korisnici će manje koristiti aplikaciju koja nije lepa, intuitivna, user friendly. Zahtevi su sve veći, pa samim tim i front end mora dosta da evoluira. Sve više će dobijati na značaju i postaće sve kompleksniji.

Miro ili Figma su primer jake i kompeksne aplikacije. Dobro dizajnirana, kompleksna, dobar korisnički interfejs i omogućava ti da završiš posao. Sve to možeš u web browseru, ne moraš da instaliraš ni jednu dodatnu aplikaciju. Front end u ovom slučaju je jako kompleksan.

Šta misliš da je najinteresantnije kod front end-a? U čemu je moć front end-a?

Mislim da front end ima veliku moć. Nainteresantnije mi je to što omogućava korisniku da ima direktnu interakciju sa tvojim proizvodom – što može da se iskoristi za dobro, ali i za loše.

Na primer, dIzajner/front end developer iz Firefox-a koji je osmislio infinity scroll je hteo da korisnicima olakša iskustvo korišćenja, a ispostavilo se da je to funkcionalnost koja na ozbiljan način utiče na ljudsku psihu i drži ih “zaglavljenim” u aplikaciji ili na sajtu… Kao neki hack u mozgu. Ili kad dobiješ notifikaciju, većina aplikacija ti ne pokaže pri prvom kliku ono što želiš da saznaš, a kad odeš nazad, umesto da izađe iz aplikacije, vraća te na home page da bi tamo ostao duže.

Na neki način, front end developer je deo tima koji ne dizajnira samo aplikaciju već dizajnira nečije ponašanje - što je jako moćno, a ponekad i zabrinjavajuće. A sve to ti omogućava jedan mobilni uređaj.

Glavni dizajner Instagrama i sam kaže – “Utičem na ponašanje milijardi ljudi”.

Sta su trenutni izazovi kod front-end developmenta?

U jeku je digitalna transformacija na web. Po meni, najveći izazov je napraviti proizvod ili aplikaciju iz jednog code base-a, tako da radi na puno različitih platformi. To je dosta bilo vidljivo na primeru rada na aplikaciji za Pantone. Aplikacija koja se napravi treba da se optimizuje za različite operativnim sistemime i uređaje. Za iOS je lakše jer ga koristi samo iPhone, ali kada je reč o androidu, ima na hiljade različitih modela uređaja koji koriste android. Na primer, Pantone dosta koriste u Kini, a tamo nema Gugla. Imaš browser, ali nije Chrome, već oni imaju svoj browser. Izazov je da napraviš globalni proizvod koji će funkcionisati na svim tim različitim uređajima.

Na primeru Instagrama možemo da vidimo da su neke funkcije bolje na Apple uređajima nego na uređajima koji koriste Android. Napraviti proizvod za Apple je lako jer godišnje izađe par verzija, a uređaja koje koriste android godišnje može da izađe nekoliko hiljada i treba optimizovati aplikaciju za sve te uređaje. Drugačije su hardverske komponente, drugačije kompanije stoje iza tih uređaja. U slučaju manje razvijenih tržišta je tek veliki diverzitet verzija uređaja. Zbog toga za Android uređaje mora da se pravi dosta kompromisa, jer nećeš moći da napraviš optimalnu verziju za svaki uređaj.

Sličan je problem i za desktop uređaje, ima različitih browsera koji će na različitim modelima raditi drugačije, a samim tim će i proizvod moći da se razlikuje. Tako da, rekao bih da je najveći izazov pokriti što više različitih platformi.

Koje tehnologije su najzastupljenije i sta su im specificnosti?

Single Page aplikacije, koje su od 2015. godine do sada i dalje najzastupljenije. Najpopularniji frameworks koji se koriste su React, Angular i Vue.js.

Sta mislis da je buducnost front enda?

Definitivno će Single Page aplikacije i ti frameworks - React, Angular i Vue.js sigurno ostati, a pojavljivaće se i novi. Ali, mislim da će se paradigma promeniti od one bazirane na tehnologiji, na onu baziranu na proizvod. Fokus će biti na tome šta ti je omogućeno da praviš u kontekstu proizvoda. Verujem da se u tom smeru krećemo- Kako mogu da što brže i što lakše sa trenutnim tehnologijama omogućim pravljanje proizvoda na webu.

Što se tiče developera, neće biti dovoljno da budu samo front end developeri koji rade na front endu, već će morati da, na neki način, rade product development. S obzirom na tehnologije koje sada imamo i koje će se tek razviti, imaćemo na raspolaganju dodatno znanje uz koje ćemo moći da napravimo ceo proizvod.

Posetite profil kompanije Enlight Engineering.

Galerija