Waarom je zou moeten deelnemen aan hackathons

Waarom je zou moeten deelnemen aan hackathons

Ongeveer anderhalf jaar geleden ben ik begonnen met meedoen aan hackathons. Gedurende deze periode heb ik deelgenomen aan meer dan twintig evenementen van verschillende omvang en thema's in Moskou, Helsinki, Berlijn, München, Amsterdam, Zürich en Parijs. Bij alle activiteiten was ik betrokken bij data-analyse in een of andere vorm. Ik kom graag naar nieuwe steden, leg nieuwe contacten, kom met frisse ideeën, implementeer oude ideeën in een korte tijd en de adrenalinestoot tijdens het optreden en de bekendmaking van de resultaten.

Dit bericht is het eerste van drie berichten over het onderwerp hackathons, waarin ik je vertel wat hackathons zijn en waarom je zou moeten gaan deelnemen aan hackathons. Het tweede bericht gaat over de donkere kant van deze evenementen - over hoe de organisatoren fouten hebben gemaakt tijdens het evenement en waar deze toe hebben geleid. Het derde bericht zal gewijd zijn aan het beantwoorden van vragen over hackathon-gerelateerde onderwerpen.

Wat is een hackathon?

Een hackathon is een meerdaags evenement met als doel een probleem op te lossen. Meestal zijn er meerdere problemen bij een hackathon, elk gepresenteerd als een apart nummer. Het sponsorende bedrijf geeft een beschrijving van de taak, successtatistieken (statistieken kunnen subjectief zijn zoals “nieuwigheid en creativiteit”, of ze kunnen objectief zijn – nauwkeurigheid van de classificatie op een uitgestelde dataset) en middelen voor het bereiken van succes (bedrijfs-API’s, datasets, hardware) . Deelnemers moeten binnen de gestelde tijd een probleem formuleren, een oplossing voorstellen en een prototype van hun product laten zien. De beste oplossingen ontvangen prijzen van het bedrijf en de mogelijkheid tot verdere samenwerking.

Hackathon-etappes

Nadat de taken zijn aangekondigd, verenigen de deelnemers aan de hackathon zich in teams: elke ‘eenling’ krijgt een microfoon en spreekt over de gekozen taak, zijn ervaring, het idee en wat voor soort specialisten hij nodig heeft voor de uitvoering. Soms kan een team bestaan ​​uit één persoon die in staat is om op een redelijk hoog niveau zelfstandig alle werkzaamheden aan het project uit te voeren. Dit is relevant voor hackathons op het gebied van data-analyse, maar is vaak verboden of ongewenst voor productevenementen - de organisatoren zijn erop gericht om verder te werken aan het project, maar al in het bedrijf; het gevormde team heeft een aantal voordelen ten opzichte van deelnemers die het product alleen wilden maken. Het optimale team bestaat doorgaans uit 4 personen en bestaat uit: front-end, back-end, datawetenschapper en ondernemer. Overigens is de scheiding tussen datascience- en producthackathons vrij eenvoudig: als er een dataset is met duidelijke statistieken en een scorebord, of als je kunt winnen met code in jupyter notebook, is dit een datascience-hackathon; al het andere - waar je een applicatie, website of iets sticky's moet maken - boodschappen.

Normaal gesproken begint het werk aan een project op vrijdag om 9 uur en is de deadline op zondag 10 uur. Een deel van deze tijd moet worden besteed aan slapen (wakker blijven en coderen is een recept voor mislukking, heb ik gecontroleerd), wat betekent dat deelnemers niet veel tijd hebben om iets van kwaliteit te produceren. Om de deelnemers te helpen zijn bedrijfsvertegenwoordigers en mentoren op de locatie aanwezig.

Het werken aan een project begint met communicatie met bedrijfsvertegenwoordigers, omdat zij de specifieke kenmerken van de taak en de statistieken beter begrijpen en hoogstwaarschijnlijk uw werk uiteindelijk zullen beoordelen. Het doel van deze communicatie is om te begrijpen welke gebieden het meest relevant zijn en waar u uw aandacht en tijd op moet richten.

Tijdens een hackathon werd de taak gesteld om regressie uit te voeren op een dataset met tabelgegevens en afbeeldingen en een duidelijke metriek: RMSE. Nadat ik met de datawetenschapper van het bedrijf had gesproken, realiseerde ik me dat ze geen regressie nodig hadden, maar classificatie, maar iemand van het management besloot eenvoudigweg dat het het beste was om het probleem op deze manier op te lossen. En ze hebben classificatie nodig, niet om een ​​toename van de monetaire statistieken te krijgen, maar om te begrijpen welke parameters het belangrijkst zijn bij het nemen van een beslissing en deze vervolgens handmatig te verwerken. Dat wil zeggen dat het initiële probleem (regressie met RMSE) wordt gewijzigd in classificatie; De prioriteit van de beoordeling varieert van de verkregen nauwkeurigheid tot het vermogen om het resultaat te verklaren. Dit elimineert op zijn beurt de mogelijkheid om stapel- en black box-algoritmen te gebruiken. Deze dialoog heeft mij veel tijd bespaard en mijn kansen om te winnen vergroot.

