Hugbúnaðurinn sem við smíðum fyrir okkur sjálf er Up For Grabs

, By Óttar Guðmundsson
Hugbúnaðurinn sem við smíðum fyrir okkur sjálf er Up For Grabs

Hádegismaturinn hjá Gangverk er nokkuð hefðbundinn, eins og víða á vinnustöðum. Við pöntum vikulega mat frá veitingastað í nágrenninu, en stundum kemur eitthvað upp á og maður þarf að fara heim fyrr en áætlað var. Hvað verður þá um matinn sem maður pantaði?

Við viljum ekki sóa mat og höfum því sett okkur reglu sem kallast Up for grabs (UFG). Ef einhver ætlar ekki að borða matinn sinn lætur viðkomandi vita á Slack matarrásinni okkar að maturinn sé UFG, svo þau sem gleymdu að panta geti gripið tækifærið og fengið sér hádegismat.

Þetta fyrirkomulag virkaði árum saman, en smám saman fór það að virka svolítið frumstætt. Það þurfti að muna hvað maður hafði pantað og bíða eftir að einhver byði matinn sinn. Fleiri spurningar vöknuðu líka. Hver gleymir oftast að panta? Hver grípur oftast mat sem er UFG? Hvaða réttur er vinsælastur þessa vikuna? Hversu miklum mat erum við að bjarga frá sóun?

Þá kviknaði hugmyndin um að smíða okkar eigin hugbúnað utan um matarpantanir, með innbyggðri tölfræði. Hversu erfitt gæti það verið með þeirri gervigreind sem stendur okkur til boða í dag? Hugmyndin var ekki ný. Hún hafði komið upp aftur og aftur í gegnum árin og mörg okkar höfðu reynt að hrinda henni í framkvæmd, en gefist upp þegar ljóst varð hversu mikillar vinnu hún krafðist. Það sem loks gerði hugmyndina að veruleika var að nú var mun auðveldara að framkvæma hana.

Í þessari grein skoðum við hvernig þessi þróun hefur breytt því hvernig við smíðum innri tól, allt frá matarpöntunum til kerfanna sem við notum til að reka fyrirtækið og hugmynda sem gætu að lokum orðið að vörum.

Frá eyðublöðum að sérsmíðaðri vöru

Hádegismatarkerfið okkar byrjaði sem einfalt Google eyðublað. Það skilaði sínu, en skorti ýmsa eiginleika sem höfðu þróast með menningu fyrirtækisins. Við notuðum Slack að mestu til að ræða matinn, en þurftum samt að fara á vefinn til að panta. Skrifstofustjórinn okkar sendi út tilkynningu á föstudögum þegar hann hafði fengið matseðilinn og minnti fólk á að panta. Ef maður gleymdi að panta þurfti að fylgjast grannt með matarrásinni og bíða eftir að einhver byði mat.

Þessir verkferlar höfðu þróast á náttúrulegan hátt í Slack og orðið hluti af vinnustaðamenningunni okkar. Við sáum því tækifæri til að færa þá yfir í stafræna vöru sem sameinaði það besta úr báðum heimum.

Nýja kerfið byggir á einföldum gagnagrunni með API ofan á, sem tengist auðkenningarkerfinu okkar en leyfir jafnframt fólki utan fyrirtækisins að nota kerfið. Ofan á API-inn smíðuðum við tvö forrit: annað fyrir Slack og hitt fyrir vefinn. Vefurinn er notaður til að hafa umsjón með kerfinu, fara yfir pantanir dagsins og hlaða upp nýjum matseðlum. Í Slack er hægt að nota skipanir á borð við /lunch til að kalla fram matseðilinn og /ufg til að bjóða matinn sinn öðrum. Gefið þau samþættingartækifæri fáum við nú sjálfvirkar áminningar um að panta og áminningu ef við gleymum því. Þetta eru aðeins nokkur dæmi um það sem kerfið býður upp á. Fleiri eiginleikar eru þegar til staðar og enn fleiri á leiðinni, til dæmis biðröð fyrir UFG-mat sem úthlutar honum sjálfkrafa í stað þess að fólk þurfi að keppast um að vera fyrst til að ná honum.

Hádegiskerfið í Slack og á vefnum: áminning um pöntun, /lunch veljarinn með vali fyrir hvern dag, stjórnendayfirlit yfir matseðil vikunnar og Slack-straumurinn þar sem pantanir eru boðnar öðrum og teknar
Sama kerfi í Slack og á vefnum. Neðst má sjá færslur þar sem matur er boðinn öðrum og einhver tekur hann.

Eftir nokkurra daga hugmyndavinnu tók útfærslan um tvær vikur í heildina. Við þurftum ekki sérstakan kröfugreiningarfasa, enda höfðum við, notendurnir sjálfir, mótað kröfurnar í gegnum árin. Verkefnið snerist fyrst og fremst um að færa vinnustaðamenninguna okkar yfir í stafræna vöru. Það besta við lausnina er að hún er í innri kóðageymslu okkar, þannig að hver sem er getur gert breytingu sem kemst í notkun skömmu síðar. Útkoman er vara sem endurspeglar Gangverk betur, bæði í útliti og virkni, í stað þess að vera enn eitt almennt hugbúnaðarkerfi. Eftir þessa vel heppnuðu útgáfu af hádegismatarkerfinu vaknaði spurningin: Gætum við beitt sömu aðferð á önnur kerfi sem við notum?

