A kutatás és fejlesztés közötti szakadék áthidalása

Onfido Biometrics Team Story

A gépi tanulással kezdődő vállalkozások gyakran szenvednek szakadást a mérnöki és a kutatás között. Az Onfido sem kivétel. Ebben a történetben bemutatom a Biometrics csapat azon útját, amely valóban keresztfunkcionális.

Nem integrált csoport tünetei

Amikor először az Onfidónál kezdtem, majdnem két évvel ezelőtt, a kutatási funkció teljesen elkülönült a mérnöki funkciótól. A funkcionális csoportokon kívül ült, megvan a maga vezetése és saját céljai.

Ez különböző fájdalom pontokhoz vezetett az üzleti életben:

  • A gépi tanulással foglalkozó kutatók úgy érezték, hogy rengeteg időt töltenek elő a kód elkészítésével, amelyben nem voltak szakemberek, sőt még élvezték őket. Sok függőségük volt a DevOps-szal és más, a funkción kívüli mérnökökkel, ami lelassította a fejlődést.
  • A mérnöki csapat panaszkodott az előállított algoritmusok gyártási készségére, amelyek gyakran nem voltak tesztek és nem voltak képesek skálázni. Az nem segített abban, hogy a háttérmérnökök nem igazán csinálták a Python-ot.
  • A vállalkozásnak nem volt láthatója, hogy mi lesz a csővezeték, nem értette, hogy meddig tart egy projekt, és általában csalódott volt a látható haladás hiánya.

Ezeket a témákat láttam más korai szakaszban működő gépi tanuláson alapuló termékcégeknél, amelyek integrált csapatok nélkül működnek. Ezek a feszültségek elronthatják és ronthatják a funkciók közötti bizalmat, leronthatják a fennmaradó empátiát és megsemmisíthetik a vállalkozás teljes funkcióinak hírnevét.

Hogyan integráltuk a csapatokat

Termékmenedzserként csatlakoztam a vadonatúj Biometrics üzletág felügyeletéhez. Bevezettem azokat a folyamatokat, amelyeket korábban használtam a kommunikáció akadályainak lebontására és az empátia felépítésére: funkcionális csapatok és közös célok között.

A csapat egy termékmenedzserként, egy csoportvezetőként, három Ruby / Elixir fejlesztőként és egy gépi tanulási kutatóként indult. Míg a termék és a kutatás Londonban voltak, addig a mérnökök Lisszabonban voltak.

A csapat fejlődése. Elvesző arcok = előléptetések, más csapatokba költözés és a gyakorlat vége. Szerencsére, hogy még senki nem hagyott fel it

A kapcsolatok kiépítése a különböző funkciók között

Az első lépés egy kapcsolat felépítése volt a gépi tanulással foglalkozó kutatóval, aki ezen a ponton még mindig a kutatócsoport részének tartotta magát, és éppen a biometrikus algoritmusokon dolgozott.

Vele dolgoztam, hogy megértsem látását, a problémás teret és az izgalmat. Segített megérteni, mi lehetséges most, és mire sokáig kellene kísérletezni. Értékeljük a hasonló ajánlatok és a potenciális szolgáltatók piacát, és mérlegeljük az építési és vásárlási döntéseket.

Összeállítottuk az algoritmusok listáját, hogy együtt vizsgáljuk meg és rangsoroljuk azokat, tudatosan diverzifikálva a fogadási portfóliónkat úgy, hogy jó mennyiségű rövid távú algoritmus létezzen, kiegyensúlyozva a nagyobb, kockázatosabb kezdeményezésekkel.

Partneri kapcsolatot alakítottunk ki, csakúgy, mint egy miniszterelnök a mérnöki vezetésükkel. Segített abban, hogy ez a gépi tanulás kutatója meglehetősen kereskedelmi gondolkodású és ügyfél-központú, de ezek olyan tulajdonságok, amelyeket meg lehet tanítani. Fontos a partnerség kiépítése.

Céljaink összehangolása

Az egész csapat negyedéves célkitűzéseket és kulcsfontosságú eredményeket (OKR) írt együtt, amelyek amennyire csak lehetséges volt az eredményorientált, nem pedig a output-orientált. Vagyis: „áthelyezni a mutatót x%”, nem pedig „átadni ezt a funkciót”.