Nadat u begrijpt wat u moet doen, begint het daadwerkelijke werk aan het project. U moet controlepunten instellen: de tijd waarop de toegewezen taken moeten zijn voltooid; Onderweg is het een goed idee om te blijven communiceren met mentoren – bedrijfsvertegenwoordigers en technische specialisten – dit is handig om de route van uw project aan te passen. Een frisse blik op een probleem kan een interessante oplossing opleveren.

Omdat een groot aantal beginners aan hackathons deelnemen, is het voor de organisatoren een goede gewoonte om lezingen en masterclasses te houden. Meestal zijn er drie lezingen: over hoe u uw idee als product kunt presenteren, een lezing over technische onderwerpen (bijvoorbeeld over het gebruik van open API's bij machinaal leren, zodat u uw speech2text niet in twee dagen hoeft te schrijven, maar gebruik een kant-en-klaar exemplaar), een lezing over pitchen (hoe presenteer je je product, hoe zwaai je correct met je armen op het podium zodat het publiek zich niet verveelt). Er zijn verschillende activiteiten om de deelnemers te stimuleren: een yogasessie, tafelvoetbal en tennis, of een consolespel.

Op zondagochtend presenteer je de resultaten van je werk aan de jury. Bij goede hackathons begint het allemaal met technische expertise: werkt wat jij beweert echt? Het doel van deze controle is om teams met een mooie presentatie en buzzwords, maar zonder product, te verwijderen van de jongens die daadwerkelijk iets hebben gedaan. Helaas is technische expertise niet bij alle hackathons aanwezig, en er zijn gevallen waarin een team met twaalf slides en de mentaliteit “... blockchain, quantum computing, en dan maakt AI het af...” de eerste plaats wint. Dergelijke precedenten komen niet zo vaak voor, maar omdat ze het meest gedenkwaardig zijn, denken veel mensen dat een goede presentatie 12% van de overwinning in een hackathon is. De presentatie is overigens erg belangrijk, maar de bijdrage ervan bedraagt ​​niet meer dan 99%.

Na de optredens van de deelnemers besluit de jury de winnaars toe te kennen. Hiermee is het officiële deel van de hackathon afgerond.

Motivatie om deel te nemen aan hackathons

ervaring

Qua opgedane ervaring is de hackathon een uniek evenement. Er zijn niet veel plekken in de natuur waar je in 2 dagen een idee uit het niets kunt implementeren en direct feedback krijgt op je werk. Tijdens de hackathon worden kritisch denken, teamwerkvaardigheden, timemanagement, het vermogen om in een stressvolle situatie te werken, het vermogen om de resultaten van je werk in een begrijpelijke vorm te presenteren, presentatievaardigheden en vele andere verbeterd. Daarom zijn hackathons een geweldige plek voor mensen met theoretische kennis die praktijkervaring willen opdoen.

prijzen

Normaal gesproken bedraagt ​​het prijzengeld voor de hackathon ongeveer 1.5 - 10 euro voor de eerste plaats (in Rusland - 100-300 duizend roebel). Het verwachte voordeel (verwachte waarde, EV) van deelname kan worden berekend met behulp van een eenvoudige formule:

EV = Prize * WinRate + Future_Value - Costs

waar Prijs — de omvang van de prijs (voor de eenvoud gaan we ervan uit dat er maar één prijs is);
Winstpercentage — kans om te winnen (voor een beginnend team is deze waarde beperkt tot 10%, voor een meer ervaren team - 50% en hoger; ik heb mensen ontmoet die elke hackathon met een prijs verlieten, maar dit is eerder een uitzondering op de regel en op de lange termijn zal hun winstpercentage 100% lager zijn;
Toekomstige waarde - een waarde die de toekomstige winst uit deelname aan een hackathon weergeeft: dit kan winst zijn uit de opgedane ervaring, opgebouwde verbindingen, ontvangen informatie, etc. Deze waarde is bijna onmogelijk nauwkeurig te bepalen, maar u moet deze wel onthouden;
Kosten — kosten van vervoer, accommodatie, enz.

De beslissing om deel te nemen wordt genomen op basis van een vergelijking van de EV van de hackathon met de EV van de activiteit die je zou willen doen als er geen hackathon zou zijn: als je in het weekend op de bank zou willen liggen en in je neus zou peuteren, dan moet je waarschijnlijk meedoen aan de hackathon; als je tijd doorbrengt met je ouders of vriendin, neem ze dan mee in een team voor een hackathon (grapje, beslis zelf), als je freelancer bent, vergelijk dan dollar-uur.

Volgens mijn berekeningen kan ik zeggen dat deelname aan hackathons in Rusland voor de gemiddelde datawetenschapper op het junior-middle-niveau evenredig is aan de geldelijke winst van een gewone werkdag, maar er zijn ook nuances (grootte van het team, type van een hackathon, prijzenfonds, enz.). Over het algemeen zijn hackathons op dit moment geen feest, maar ze kunnen wel een mooie impuls aan je persoonlijk budget geven.

Bedrijfswerving en netwerken

Voor een bedrijf is een hackathon één van de manieren om nieuwe medewerkers aan te nemen. Het zal veel gemakkelijker voor je zijn om te laten zien dat je een geschikt persoon bent en weet hoe je moet werken tijdens een hackathon dan tijdens een interview, terwijl je een binaire boom op het bord draait (wat overigens niet altijd overeenkomt met wat je wilt). doen in een echte baan als datawetenschapper, maar tradities moeten worden gerespecteerd). Zo’n test onder “gevechts”omstandigheden kan een testdag vervangen.

Dankzij een hackathon kreeg ik mijn eerste baan. Tijdens de hackathon liet ik zien dat er meer geld uit data kan worden geperst en vertelde ik hoe ik dat ging doen. Ik startte een project tijdens een hackathon, won het en zette het project vervolgens voort bij het sponsorbedrijf. Dit was de vierde hackathon in mijn leven.

Mogelijkheid om een ​​unieke dataset te verkrijgen

Dit is een zeer relevant punt voor data science-hackathons, waarvan niet iedereen het belang begrijpt. Normaal gesproken verstrekken sponsorbedrijven tijdens het evenement echte datasets. Deze gegevens zijn privé en vallen onder een geheimhoudingsverklaring, wat ons er niet van weerhoudt u het proof of concept op een echte dataset te laten zien, en niet op een speelgoed-Titanic. In de toekomst zullen dergelijke resultaten enorm helpen bij het solliciteren naar een baan bij dit bedrijf of een concurrerend bedrijf, of bij het rechtvaardigen van soortgelijke projecten. Ben het ermee eens dat, als alle overige omstandigheden gelijk blijven, het beter is om projecten te voltooien die positief zijn beoordeeld dan ze niet te hebben. Over het algemeen spelen dergelijke voltooide projecten een vergelijkbare rol als medailles en statussen, maar voor de industrie is hun waarde duidelijker.

Советы

Over het algemeen is het werken op een hackathon een nogal diverse ervaring en is het lastig om een ​​lijst met regels te formuleren. Hier zou ik echter een lijst met observaties willen geven die een beginner kunnen helpen:

  1. Wees niet bang om naar hackathons te gaan, zelfs als je geen ervaring of team hebt. Bedenk hoe jij nuttig zou kunnen zijn. Heeft u bijvoorbeeld een interessant idee of bent u op een bepaald gebied goed thuis? Je kunt je domeinkennis gebruiken bij het formuleren van een probleem en het vinden van niet-triviale oplossingen. Of misschien ben jij de beste in Google? Jouw vaardigheid zal veel tijd besparen als je kant-en-klare implementaties in Github kunt vinden. Of ben je erg goed in het afstemmen van lightgbm-parameters? Ga in dit geval niet naar de hackathon, maar bewijs het in de kagla-wedstrijd.
  2. Tactiek is belangrijker dan manoeuvres. Jouw doel tijdens de hackathon is het oplossen van een probleem. Om een ​​probleem op te lossen, moet je het soms identificeren. Controleer of het door u geïdentificeerde probleem echt relevant is voor het bedrijf. Vergelijk jouw oplossing met het probleem, vraag jezelf af of jouw oplossing optimaal is. Bij het beoordelen van uw oplossing kijken zij eerst naar de relevantie van het probleem en de adequaatheid van de voorgestelde oplossing. Weinig mensen zijn geïnteresseerd in de architectuur van je neurale netwerk of hoeveel handen je hebt ontvangen.
  3. Woon zoveel mogelijk hackathons bij, maar wees niet bang om weg te lopen van slecht georganiseerde evenementen.
  4. Voeg de resultaten van je werk tijdens de hackathon toe aan je cv en wees niet bang om er publiekelijk over te schrijven.

Waarom je zou moeten deelnemen aan hackathons
De essentie van hackathons. Kort

Bron: www.habr.com

Voeg een reactie