Kako programeri napreduju u svom poslu i koji ih to izazovi muče - na dnevnom nivou? - Netokracija.rs

Kako programeri napreduju u svom poslu i koji ih to izazovi muče – na dnevnom nivou?

Kako se suočavamo sa ozbiljnim nedostatkom kadra u IT industriji, stiče se utisak da ako ste programer nemate nikakvih problema. S druge strane, suočeni ste sa konstantnom promenom trendova, novim tehnologijama i zahtevima klijenata. Programerima je lako? Ne bismo se složili! Kako izlaze na kraj sa svakodnevnim izazovima koje ovaj posao nosi? Probali smo da saznamo.

Kada govorimo o potencijalnim izazovima kod programskih jezika, poslednjih nekoliko godina u stručnoj javnosti posebno je interesantna Java o kojoj se sve više diskutuje.

Relativno nizak learning curve ovog programskog jezika (iako programeri sa kojima smo razgovarali nisu saglasni sa tom tvrdnjom i kažu da to samo isprva tako deluje budući da je Java dugo prisutna, te postoji ogroman broj kurseva i literature) tj. relativno brza mogućnost učenja ovog programskog jezika, ponekad automatski znači i mnogo “Java developera” i “Android developera”. Kako onda razlikovati nekog ko želi brzo da uđe u svet development-a od nekog ko zaista zna šta radi?

Uz to, budući da se ovaj pristup programiranju primenjuje duži niz godina, Java developeri se često suočavaju i sa legacy kodom što predstavlja potpuno novi set izazova.

Kako se nositi sa zaostavštinom Jave, a u isto vreme uveriti klijenta da njegove želje ponekad nisu baš izvodljive? Kako, paralelno sa tim, stalno održavati korak sa novom tehnologijom? Odgovore smo potražili među Java programerima u domaćoj kompaniji enjoy.ing.

‘Legacy’ kod: Teret ili prikriveni blagoslov?

“Ja se ne slažem sa tim da se Java brzo uči”, kaže Jelena Mikavica, Senior Software Developer/Line Manager u ovoj kompaniji. “Osoba koja ima predznanje o programiranju može relativno lako ući u svet development-a, ali ne i neko ko to znanje ne poseduje. Java je ogromna i pokriva razne domene tako da se lako uoči razlika između nekog ko zna osnovne koncepte i nekog ko želi brzo da uđe u taj svet”, objašnjava ona.

Razumevanje potreba (što klijenata, što tržišta) i pronalaženje balansa između njih, svakodnevni je zadatak programera svakog ranga – od juniora do seniora. Neretko se dešava da se u okviru IT kompanije prepozna da je neko rešenje loše, a ono je došlo kao isključivi zahtev klijenta. Šta raditi u tom slučaju? Kako pronaći zlatnu sredinu u kojoj su zadovoljni i klijent i ljudi koji rade na proizvodu.

U tim situacijama moraš pronaći pravi način da klijentu sugerišeš da to možda i nije najpametniji način za rešavanje datog problema. Tada primenjuješ sve ono što ti padne na pamet, a što je prikladno. Morate biti dovitljivi, a jako je važno imati i dobro podeljene uloge u timu i to zaista nije toliko strašno – zato i postoje ljudi čiji je posao da se bave samo time. Projektni menadžeri u ovakvim slučajevima dosta pomažu timu koji se bavi razvojem.

Tomislav Đenić, Tech Lead u kompaniji enjoy.ing, kaže da je u programiranju, kao i u ostalim oblastima najbolje nove stvari učiti kroz posao, a upravo tome služe interne radionice.

S druge strane, Tomislav Đenić, Tech Lead na RG projektu u enjoy.ing-u, kaže da mu je najveći izazov usklađivanje biznis zahteva sa postojećim sistemom. “Programeri ponekad mogu da naprave quick fix i da to trenutno radi, ali se takvo rešenje ne uklapa u arhitekturu sistema. Veliki je izazov napisati dobar kod koji će uz sve biznis zahteve koji stižu i za par godina funkcionisati kako treba”, naglašava on.

Legacy kod, međutim, uopšte ne mora imati negativnu konotaciju. Dušan Milojević, Senior Software Developer/Line Manager smatra da takav kod ponekad može biti mnogo bolji od koda napisanog u skorije vreme. Naravno, takvi slučajevi zavise od projekta na kome se radi. Pravi je izazov prolaziti kroz tuđi kod, ali čak i tada može se mnogo naučiti o tehnici pisanja, dodaje Milojević.