Az eredményközpontú OKR-k lehetővé teszik a mérnöki és a gépi tanulást végző kutatók számára, hogy együtt dolgozzanak egy olyan cél elérése érdekében, amelynek mérhető üzleti hatása van, anélkül, hogy előírnák annak elérését. Ez lehetővé tette a kutatók számára, hogy kísérletezzenek a különféle algoritmusokkal a negyedév során, és még ha az egyik sem működött is, akkor is elhagyhatták azt, és kísérletezhetnek egy másik módszerrel annak megoldására.

Minden negyedévben az a célom, hogy felfedezzem egy adott piac igényeit, és meghatározzam, léteznek-e értékes problémák ezen a téren. Ezeknek a tanulásoknak a közvetlen megosztása a gépi tanulással foglalkozó kutatókkal segített felfedezni, mi megvalósítható és hol lehet áttörést és innovációt elérni a piac előtt.

A feszültség feloldása

Miközben az OKR-k együttesen igazították a negyedév célkitűzéseit, ez nem oldotta meg teljesen a mérnöki és a kutatási feszültségeket. Addigra az egyetlen gépi tanulásban részt vevő biometrikus kutató több embert bérelt fel, akik beszámoltak róla, és a Biometria Kutatócsoport identitását akarták létrehozni, elkülönítve magukat a Biometria (mérnöki) csoporttól.

Néhány dolog elősegítette a csapatok közelebb hozását, és végül egy teljesen funkcionális csoport létrehozásához vezetett:

  • A „Team Lead” átnevezése „Engineering Lead” -ra: Fel kellett ismernünk, hogy ha a csapatokat egyesítjük, akkor nem lehet egyetlen csapatvezető, hanem mondatonként egy-egy vezető hármas: termékmenedzsment, mérnöki vezető és kutatási vezető. A vezető szerepek a vonalvezetési felelősséget, valamint az építészeti és stratégiai döntéshozó hatalmat jelölik funkcióikban.
  • Társalgás: A mérnöki és a kutatási funkciók két különböző országban voltak, így a kutatók egész hétig Lisszabonba repülése valóban hozzájárult a kommunikáció akadályainak lebontásához, valamint a két funkció közötti barátság és empátia kialakításához. Összehozott minket, és az emberek egy csapatnak érezték magukat. Sok Pasteis de Nata-t (portugál puding torta) és ízletes portugál Cozido-t hoztak nekünk.
  • A Scrum szertartások adaptálása és a folyamat iterrálása: A mérnökök és kutatók számára a munka jellege vadul különbözik, és Scrum egyszerűen nem vágja le.
Csapat ebéd a londoni Gunpowderben.

A Scrum szertartásai a gépi tanulással foglalkozó kutatókkal rendelkező csapatok számára

A mérnöki munka általában jól meghatározott és biztos. Annyira, hogy egész módszertant építettek a szoftvercsoportok outputjának vagy sebességének mérésére és előrejelzésére. A startup világában a legnépszerűbb az agilis és különféle ízei, például a scrum és a kanban. Miközben a szigorú ish-dörzsölés diétát kezdtük, gyorsan problémákba ütközöttünk.

Ezzel szemben a kutatási munka sok ismeretlennel foglalkozik. Gyakran megvalósíthatósági tanulmánnyal kezdődik, hogy kiderüljön, vajon valami valóban reális-e és lehetséges. Ez több kísérletben zajlik, és nagyon sokáig tarthat, hogy bemutatható eredményeket érjünk el.

A kutató frissítései gyakran „a kísérlet még futott” vagy „igen, még mindig olvasok papírokat”. Ha részletesebben leírnák, mit csinálnak, akkor a mérnökök üresen bámulnák a gépi tanulási ismeretek hiánya miatt. Jegyeik szintén nagyon magas becslésekkel rendelkeztek, és több sprintot továbbvittek. Mindkettő csalódást okozott nekik. Úgy érezték, hogy nem tudnak húsos frissítéseket adni, és büszkék lehetnek előrehaladásukra.

A kutatók gyakran nem értették meg, miről sem a mérnökök beszélnek. Kevésbé voltak érdekeltek és érdeklődtek a szélesebb platform-architektúra iránt, amelybe modellek végül beépülnének.

