Rasmus Lelumees, Bolt Food

Neid momente on vast küll igaühel olnud, kus teed midagi väga olulist, mida kuidagi ei saa pooleli jätta... aga kõht on vahepeal tühjaks läinud. On see siis bändiproov sõpradega, pika referaadi kirjutamine tähtaja kukkumisele eelneval õhtul, elusuuruses Titanicu mudeli kokkuliimimine... Eks neid põhjuseid toidu koju tellimiseks võib muidugi rohkem olla. Näiteks usun ma, et Itaalia kuningas Umberto ja kuninganna Margherita helistasid 1889. aastal Raffaele Espositole ja tellisid oma Napoli paleesse pitsa vaid selleks, et olla maailma esimesed toidukulleri teenuse kasutajad (ja maailma esimese Margherita pitsa sööjad). Täna on muidugi aastanumbriks 2020 ja toidu kojutellimine toimib natukene teistmoodi, kui 130 aastat tagasi. Oma teadmisi jagas minuga Bolt Foodi toidukulleriteenuse arendusmeeskonna juht Rasmus Lelumees.
 

Õppimise kõrvalt sai koos sõpradega tehtud esimesed ägedad, kuigi lihtsad tööotsad – puutetundlike infopaneelide sisu ja mängude loomine, mõned veebilehtede arendused jne.

Ligikaudu 9 aastat tagasi lõpetas Rasmus parasjagu Hugo Treffneri gümnaasiumit ja pani paika edasise õppimise plaane. Kaalutud sai väga erinevaid võimalusi. Ehitusinseneri kutse oli äge, kaalutud sai ka arstiteaduskonda astumist – aga lõpuks jäi peale hoopis informaatika suund Tallinna Tehnikaülikoolis. Õppimise kõrvalt sai koos sõpradega tehtud esimesed ägedad, kuigi lihtsad tööotsad – puutetundlike infopaneelide sisu ja mängude loomine, mõned veebilehtede arendused jne. Rasmuse jaoks on oluline luua ja arendada asju, mida ta ka ise peaks ägedaks ja aktiivselt kasutaks, näiteks sõidujagamist või teenust, mis toimetaks restoranitoidu kiirelt ja odavalt kodukontorisse. See põhimõte viis ta 2018. aasta sügisel Bolti tööle esmalt tarkvarainsenerina elektritõukerataste projektiga tegelema ning seejärel, mõned kuud hiljem, arendusmeeskonna juhina Bolti toidukulleriteenust looma.

Toidutellimise äpi kirjutamine oli Rasmuse üks esimesi suuremaid töid Boltis – aga kui hästi järele mõelda, siis see ongi suhteliselt mahukas ülesanne. Hästitoimiva kasutajaliidese taga on algoritmid, mis peavad arvestama protsessi kõigi osapoolte vajaduste ja piirangutega. Klient, ehk see, kes tellib, vajab toitu õigel ajal ja õigel temperatuuril. Kuller tahab toidu võimalikult vähese ooteajaga kliendini toimetada. Restoran soovib tellimusi piisavalt, aga mitte liiga palju korraga. Seega, kui härra Raffaele Espositol oli vaja oma peas teha vaid väike arvutus („jooksupoiss jõuab paleesse 24 minutiga, pitsa vajab valmistamiseks ja küpsemiseks 15“), siis äpp arvestab ühest küljest samuti vahemaad kliendi ja restorani vahel ning restorani poolt etteantud toiduvalmistamise aega, teisalt aga võtab arvesse lähima sobiva kulleri asukohta, selle kindla kulleri tavalist keskmist liikumise kiirust, kogemust restorani toiduvalmistamise ajakuluga, aga võib-olla ka liikumistingimusi (Kas sajab lund? Kas liiklus on tihe?) ja veel muid pisikesi tegureid, mis võivad mõjutada toidu jõudmist kliendini. Rasmuse sõnul saab Bolti äpis toidu saabumise aja kalkuleerimise keerukust võrrelda miniatuurse tehisintellektiga.

Algoritmide keerukust iseloomustavad paremini mõisted suurandmed ja masinõppimine: protsessi mõõdetakse mitmete parameetrite abil ja neist leitakse üles masinõppimise abil töödeldavad mustrid. Töötluse tulemuseks on näiteks toidu kohale jõudmise aja prognoos. Kahtlemata on algoritmid siin nagu Tallinna linn, mis ei saa kunagi valmis, kuid lähevad aina paremaks. Rasmus tõdemusel suudavad nad täna kogu protsessi väga palju paremini näha ja kliendile antav tagasiside on tänu sellele üsna täpseks läinud.

lelumees

Meeskonna kasvades on Rasmuse tööülesanded muutunud. Arendusmeeskonna juhina vastutab ta teiste inseneride töö koordineerimise eest, kõrvaldades nende teelt kõik segavad takistused – või teisiti öeldes, loob tingimusi, et igaüks saaks meeskonna eesmärkide saavutamiseks maksimaalselt panustada. Rasmus nendib, et tarkvaraarenduses ametites edasi liikudes jääb inimene teatud mõttes alati tarkvarainseneriks edasi. Otsene koodi kirjutamisele kuluv aeg võib edasi liikudes väheneda, kuid keerukate süsteemide kavandamine jääb alles. Keeruliste tarkvarakomponentide omavahelise suhtlemise läbimõtlemine on inseneritöö ka siis, kui abivahendina kasutatakse üksnes paberit ja pliiatsit. Kuid alati ei pea liikuma edasi, mõnikord võib liikuda ka hoopis, kutsume seda siis nii – kõrvale, täiesti omaette suunale. Nimelt on tarkvaraarenduses üks hea asi see, et kui sul tuleb mõni superhea mõte, siis nende elluviimiseks piisab sul täiesti iseenda teadmistest ja pealehakkamisest.

Tekst: Jaanus Leoste

Fotod: tarkvarainsener Rasmus Lelumees kiigel Bolti puhkenurgas; Bolti toidukuller toimetab toidu tehisintellekti abil kohale õigeaegselt (Jaanus Leoste fotod)