Kako programeri ostaju u koraku sa tehnologijom i dobrim praksama?

Pisanje koda je posao koji u stopu prati i konstantno usavršavanje. Idelana situacija je, slažu se Netokracijini sagovornici, kada bi se moglo izdvojiti više vremena za učenje novih stvari, a zatim to novostečeno znanje primeniti i u praksi. Imajući to na umu, složni su da i klijenti isto tako moraju da shvate potrebu za dodatnom edukacijom, posebno u segmentu razumevanja ekosistema u kojem digitalni proizvod treba da funkcioniše.

Međutim, kako znanje nikad nije na odmet, tada na scenu stupaju lične strategije za učenje novih stvari. Dušan dodaje da ovome u prilog svakako idu i napori koje njihova firma ulaže kako bi potpomogla edukaciju svojih zaposlenih

Prema dosadašnjem iskustvu pokazalo se da je najbolja praksa razmena iskustava među članovima tima. Upravo zato i organizujemo interne edukacije EKS Labs (enjoy.ing Knowledge Sharing Labs) gde svako od kolega ima priliku da sa ostatkom tima podeli svoja novostečena znanja.

Jedan od najvećih problema sa kojima se susreću ljudi u developmentu je kada klijentu moraju saopštiti da rešenje koje je on tražio nekad nije najpametnija opcija, kaže Jelena Mikavica, Senior Software Developer/Line Manager u ovoj kompaniji.

Pored toga, organizuju se i eksterne radionice na kojima spoljni saradnici (eksperti za pojedine tehnologije) drže posebne radionice. “Eksterna predavanja su zasnovana na potrebi kompanije da se određeni tim usavrši u nekoj oblasti ili dobije neka nova znanja i veštine koja su im potrebna za uspešno savladavanje budućih projekata”, kaže Tomislav i ističe da to nije uvek materija vezana za tehničku oblast:

Najbolje je kada se te nove stvari uče kroz posao i to je idealna situacija. Kvalitet rada se umnogome podiže i kada vam starije kolege provere kod i mentorišu vas. Takođe, često u okviru tima imamo i tech razgovore na kojima pričamo o nekom konceptu u programiranju kroz prizmu našeg projekta – gde bismo mogli da ih primenimo.

Dakle, kako ocenjuju naši sagovornici, sve to zapravo zavisi od ljudi i tima, a sama edukacija se vrši na više nivoa – od radionica, preko biblioteke, do posete konferencijama.

‘Kvalitet pre rokova – jer cenimo odnos koji imamo sa klijentom’

Još jedan od problema koji se tokom razgovora nametnuo bio je i problem rokova – kako deadline utiče na kreativnost? Sprečavaju li rokovi programere da umesto najboljeg rešenja klijentu isporuče ono koje samo zadovoljava potrebe projekta?

Uvek je bolje nešto uraditi kvalitetno nego ga završiti u određenom roku, kaže Jelena. “Ako je rad na jednom projektu procenjen na 16 sati, a ti vidiš da ti je za to ipak potrebno više vremena, onda je bolje probiti postavljeni rok. Tako sprečavamo neke veće probleme koji se potencijalno mogu javiti kasnije”. Tomislav na to dodaje:

Naša kompanija uglavnom radi na dugoročnim projektima. To su neke saradnje koje traju i po nekoliko decenija, a takvi projekti su never ending process – samo se dalje unapređuju i usavršavaju. Samim tim odnosi koji se razvijaju sa klijentima su zapravo mnogo dublji. Oni imaju puno vremena da se upoznaju i uspostave najbolji mogući nivo komunikacije, a time se lakše prevazilazi i probijanje rokova.

Dušan Milojević, Software Developer/Line Manager, smatra da iako legacy kod može biti prepreka u radu, to nije uvek nužno negativna stvar jer ima onih savršeno napisanih.

To je, kako Jelena dodaje, veliki adut kompanija koje uspostavljaju dugoročna partnerstva sa klijentima – odnos je takav da se čak i najveći izazovi daleko lakše prevazilaze, nego u slučaju kada sa klijentom sarađuješ jednokratno ili tek nekoliko meseci. “Tada kolege koje dolaze možemo vrlo detaljno uputiti u projekat, bili oni juniori ili seniori – svima je potrebna pomoć. I upravo zato, zaključuju naši sagovornici, kultura enjoy.ing-a bazira se na postavljanju pitanja, timskom radu i davanju neizostavnog feedback-a koji je nezaobilazan proces čak i za kandidate koji ne prođu razgovor za posao.

