Netokracija

Oni su web developeri u robotici: Ne razvijaju web stranice već sustav uz koji bilo tko može upravljati flotom robota

U poznatoj hrvatskoj robotičkoj tvrtki upravo su web developeri zaduženi za to da se naprednim i inovativnim autonomnim robotima može lako i jednostavno upravljati. S nama su podijelili kako izgleda posao tih - malo drugačijih web developera.

Kad neka tvrtka oglasi da traži web developere, većina onih kojima je taj oglas namijenjen ima otprilike predodžbu o tome što to radno mjesto podrazumijeva. Razlike mogu biti uglavnom u tome koliko su kompleksni i veliki webovi na kojima se radi, u korištenim tehnologijama te koliko full-stack ili specijaliziranog developera traže. Nitko, međutim, ne očekuje da će web developer programirati – sučelja kojima se upravlja robotima. A upravo takve web developere traže u Gideon Brothersu!

Fun fact: roboti zapravo dolaze u flotama i njima treba moći upravljati

Gideon poznajemo kao hardversku i AI tvrtku – njihovi autonomni roboti pomažu optimizirati poslovanje, uglavnom u području logistike, klijentima diljem svijeta.

A roboti zapravo dolaze u flotama. I njima se treba moći upravljati, zadavati im poslove i misije (primjerice, prijevoz paleta od točke A do točke B) te ih treba integirati s raznim drugim sustavima koje klijenti koriste, primjerice sa softverom za upravljanje skladištem. Upravo time – dizajnom, implementacijom, održavanjem i testiranjem web sučelja putem kojeg korisnici sve to mogu raditi – u Gideonu se bavi web tim. Ili, kako je to bolje objasnio njegov voditelj, Slaven Stražanac:

Sustav za upravljanje flotom autonomnih robota kojeg razvijamo je, pored samih fizičkih robota, jedini proizvod s kojim naši krajnji korisnici imaju doticaj. Sve funkcionalnosti Gideon robota su prema krajnjem korisniku izložene preko ovog upravljačkog sustava.

Gideonova tehnologija autonomije je među najnaprednijima u svijetu i prepoznati smo kao top inovator u našoj industriji. No upravo mi u web timu smo zaslužni za to da flotom naših robota može upravljati doista bilo tko, bez nekog specifičnog iskustva u robotici.

Većina članova Gideonovog web tima nalazi se u Osijeku, a većina ostalih timova te proizvodna i testna hala su u Zagrebu.

Prije dolaska u Gideon nijedan web developer nije imao sličnog iskustva, ali sve se da naučiti…

Kad već spominje znanja i iskustva u robotici, ne mogu ne pitati Slavena što netko treba znati kako bi mogao razvijati sustave za upravljanje robotima. Odnosno, treba li za taj posao biti posebno potkovan u robotici ili umjetnoj inteligenciji ili je moguće iz klasičnog web developera “prekvalificirati” se u onog za upravljanje robotima.

Slaven kaže da nitko od trenutnih pet članova tima prije dolaska u Gideon nije imao iskustva s razvojem sučelja za upravljanje autonomnim robotima:

Očekujemo samo određeno tehničko predznanje i iskustvo u razvoju web aplikacija. Zato je prva faza po dolasku u Gideon upoznavanje s načinom rada autonomnog robota.

To uključuje i upoznavanje s ključnim komponentama softverskog stacka koji robotu daje autonomiju jer u tom kontekstu moramo razumjeti web komponente na kojima mi radimo. Nakon toga slijedi dublje upoznavanje samog web stacka što obično ide tako da novi član tima prvo preuzme jednostavnije, a zatim sve složenije zadatke.

Tehnološki stack koji Slaven spominje ne razlikuje se previše, kaže, od tehnologija koje se koriste kod klasičnog razvoja weba – baze podataka (Postgres i MongoDB), REST API sloja (za koji koriste Python i Flask framework) i, konačno, web aplikacije, za što koriste Angular. Iako su mali tim, podijeljeni su na specijaliste za frontend i one za backend, ali svaki član tima ipak bi morao moći preuzeti zadatke s oba područja.

