Valami biztosan elromlik, és ez így van rendjén: hogyan lehet háromfős csapattal hackathont nyerni

Milyen csoportban szoktál részt venni hackathonokon? Kezdetben kijelentettük, hogy az ideális csapat öt főből áll – egy menedzser, két programozó, egy tervező és egy marketinges. De a döntőseink tapasztalata azt mutatta, hogy három fős kis csapattal is lehet hackathont nyerni. A döntőt megnyerő 26 csapat közül 3 versenyzett és győzött muskétásokkal. Hogyan csinálták – olvass tovább.

Valami biztosan elromlik, és ez így van rendjén: hogyan lehet háromfős csapattal hackathont nyerni

Mindhárom csapat kapitányával beszélgettünk, és rájöttünk, hogy stratégiájukban sok a közös. A poszt hősei a PLEXeT (Sztavropol, a Távközlési és Tömegkommunikációs Minisztérium jelölése), a „Composite Key” (Tula, a Tatár Köztársaság Információs és Kommunikációs Minisztériumának jelölése) és a Jingu Digital (Jekatyerinburg, az Ipari és Kereskedelmi Minisztérium jelölése). Az érdeklődők számára a parancsok rövid leírása rejtőzik a macska alatt.
ParancsleírásokPLEXeT
A csapat három főből áll: egy fejlesztő (web, C++, információbiztonsági kompetenciák), egy tervező és egy menedzser. A regionális hackathon előtt nem ismertük egymást. A csapatot az online tesztelés eredményei alapján állította össze a kapitány.
Kompozit kulcs
A csapatnak három fejlesztőtársa van – fullstack tíz éves informatikai, háttér- és mobiltapasztalattal, valamint az adatbázisokra összpontosító háttérrendszer.
Jingu Digital
A csapat két programozóból áll - backend és AR/Unity, valamint egy tervező, aki a csapat irányításáért is felelős volt. Megnyerte az Ipari és Kereskedelmi Minisztérium jelölését

Válasszon olyan feladatot, amely közel áll kompetenciáihoz

Emlékszel, hogy volt ilyen mondóka „dráma klub, fotóklub, és én is szeretnék énekelni”? Azt hiszem, sokaknak ismerős ez az érzés - amikor körülötted minden érdekes, akkor új módon szeretnéd megmutatni magad az irányodban, és kipróbálni egy új iparágat/fejlesztési területet. A választás itt csak a csapat céljain és kockázatvállalási hajlandóságán múlik – el tudod-e fogadni a hibádat, ha a hackathon kellős közepén hirtelen rájössz, hogy irreális ezt a problémát megoldani? A „Nem vagyok jó a mobilfejlesztésben, de mi a fene ez?” kategóriába tartozó kísérletek nem mindenkinek valók. Te olyan amatőr vagy?

Artem Koshko (ashchuk), parancs „Összetett kulcs”: „Kezdetben azt terveztük, hogy kipróbálunk valami újat. A regionális szakaszban kipróbáltunk több nuget csomagot, amelyekhez soha nem jutottunk el, és a Yandex.Cloudot. A végén telepítettük a CockroachDB-t a Kubernetesben, és megpróbáltuk az EF Core segítségével áttelepíteni rá. Néhány dolog jól ment, néhány nem annyira. Így új dolgokat tanultunk, kipróbáltuk magunkat, és megbizonyosodtunk a bevált módszerek megbízhatóságáról.”.

Hogyan válasszunk feladatot, ha elkalandozik a tekintete:

  • Gondolja át, milyen kompetenciák szükségesek az eset megoldásához, és hogy minden csapattag rendelkezik-e ezekkel
  • Ha hiányoznak a kompetenciák, tudod-e ezeket kompenzálni (más megoldást találni, gyorsan tanulni valami újat)
  • Végezzen rövid kutatást arról a piacról, amelyre terméket készít
  • Számolja ki a versenyt – melyik pályára/cégre/feladatra megy a legtöbb ember?
  • Válaszolj a kérdésre: mi fog téged a legjobban hajtani?