Að velja það besta og sameina innri tól

Matur er skemmtilegur og mikilvægur, en tímaskráning, starfsmannahald og reikningagerð skipta líka máli. Á fyrstu árum Gangverks fór þróunargeta okkar að mestu í verkefni fyrir viðskiptavini, fremur en hugbúnað fyrir okkur sjálf. Við höfðum heldur ekki byggt upp jafn mikla reynslu af okkar eigin innri ferlum og þeim tólum sem þurfti til að styðja við þá.

Eftir því sem fyrirtækið óx lærðum við betur hvernig við vildum starfa og hvar tilbúinn hugbúnaður hentaði okkur ekki. Við enduðum á að nota mörg kerfi: eitt gat leyst A og B vel en stóð sig illa í C, á meðan annað leysti C en var veikara í A og B. Ekkert þeirra endurspeglaði heildstætt hvernig við vildum vinna. Við greiddum fyrir mörg kerfi en þurftum samt að finna leiðir í kringum eyðurnar á milli þeirra. Í stað þess að bíða eftir nýjum eiginleikum, laga verkferlana okkar að kerfunum eða kaupa enn eina lausnina varð sífellt áhugaverðara að smíða þetta sjálf.

Í dag eru tól á borð við time.gangverk.is og admin.gangverk.is að verða hluti af sameiginlegum vettvangi fyrirtækisins. Time heldur utan um tímaskráningu verkefna, en Admin er fyrir ýmis rekstrartengd mál, svo sem starfsmenn, verkefni og reikningagerð. Í stuttu máli getum við smíðað þá útgáfu af verkferlum sem hentar okkur, frekar en að greiða fyrir fjölda eiginleika sem við notum ekki.

Í samtali

Við settumst niður með Atla Þorbjörnssyni↗, stofnanda og forstjóra Gangverks, til að ræða hvað breytist þegar maður hættir að bíða eftir nýjum eiginleikum og fer að smíða þá sjálfur.

[Gangverk:] Hvað varð upphaflega til þess að við fórum að íhuga að smíða þessi tól sjálf?

[Atli:] „Verðhækkanir áttu sinn þátt í því, en stærra vandamál var að við vorum að nota mörg kerfi til að fá þá virkni sem við þurftum. Við vorum að borga fyrir eiginleika sem við nýttum ekki. Á einhverjum tímapunkti fórum við að velta fyrir okkur hvort einfaldara væri að smíða okkar eigin kerfi.“

Atli við skrifborðið sitt með heyrnartól, að skoða Gangverk Admin töfluna yfir tímaskráningar, með tímaskráningu opna á fartölvunni við hliðina
Atli, forstjóri Gangverks, fer yfir tímaskráningar í okkar eigin kerfi.

[G:] Snerist þetta þá fyrst og fremst um kostnað?

[A:] „Kostnaður skipti máli, en sveigjanleiki líka. Aðskilin kerfi gerðu samþættingar erfiðar og þegar fyrirtækið vildi breyta einhverju vorum við háð öðrum. Ef okkur vantaði eiginleika sem var ekki í boði þurftum við annaðhvort að bíða eftir honum, laga verkferlana okkar að kerfinu, smíða sjálf hugbúnað til að leysa vandann eða kaupa enn eina lausnina.“

[G:] Hvenær verður ódýrara að viðhalda eigin hugbúnaði en að kaupa hann?

[A:] „Það er líklega til einhver jafna sem segir til um hvort ódýrara sé að eiga eða leigja hugbúnað. En hún breytist hratt þegar grunnurinn er þegar til staðar og tiltölulega ódýrt er að bæta næsta eiginleika við. Við erum líka í auknum mæli farin að taka að okkur rekstur hugbúnaðar. Við höfum alltaf sinnt því samhliða þróuninni, en nú getum við í auknum mæli boðið áframhaldandi rekstur sem þjónustu. Það gerir það raunhæfari kost en áður að eiga sína eigin lausn og bæta hana stöðugt.“

[G:] Hverju er hægt að breyta núna sem var erfitt áður?

[A:] „Upplifuninni af hugbúnaðinum. Hann getur verið hlýlegri og endurspeglað betur menninguna í fyrirtækinu. Það hljómar kannski yfirborðskennt, þangað til maður áttar sig á því að þetta eru forrit sem fólk notar mögulega á hverjum einasta degi.“

[G:] Hefur þróunarvinnan verið jafn umfangsmikil og þú bjóst við?

