Autor: Borko Barić – Development team leader, Triple Innovations
Psi i mačke. Dinamo i Hajduk. Starkovi i Lannisteri. Štrumpfovi i Gargamel. Neke zavade traju toliko dugo i toliko su nam postale uobičajene da gotovo više i ne znamo kako su počele. Nitko se ni ne pita zbog čega i dalje traju, to je jednostavno „onako kako stvari jesu“. Jedna od tih epskih razmirica je i ona između IT-a i businessa, ili možda jezgrovitije, između programera i ne-programera.
Programeri vs. ne-programeri ili…?
Razlozi za konflikt su višestruki: dok je business u pravilu usmjeren ka osvajanju tržišta, maksimizaciji profita i smišljanju nekih novih fora, IT se tradicionalno radije okreće tehničkoj izvrsnosti, procesnoj kvaliteti te hvatanju ili čak promicanju najnovijih tehnoloških trendova. Također, u IT-u često sjede introverti zaokupljeni konceptima kao što su „quiet time“ i „in the zone“, dok su ljudi iz businessa u pravilu komunikativniji (da ne kažemo brbljaviji) te skloniji sastancima i traženju odgovora odmah i sad.
Od samih početaka tvrtke Triple Innovations suočavali smo se s čestim i obilnim zahtjevima businessa. Kada smo u jednom trenutku shvatili da gotovo sve vrijeme trošimo na repetitivne i minimalno kreativne zadatke, ponudili smo klijentu alat pomoću kojeg ekipa iz businessa može sama kreirati nove promocije koje im zadovoljavaju 80% potreba. Iako je inicijalno bilo zamjerki na takvo ograničenje, kasnije se dogodila upravo suprotna situacija: unutar novozadanih granica business je postao još kreativniji, a zbog kvalitetnog alata, time-to-market, taj mitski indikator uspješnosti, bio je bolji nego ikada.
Kako smo srušili granice i postali putnici balonom
Kada smo prije par godina došli u situaciju da se natječemo za CPQ rješenje (Configure, Price, Quote rješenje za brzu izradu ponuda iz kompleksnog produktnog portfolia) kod jedne velike međunarodne telekomunikacijske tvrtke, odlučili smo priču pogurati korak dalje. Odlučili smo da ovoga puta nećemo učiniti konfigurabilnima samo proizvode, već i poslovnu logiku. Zašto bi za svaku manju izmjenu klijent morao zvati nas? Zašto ne bismo sve predvidive izmjene stavili na raspolaganje samim korisnicima te uštedjeli i sebi i njima vrijeme koje onda možemo uložiti u nešto zanimljivije. Vođeni idejom da business može sam raditi konfiguraciju bez pomoći developera, odlučili smo podići kvalitetu posla koji radimo i koji nudimo.
Cijela priča nije bila nimalo jednostavna. Klijent doduše jest tražio određenu dozu konfigurabilnosti, međutim mi smo se odlučili napokon iskoristiti svoje mukom stečeno iskustvo i pomaknuti ljestvicu jedan stupanj gore: omogućiti im da rade bez IT-a! Najveći izazov nije bio razviti rule-based engine koji bi mogao prožvakati sve što korisniku treba. Ne, puno teže je bilo shvatiti što ti ne-developeri tamo u businessu zapravo žele te, još gore, kako razmišljaju. Za to, bilo je potrebno da gorespomenuti Snoopyji i Garfieldi nađu zajednički jezik (Ok, možda Snoopy i Garfield nisu najbolji primjer jer se obojica većinu vremena izležavaju i ništa ne rade, ali sigurno netko s obje strane misli da je usporedba na mjestu). Razlike u mindsetu bile su očite od samoga početka: potpuno različita poimanja dogovora, nepostojeći „definition of done“ s jedne strane te redovito nerazumijevanje sasvim očitih stvari s obje. No, ubrzo smo shvatili da i nismo tako različiti. Budući da kreatori poslovnih procesa ionako većinom u svom poslu koriste Excel, potrebno je bilo “samo” omogućiti da logika formula u našem engineu slijedi logiku Excel kompleksnosti, i svi će biti sretni (pod „samo“, naravno, podrazumijevamo hektolitre developerskih i analitičarskih krvi, znoja, suza…).
Inspiraciju smo našli u nekim postojećim AI frameworcima, koji su nas potaknuli da se s klasičnog proceduralnog pristupa primaknemo onom s expression treejevima (izrazdbenim stablima, copyright pending 😊). Na taj smo način mogli izračune prikazati manje matematički, a više slijedno, što je bilo puno razumljivije nekome tko ne provodi dane gledajući u programski kod. Svu izračunsku logiku smo ugradili na back endu te pozivali putem APIja i time dobili na brzini i stabilnosti.
Konačno, nakon bezbroj iteracija aplikacija je napokon bila gotova, a korisnikova poslovna logika u potpunosti migrirana u novi sustav. Rezultati su bili van svih očekivanja: korisnici ne samo da su prihvatili novi alat, nego su ga ubrzo počeli koristiti na načine koji nam nisu ni pali na pamet prilikom izrade. Na primjer, sami su zaključili da korištenjem mogućnosti stavljanja timestampa na neko pravilo mogu efektivno dobiti promociju koja vrijedi samo u zadanom periodu, što uopće nije ni bilo u zahtjevima. Novostvorene granice su opet potakle kreativnost i odvele nas na neslućena mjesta, poput iznenadnog putovanja narvalom.
Zahtjevi koji danas dolaze od tog klijenta nisu dosadni i repetitivni; sada i sami razumiju mogućnosti našeg rješenja i zajedno s nama rade na njegovoj budućnosti. Sve ono što je jednostavno odrađuju sami, bez potrebe da uopće zovu IT-evce.
Ono kada Snoopy i Garfield dijele snove (i ležaljku)
Ključ je, kao i uvijek, bio u promjeni. Promjeni načina razmišljanja, promjeni prirode odnosa s klijentom i, iznad svega, promjeni u tome kako gledamo sami na sebe. Ako nismo samo netko tko odrađuje posao, već želimo zajedno s klijentom doći do nekog cilja, lakše ćemo razumjeti i vlastite mogućnosti i ograničenja te tako lakše rasti i biti bliže onome što možemo postati.
A Snoopy i Garfield se mogu zajedno izležavati i sanjati iste snove.