Oleg Bakhtadze-Karnaukhov (PLEXeT), PLEXeT parancsot: „Döntést hoztunk a tízórás repülõtéren – éppen a leszállás pillanatában postán érkezett a nyomok listája és a feladatok rövid ismertetése. Azonnal beazonosítottam négy olyan feladatot, amelyek programozóként érdekesek voltak, és amelyekre az indulás utáni akcióterv egyértelmű volt - mit kell tenni és hogyan fogjuk csinálni. Ezután felmértem az egyes csapattagok feladatait és felmértem a verseny színvonalát. Ennek eredményeként a Gazprom és a Távközlési és Tömegkommunikációs Minisztérium feladatai között választottunk. Tervezőnk édesapja olajjal és gázzal foglalkozik, felhívtuk és kérdéseket tettünk fel neki az iparággal kapcsolatban. Végül rájöttünk, hogy igen, ez érdekes, de semmi alapvetően újat nem tudunk majd nyújtani, és a kompetenciákat sem fogjuk biztosan összehozni, mert túl sok iparági sajátosság van, amit figyelembe kell venni. fiókot. A végén kockáztattunk, és az első pályára mentünk.”

Diana Ganieva (dirilean), Jingu Digital csapata: „A regionális szakaszon a mezőgazdasággal kapcsolatos feladatunk volt, a döntőn pedig az AR/VR az iparban. Őket az egész csapat választotta ki, hogy mindenki kiélhesse képességeit. Aztán kiszűrtük azt, amit nem találtunk olyan érdekesnek.”

Csináld meg a házi feladatodat

És most nem a kód előkészítéséről beszélünk – általában értelmetlen ezt megtenni. Ez a csapaton belüli kommunikációról szól. Ha még nem játszottatok együtt, nem tanultátok meg megérteni egymást és megegyezni, összejönni párszor előre és szimulálni egy hackathont, vagy legalább felhívni egymást, hogy átbeszéljük a lényeget, gondolkozzatok el. cselekvési terven keresztül, és megvitassák egymás erősségeit és gyengeségeit. Akár találhat is néhány esetet, és megpróbálhatja megoldani – legalább sematikusan, a „hogyan juthatunk el A pontból B pontba” szintjén.

Ebben a bekezdésben azt kockáztatjuk, hogy mínuszokat fogunk a karmában és a kommentekben, mondván, hogy lehetséges, nem értesz semmit, de mi van az izgalommal, a lendülettel, az érzéssel, hogy most egy prototípus születik az őslényből húsleves (helló, biológia órák).

Igen, de.

Az improvizáció és a lendület csak akkor jó, ha csak csekély eltérést mutat a stratégiától – különben túl nagy a kockázat ahhoz, hogy munka, étkezés vagy alvás helyett a káosz feltakarítására és a hibák kijavítására fordítsunk időt.

Oleg Bakhtadze-Karnaukhov, a PLEXeT csapata: „A csapatom tagjai közül senkit sem ismertem a verseny előtt, az online tesztelési szakaszban szerzett kompetenciáik és értékeléseik alapján választottam ki és hívtam meg őket. Amikor megnyertük a regionális hackathont, és rájöttünk, hogy még mindig együtt kell mennünk Kazanyba és befejeznünk a hackathon projektet Sztavropolban, úgy döntöttünk, hogy összeülünk és edzünk. A döntő előtt kétszer találkoztunk – találtunk egy véletlenszerű problémát és megoldottuk. Olyasmi, mint egy ügybajnokság. És már ebben a szakaszban problémát láttunk a kommunikációban és a feladatok elosztásában - míg Polina (dizájner) és Lev (menedzser) a céges stíluson, a termékjellemzőkön gondolkodtak, piaci adatokat kerestek, addig nekem sok szabadidőm volt. Így rájöttünk, hogy egy nehezebb jelölést kell vállalnunk (nem dicsekszem, csak leginkább webhez kapcsolódó feladatokkal találkoztunk, de nekem ez csak egy-kettő) és jobban be kell kapcsolódnom a munkafolyamatokba. . Ennek eredményeként a döntőn, az előkutatás során matematikai modellezéssel és algoritmusok fejlesztésével foglalkoztam.”