Web tim mora “biti na ti” sa svim što rade drugi timovi

Suradnjom sa gotovo svim timovima Gideonov web tim kompleksan proizvod kao što je robot čine jednostavnim za korištenje.

Ono po čemu se razvoj weba u Gideonu ipak razlikuje od razvoja web stranica jest suradnja web tima s praktički svim ostalim timovima u tvrtci.

Kako bi upravljanje kompleksnim proizvodom kao što je autonomno robotsko vozilo mogli “prebaciti” u inutitivan sustav koji je jednostavan za korištenje te se uklapa u potrebe i procese korisnika, trebaju sve to dobro poznavati, kaže Slaven:

Robot je plod rada različitih specijaliziranih timova, a mi surađujemo s gotovo svima njima. Primjerice, kod pitanja upravljanja zadacima koje robot obavlja i integracije s hardverom – surađujemo s našim Brain timom.

Na temama koje se tiču planiranja kretanja i koordinacije, a trebaju biti izložena na korisničko sučelje, surađujemo s navigacijskim timom. Kad je riječ o specifičnim pitanjima lokalizacije robota, mapiranja prostora i slično surađujemo sa SLAM timom.

Svaki od tih timova radi na vrlo specifičnim temama i koristi specifične tehnologije koje nemaju veze sa web developmentom. Međutim, za njihovu uspješnu integraciju u web sustav kakav mi razvijamo potrebno je do određene mjere poznavati svaku od njih. To naš rad čini vrlo zanimljivim, ali i izazovnim te bih rekao da je to glavna razlika u odnosu na “klasičan” web development.

Između Osijeka i Zagreba: Web developeri s robotom se najčešće druže u 3D simulatoru

Martin Pavić iz zagrebačkog ureda savršeno surađuje s kolegama iz tima koji su u Osijeku zahvaljujući, među ostalim, i 3D simulatoru robota.

A kako robotima život zapravo tek počinje kad odu iz Gideona, prema skladištima i halama svojih naručitelja, mora se misliti i na taj dio poslovanja. Zbog toga web tim surađuje i s prodajom te timovima koji brinu za zadovoljstvo korisnika kako bi što bolje prepoznali, shvatili i pobrinuli se da od sučelja za upravljanje dobiju najbolje. Nije im strana ni direktna komunikacija s korisnicima  i njihovim IT odjelima kako bi uspješno Gideonove robote integrirali s ostalim alatima koje koriste.

Sve to Gideonovi web developeri često rade – bez robota. Odnosno, nemaju uvijek uza se fizičkog robota. Kako bi razvoj web sučelja tekao neovisno od razvoja robota, a i budući da se tim nalazi na dvije lokacije, razvili su simulator robota.

Većina članova web tima nalazi se u Osijeku, a većina ostalih timova te proizvodna i testna hala su u Zagrebu. Svakodnevno smo u kontaktu putem komunikacijskih platformi, a osim toga, sve web funkcionalnosti možemo razvijati bez pristupa fizičkom robotu.

Naime, jedna od komponenti našeg softverskog stacka je i 3D simulator koji vjerno simulira robota i njegove funkcionalnosti, kao i njegovu okolinu. Tako možemo razvijati i testirati funkcionalnosti na vlastitom razvojnom računalu kao da smo spojeni na pravog fizičkog robota.

Za sve web developere koji bi htjeli izaći iz okvira “klasičnog” razvoja web stranica i okušati u programiranju sučelja za upravljanje robotima – i 3D simulatora robota, Gideon Brothers trenutno zapošljava nove članove web tima. Traže backend i frontend developere neovisno o lokaciji, u Zagrebu ili Osijeku.