Annyira rossz lett, hogy a kutatók kihagyták az állást, mert nem találták azt értékesnek, és ez tovább okozta a csoport diszfunkcióját.

A változások, amelyek segítettek:

  • Péntek összefoglalása: Ahelyett, hogy csatlakozna az stand-uphoz (hivatalosan a Daily Scrum in scrum), a kutatók minden nap csatlakoznak minden más nap, végül csak pénteken, ahol hosszabb tájékoztatást nyújtanak arról, amit elérték az adott héten. Ez több időt hagyott számukra kísérletezni, és több műsoridőt adtak nekik munkájuk megközelítésének és összefüggéseinek leírására. A mérnökök szintén frissített információkat mutattak az adott hét előrehaladásáról, és összefüggésbe vették projekteiket és építészeti döntéseiket.
  • Álljon össze a lassúságról: Összeállítva minden állást, összefoglalom az eseményeket és az embereket, amelyekre az emberek ma összpontosítanak. @ @ Megemlítek minden olyan kutatásból, ahol releváns, például az algoritmusok integrálásának előrehaladását vagy a csoport feloldásához szükséges bemenetemet. Ez segített a kutatóknak a hurokban maradni.
  • Algoritmusos csevegés: Egy külön tárgyaláson minden kutató elmagyarázta, mit dolgoznak, az algoritmusuk miként működött, vagy nem működött még, a megközelítésüket, hol voltak vele. Ez magában foglalta a nem gépi tanulással rendelkező emberek alapvető továbbképzését, elősegítette a versenyfeltételek megteremtését és a közös nyelv megteremtését.
  • Közös háttérmagasság-finomítás és sprint-tervezés: Ez önmagában nem változás. Fontos kiemelni, hogy az egész csapat csatlakozott a hátralévő finomítási ülésekhez és a sprinttervezéshez, mivel elősegítette a sprint célkitűzéseinek összehangolását, összekapcsolta őket az OKR-kel és összeállíthatta az utat az algoritmus-kutatás befejezésétől a gyártásig, szakaszos kidolgozás és elindulás mindenki számára élni.
  • Nem becsült kutatási jegyek: Megállapítottuk, hogy a kutatási feladatokra vonatkozó becslések valójában nem segítettek becsülni a munka elvégzésének előrejelzését. Úgy döntöttünk, hogy pontot dobunk a kutatók számára, de a jegyeket sprintben tartottuk, hogy a péntek utáni kapcsolatok során beszélgetéseket indítsunk.
  • A híd bérlése: A csapat legfontosabb bérleti díja a Python mérnök volt, aki áthidalta a különbséget a kutatók Python kódja, valamint a Ruby és az Elixir háttérmérnökök között. Ez a szerepe meghatározta annak meghatározását, hogyan megyünk az akadémiai típusú kódtól a termelési fokozatú skálázható kódig.
A sikerek ünneplése akkor is, ha távol vagyunk. Link a tweethez.

Záró megjegyzések

Ma a Biometria csapata olyan összetartó, mint valaha. Azóta két új funkciót üdvözöltünk csapatunkban: Szolgáltatásmenedzsment / Adatelemzés Londonban, és Lisszabonban tesztmérnökünk teljes munkaidőben kezdett támogatni minket, ahelyett, hogy megosztanánk a többi csapattal.

Együtt ünnepeljük a sikereket a laza és a videokonferencia során, gratulálunk egymásnak a nagyszerű munkához és a csoport kevésbé sikeres projektjeiből való tanuláshoz. A termék negyedévente látogatja Lisszabont. A kutatás és a szolgáltatás félévente megy Lisszabonba. A Engineering and Test évente legalább kétszer érkezik Londonba. Folyamatosan lógunk, tanulunk egymástól és iteráljuk a folyamatainkat.

Milyen jó utazás volt eddig!

Álljon fel a zoom alatt. Valaki mondhatott valami vicceset.

Elolvashatja a Daniel Serrano (3 perc olvasás), egy körülbelül egy éve írt történetét egy szoftverfejlesztő nézetében, tehát addigra a fenti módosításokat még nem valósították meg.

PS: Nagyon szórakoztató, hogy miként ment át négy különböző fodrász mindezen képek között.