Artem Koshko, Composite Key csapat : „Szellemileg jobban felkészültünk, szó sem volt a kódex elkészítéséről. Már előre kiosztottuk a szerepköröket a csapatban – mindhárman programozók vagyunk (teljes stackünk és két backendünk van, ráadásul tudok egy kicsit a mobilfejlesztésről), de egyértelmű volt, hogy valakinek el kell vállalnia a tervezői és menedzser szerepei. Így lettem, tudtomon kívül, csapatvezetőként, kipróbáltam magam üzleti elemzőként, előadóként és prezentációkészítőként. Úgy gondolom, ha nem beszélünk erről előre, nem tudtuk volna helyesen gazdálkodni az idővel, és nem jutottunk volna el a végső védekezésig.”

Diana Ganieva, Jingu Digital: „Nem készültünk a hackathonra, mert úgy gondoljuk, hogy a hackprojekteket a semmiből kell elkészíteni – ez tisztességes. Előzetesen, a számok kiválasztásának szakaszában volt egy általános elképzelésünk arról, hogy mit akarunk csinálni.".

Nem dolgozhat egyedül a fejlesztőkkel

Diana Ganieva, a Jingu Digital csapata: „Három, különböző területeken dolgozó szakember van a csapatunkban. Véleményem szerint ez az ideális kompozíció hackathonhoz. Mindenki a saját dolgával van elfoglalva, és nincs átfedés vagy feladatmegosztás. Még egy ember fölösleges lenne.”

A statisztikák azt mutatják, hogy csapataink átlagos összetétele 4-5 fő, köztük (jó esetben) egy tervező. Általánosan elfogadott, hogy meg kell erősíteni a csapatot különböző kategóriájú fejlesztőkkel - annak érdekében, hogy mind az adatbázist bővíthessük, mind a „géppel” meglephessünk, ha bármi történik. Legjobb esetben is visznek magukkal egy tervezőt (ne sértődj meg, szeretünk!), a prezentáció és a felületek végül nem rajzolódnak ki. A menedzser szerepét még gyakrabban elhanyagolják – általában ezt a funkciót a csapatkapitány, részmunkaidős fejlesztő vállalja magára.
És ez alapvetően rossz.

Artem Koshko, Composite Key csapat: „Valamikor sajnáltuk, hogy nem vettünk a csapatba speciális szakembert. Míg a tervezéssel valahogy meg tudtunk birkózni, addig az üzleti tervvel és egyéb stratégiai dolgokkal nehéz volt. Kirívó példa, amikor a célközönséget és a piac volumenét, TAM-ot, SAM-ot kellett kiszámítani.”

Oleg Bakhtadze-Karnaukhov, a PLEXeT csapata: „A fejlesztő hozzájárulása a termékhez messze nem a munka 80%-a, ahogyan azt általában hiszik. Nem mondható el, hogy a srácoknak könnyebb volt - a feladatok szinte teljes zöme rájuk hárult. A kódom felületek, prezentációk, videók, stratégiák nélkül csak szimbólumok halmaza. Ha helyettük több fejlesztő lett volna a csapatban, valószínűleg sikerült volna, de minden kevésbé tűnt volna profinak. Főleg a bemutató általában fele a sikernek, ahogy nekem úgy tűnik. A védekezés során, majd a való életben pár perc múlva senkinek nem lesz ideje megérteni, hogy a prototípus valóban működik-e. Ha elragad a sémáktól, senki sem hallgat rád. Ha túl messzire megy a szöveggel, mindenki megérti, hogy maga sem tudja, mi a fontos a termékében, hogyan kell bemutatni, és kinek van rá szüksége.”

Időgazdálkodás és pihenés

Emlékszel arra, hogy az olyan gyermekkori rajzfilmekben, mint a „Tom és Jerry”, a szereplők gyufát tettek a szemhéjuk alá, hogy ne csukják be őket? A tapasztalatlan (vagy túlzottan lelkes) hackathon résztvevői nagyjából így néznek ki.

A hackathonon könnyű elveszíteni a kapcsolatot a valósággal és az időérzékkel – a légkör kedvez a féktelen kódolásnak, pihenés, alvás, játékteremben való bolondozás, partnerekkel való kommunikáció vagy mesterkurzusok megszakítása nélkül. Ha ezt úgy kezeled, mint a világbajnokságot vagy az olimpiát, akkor igen, talán így kellene viselkedned. Nem igazán.