[A:] „Fyrir fyrstu MVP-útgáfurnar, já. Við þekkjum verkfærin sem við höfum aðgang að og höfum næga reynslu til að áætla nokkuð vel hvers fyrsta útfærslan krefst. Það sem er erfiðara að sjá fyrir er hvað gerist þegar fólk fer að nota hugbúnaðinn. Starfsfólkið verður fljótt að viðskiptavinum og þá fara að birtast nýjar óskir, jaðartilvik og hugmyndir. Að því leyti er þetta ekkert frábrugðið vinnu fyrir viðskiptavini, nema hvað viðskiptavinurinn getur nú sjálfur bætt eiginleikum við hugbúnaðinn.“

"Starfsfólkið verður fljótt að viðskiptavinum. Að því leyti er þetta ekkert frábrugðið vinnu fyrir viðskiptavini, nema hvað viðskiptavinurinn getur nú sjálfur bætt eiginleikum við hugbúnaðinn.
— Atli Þorbjörnsson, stofnandi og forstjóri

Rými skapað fyrir vöruþróun

Sama hugsun hefur einnig náð til hugmynda sem við vinnum að innanhúss þegar starfsfólk hefur svigrúm til þess. Við söfnum hugmyndunum á einum stað svo þær gleymist ekki og förum reglulega yfir þær til að meta hverjar séu þess virði að þróa áfram. Við köllum þetta 90210. Þeir sem hafa áhuga geta tekið hugmynd að sér og kannað hvort hún hafi möguleika á að verða að einhverju stærra. Nú eru 21 verkefnahugmynd skráðar í kerfið og margar þeirra eru þegar komnar vel áleiðis í þróun. Nokkrar eru orðnar nógu áhugaverðar til að við séum byrjuð að skoða hvort þær geti orðið að vörum utan Gangverks líka.

90210 verkefnahugmyndasíðan opin á fartölvu, sem sýnir innsendar hugmyndir með höfundi, dagsetningu og stöðu, og hnapp til að bæta við nýju verkefni
90210, þar sem verkefnahugmyndum er safnað saman, þær yfirfarnar og þróaðar áfram.

Þetta hefur líka orðið leið til að þjálfa vöruhugsun. Við einblínum ekki aðeins á hvernig eigi að smíða eitthvað, heldur líka á hvaða vandamál við erum að leysa, fyrir hvern og hvernig lágmarksútgáfa vörunnar (MVP) ætti að líta út. Þar sem um innri verkefni er að ræða er minna í húfi og meira svigrúm fyrir tilraunir. Starfsfólk fær samt að vinna með raunverulega notendur og fá endurgjöf frá þeim, en í öruggara umhverfi. Verkefnin nýtast því bæði til að læra á nýja tækni og til að læra hvernig hugmynd verður að vöru.

Gengið of langt, bara til gamans

Hjá Gangverk viljum við líka skemmta okkur, rétt eins og annað venjulegt fólk. Í afþreyingarrýminu okkar er meðal annars hægt að spila pílu og tölvuleiki. Við eigum líka fótboltaspil sem enginn hafði haldið utan um árangurinn í. Þannig að auðvitað smíðuðum við forrit til þess.

Einföld stigatafla hefði dugað, en það er ekki þar sem vöruþróun og tilraunir fá að njóta sín. Einn forritarinn okkar fór því að kynna sér mismunandi stigakerfi til að finna það sem hentaði best. Niðurstaðan varð Glicko-2-stigakerfi, með sérsniðinni útfærslu fyrir liðaleiki og leikjasögu. Hann smíðaði líka netagraf sem sýnir hverjir spila á móti hverjum. Netagrafið er augljóslega óþarft, en vegna áhuga síns á gagnamyndun langaði hann að læra að smíða slíkt. Og það er að hluta til einmitt málið. Þegar svigrúm er fyrir tilraunir og nýsköpun þarf ekki hver einasta ákvörðun í þróuninni að standast sprettáætlunarfund með skýr viðskiptaleg markmið í huga.

Fartölva á fótboltaspilaborðinu sem sýnir forritið: netagraf leikmanna vinstra megin og stigatöfluna hægra megin
Forritið fyrir fótboltaspilið keyrir á borðinu sem það heldur utan um. Netagraf leikmanna er vinstra megin og stigataflan hægra megin.

Stundum smíðum við eitthvað einfaldlega vegna þess að okkur langar að læra hvernig það virkar. Kannski nýtist sú þekking síðar í allt öðru verkefni. Stundum leiðir það til betra hádegiskerfis og stundum gefur það okkur afsökun til að smíða algjörlega óþarft netagraf fyrir fótboltaspilið, sem gerir vinnuna og lífið skemmtilegra.

Gervigreind hefur gert þessar tilraunir mun ódýrari. Þegar það fer saman við þá þróunarreynslu sem við búum nú þegar yfir getum við farið frá hugmynd að vöru sem fólk getur raunverulega notað á tiltölulega skömmum tíma. Það gerir innri tól að frábærum vettvangi fyrir tilraunir sem geta vaxið og orðið að einhverju miklu stærra en við ætluðum í upphafi.