Za kraj, Jelena, Tomislav i Dušan, napominju da se svaki izazov u poslu, ma koliko on bio velik ili mali, rešava kroz dobru komunikaciju, konstantnu edukaciju, radionice, timski rad i fer i korektan odnos prema klijentima. Tako se sve “muke”, pa i one programerske, lakše podnose i na njima se uči – težeći ka što kvalitetnijem kodu, ali i finalnom proizvodu.

Kompanija enjoy.ing trenutno ima veliki broj otvorenih pozicija i u Beogradu i u Nišu, a više informacija možete pronaći na zvaničnoj stranici kompanije posvećenoj karijerama.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Startapi i poslovanje

Wonder Dynamics Nikole Todorovića otvara studio u Novom Sadu – podrška stigla i od Stivena Spilberga!

U savetodavnom odboru ovog startapa nalaze se poznati američki investitori, vodeći stručnjaci za razvoj veštačke inteligencije i neka od najvećih imena svetske kinematografije među kojima su Stiven Spilberg i Džo Ruso. Sa Nikolom Todorovićem, koji je jedan od osnivača, razgovaramo o njegovom odlasku u SAD, građenju karijere u Holivudu i pokretanju startapa sa glumcem Tajem Šeridanom, zvezdom filma Ready Player One.

Novost

Nebojša Radović je novi direktor za akviziciju korisnika u kompaniji Zynga koja stoji iza igre FarmVille

Američka kompanija Zynga, pored čuvene mobile igre FarmVille, stoji iza velikog broja svetski popularnih igara koje igraju milioni igrača širom sveta. Njen novi direktor za akviziciju korisnika je Nebojša Radović.

Novost

Kompanija Quantox Technology organizuje novi humanitarni CS:GO turnir – početni fond 1.000.000 dinara

Od 3. do 4. aprila kompanija Quantox Technology organizovaće drugi po redu humanitarni turnir u popularnoj video igri CS:GO. Cilj je da se prikupe novčana sredstva za sve one koji se bore sa zdravstvenim poteškoćama.

Propustili ste

Karijere

Razgovori sa seniorima: Kako domaću IT industriju vidi softverski inženjer?

Jelena Lazić iz kompanije Centili deli svoja razmišljanja.

Office Talks Podcast

Planovi Playrixa za studio u Srbiji

Gost redakcije Netokracije u novog epizodi Office Talks podcasta bio je Mirko Topalski, CEO game dev kompanije PlayrixRS. Sa njim nakon prošlogodišnjeg intervjua po drugi put detaljno razgovaramo o poslovanju u industriji razvoja igara u Srbiji nakon akvizicije Eipixa od strane ruskog giganta Playrixa.

Startapi i poslovanje

Listty kao ‘Instagram za muziku’ otkriva nam šta naši prijatelji slušaju i zašto je muzika bolja kada se deli sa drugima

Ako čujete dobru pesmu verovatno želite da je podelite sa svojim prijateljima. Startap iz Srbije sa servisom Listty omogućava upravo to i nastoji da objedini najbolje od poznatih muzičkih servisa u okviru jedne aplikacije.

Startapi i poslovanje

Otvoren poziv za startape iz Srbije za ViennaUP konferenciju, prijavite se već sada

Grad Beč nekoliko godina unazad organizuje niz događaja za startape koji su se kroz različita izdanja pretvorili u jedan od najvećih inovacijskih festivala u regionu - Vienna UP. Ove godine počinje 27. aprila i trajaće do 12. maja.

Startapi i poslovanje

Novosadski Anari AI dobio investiciju od $2.000.000 za proizvodnju AI čipova u cloudu

Ova srpsko-američka kompanija je za dva meseca zatvorila investicionu 'seed' rundu vođenu od strane nemačkog fonda Earlybird VC, koji je po prvi put investirao u jedan srpski startap. U investiciji su učestvovali i fondovi Acequia Capital i Serbian Entrepreneurs kao i Erica Ries, osnivač Lean Startup-a.

Startapi i poslovanje

€1.000.000 privredi Srbije iz SAD kroz projekat Tesla Nation

Ovaj projekat nastoji da razvije privredne veze Srbije i sveta uz pomoć dijaspore i kompanija koje su se udružile da ga podrže, a cilj mu je da promoviše Srbiju u inostranstvu kao zemlju inovatora i izuzetnih IT profesionalaca.