Artem Koshko, Composite Key csapat: „Sok chak-csakunk volt, nagyon sok – az asztalunk közepére épült belőle egy tornya, ez tartotta fent a morálunkat, és megfelelő időben adott szénhidrátot. Szinte mindig együtt pihentünk és dolgoztunk, és nem pihentünk külön. De másképp aludtak. Andrey (fullstack fejlesztő) szeret aludni nappal, Denis és én szeretünk aludni éjjel. Ezért nappal többet dolgoztam Denisszel, éjjel pedig Andrejjal. A szünetekben pedig aludt. Nem volt semmiféle munkarendszerünk, feladatmeghatározásunk, inkább minden spontán volt. De ez minket nem zavart, mert jól megértjük és kiegészítjük egymást. Segített, hogy kollégák vagyunk és szorosan kommunikálunk. Andrey korábbi gyakornoka vagyok, Denis pedig gyakornokként érkezett a céghez.”

És itt van egyébként ugyanaz a chak-csak hegy.

Az általunk megkérdezett résztvevők szinte mindegyike a kompetens időgazdálkodást nevezte meg a hackathon sikerének fő kritériumaként. Mit jelent? A feladatokat úgy osztja el, hogy legyen ideje aludni és táplálkozni, és a feladatokat ne végezzék el szabályosan. minden összeomlott, de minden csapattag számára kényelmes tempóban.
Valami biztosan elromlik, és ez így van rendjén: hogyan lehet háromfős csapattal hackathont nyerni

Oleg Bakhtadze-Karnaukhov, a PLEXeT csapata"Nem az volt a célunk, hogy minél több órát dolgozzunk, hanem hogy minél tovább eredményesek maradjunk. Hiába aludtunk napi 3-4 órát, úgy tűnt, sikerült. Elmehetnénk a játékterembe, vagy lóghatnánk partnereink standjánál, és a szokásos időt szánhatnánk az étkezésre. A második napon igyekeztünk Levet minél jobban tehermentesíteni, hogy eleget tudjon aludni és legyen ideje rendbe tenni magát az előadás előtt. A hackathon próbák sokat segítettek, hiszen már értettük a feladatok elosztását, a napi rutin összehangolását - egyszerre ettünk, aludtunk és ébren voltunk. Ennek eredményeként egyetlen mechanizmusként működtek.”

Nem tudjuk, hogy ennek a csapatnak hogyan sikerült Agomoto’s Eye-t rávennie a hackathonra, de a végén még egy videót is sikerült forgatniuk a projektről, és egy tájékoztatót is készítettek.

Néhány tipp a hackathon időgazdálkodásához:

  • Váltson nagyról kicsire – bontsa fel a feladatokat kis blokkokra.
  • A hackathon egy maraton. Mi a legfontosabb egy maratonon? Próbálj meg ugyanabban a tempóban futni, különben a táv végére leesel. Próbáljon megközelítőleg azonos intenzitással dolgozni, és ne nyomja magát a kimerültségig.
  • Előre gondolja át, hogy az egyes résztvevőknek mi lesz a feladata, és mennyi időt vesz igénybe. Segít elkerülni a meglepetéseket, amikor a határidő fél óra múlva van, és nincs készen egy nagy munka.
  • Ellenőrizze a koordinátákat a feladatok körének beállításához. Úgy érzed, hogy jól haladsz, és még van időd? Nagyszerű – alvásra vagy a prezentáció befejezésére fordíthatja.
  • Ne ragaszkodjon a részletekhez, dolgozzon nagy vonalakban.
  • Nehéz szünetet tartani a munkában, ezért szánj időt kifejezetten alvásra, kikapcsolódásra vagy kikapcsolódásra. Beállíthat például riasztásokat.
  • Szánjon időt a beszéd előkészítésére és begyakorlására. Ez mindenkinek és mindig kötelező. Erről az előzőek egyikében beszéltünk hozzászólások.

És létezik ez az alternatív vélemény is. Ön melyik lehetőséget választja – kódolásos kínzást vagy háborút a háborúval, és ebédidőt?

Diana Ganieva, a Jingu Digital csapata: „A csapatunkban minden ember egy dologért felelős, nem volt, aki helyettesítsen minket, így nem tudtunk műszakban dolgozni. Amikor már végképp nem volt erőnk, három órát aludtunk, attól függően, hogy mennyi munka maradt még a résztvevőre. Egyáltalán nem volt idő lógni, nem vesztegetjük erre a drága időt. A termelékenységet támogatták, bár rövid alvással, és finomságokat teával – energiaital vagy kávé nélkül.”

A vágás alatt több hasznos link is rejtőzik, ha az időgazdálkodás témájában szeretne elmerülni. Jól fog jönni a hétköznapokban - hidd el a bejegyzés írójának, aki mindig késik :)
Az idők hódítóinak — A Kaspersky Lab projektmenedzsere hatékony időgazdálkodási technikákat gyűjtött össze a Netology blogban: kiáltás
- Egy jó cikk kezdőknek a Cossa-n: kiáltás

Próbálj meg kitűnni

Valami biztosan elromlik, és ez így van rendjén: hogyan lehet háromfős csapattal hackathont nyerni

Fentebb írtunk arról a csapatról, amely kiosztotta a projekt védelmét. Ők voltak az egyedüliek a pályájukon, és biztosak vagyunk benne, hogy a több mint 3500 résztvevő között nem volt még hozzájuk hasonló.
Természetesen nem ez volt a fő oka a győzelmüknek, de mindenképpen pluszt hozott – legalábbis a szakértők szimpátiáját. Különböző módon lehet kitűnni – néhány nyertesünk minden fellépést egy viccel kezd, arról, hogyan készítettek bombát (Szaharov csapat, helló!).

Nem foglalkozunk vele részletesen, hanem egyszerűen megosztunk egy esetet a PLEXeT csapatától – úgy gondoljuk, érdemes poénká válni egy anya barátjának fiáról.

Oleg Bakhtadze-Karnaukhov, PLEXeT csapat: „Rájöttünk, hogy a kanyar előtt járunk, és úgy döntöttünk, jó lenne egy átigazolási ügyben az elővédelembe érkezni. A projektben rengeteg technikai részlet, algoritmusmagyarázat található, amelyek egyáltalán nem szerepelnek az előadásban. De meg akarom mutatni. A szakértők támogatták az ötletet, sőt segítettek optimalizálni. Meg sem nézték az első verziót, azt mondták, soha nem fognak ilyen festményt olvasni. Csak mi védekeztünk.”

Valami biztosan elromlik, és ez rendben van.

A hackathonon, akárcsak a hétköznapi életben, mindig van hely a hibáknak. Még akkor is, ha úgy tűnik, hogy mindenre gondoltál, ki nem késett el közülünk egy repülőről/vizsgáról/esküvőről pusztán azért, mert az autók úgy döntöttek, hogy elakadnak egy forgalmi dugóban, a mozgólépcső úgy döntött, hogy elromlik, és az útlevelet elfelejtették otthon?

Oleg Bakhtadze-Karnaukhov, PLEXeT csapat: „Polinával az egész éjszakát prezentációval töltöttük, de végül elfelejtették feltölteni a számítógépre abban a teremben, ahol a védekezés zajlott. Megpróbáljuk megnyitni egy flash meghajtóról, és a víruskereső vírusként érzékeli a fájlt, és törli. Ennek köszönhetően csak egy perccel a fellépésünk vége előtt sikerült mindent elindítani. Sikerült bemutatni a videót, de így is nagyon idegesek voltunk. Hasonló történet történt velünk az elővédés során. A prototípusunk nem indult el, Polina és Lev számítógépei lefagytak, és valamiért az enyémet a hangárban hagytam, ahol a mi pályánk volt. És bár reggel látták a munkánkat a szakértők, úgy néztünk ki, mint egy különc csapat, akinek szórólapja, szép szavakkal, de termékkel nem volt. Figyelembe véve, hogy sok résztvevő úgy érzékelte a matematikai modelleken végzett munkámat, hogy „ül, rajzol valamit, nem néz a számítógépbe”, a helyzet nem volt túl jó.

Furcsán hangzik, de ebben a helyzetben csak ki kell lélegezni. Már megtörtént. Nem, nem te vagy az egyetlen, mindenki elrontja. Még ha ez végzetes hiba is, de élmény. És arra is gondoljon, hogy az Önt értékelő személy fakapnak fogja ezt az esetet?

Oszd meg kommentben, hogy melyik kompozíciót érzed a legkényelmesebben egy hackathonon dolgozni (emberek és szakemberek egyaránt), és hogyan építed fel a folyamatokat egy csapatban.

Forrás: will.com

Hozzászólás