Щось обов'язково піде не так, і це нормально: як виграти хакатон командою із трьох осіб

Яким складом ви зазвичай ходите на хакатони? Спочатку ми заявляли про те, що ідеальна команда складається з п'яти осіб – управлінця, двох програмістів, дизайнера та маркетолога. Але досвід наших фіналістів показав, що виграти хакатон можна невеликим складом із трьох осіб. З 26 команд, які перемогли у фіналі, 3 змагалися та виграли мушкетерським складом. Як їм це вдалося читати далі.

Щось обов'язково піде не так, і це нормально: як виграти хакатон командою із трьох осіб

Ми поспілкувалися з капітанами всіх трьох команд і зрозуміли, що у стратегії їхньої поведінки є багато спільного. Герої цієї посади – команди PLEXeT (Ставрополь, номінація Мінкомзв'язку), «Композитний ключик» (Тула, номінація Міністерства інформатизації та зв'язку Республіки Татарстан) та Jingu Digital (Єкатеринбург, номінація Мінпромторгу). Для тих, кому цікаво, короткий опис команд сховали під кат.
Описи командPLEXeT
У команді три особи - розробник (веб, C++, компетенції в ІБ), дизайнер та управлінець. До регіонального хакатона не знайомі. Команду зібрав капітан на основі результатів онлайн-тестування.
Композитний ключик
У команді три розробники-колеги — fullstack з десятирічним досвідом в ІТ, backend та mobile та backend з ухилом до баз даних.
Jingu Digital
Команда складається з двох програмістів – backend та AR/Unity, а також дизайнера, який також відповідав за менеджмент команди. Перемогли у номінації Мінпромторгу

Вибирайте завдання, яке близьке до ваших компетенцій

Пам'ятаєте, був такий віршик «драмгурток, гурток по фото, а ще мені співати полювання»? Думаю, що багатьом знайоме це почуття — коли цікаво все довкола, хочеться і у своєму напрямку по-новому себе показати, і нову галузь/сферу розробки помацати. Вибір тут залежить тільки від цілей вашої команди та готовності йти на ризик — чи зможете прийняти свою помилку, якщо раптом на середині хакатона зрозумієте, що витягти це завдання нереально? Експерименти з розряду «не нишпорю у мобільній розробці, але чим чорт не жартує» — на аматора. Чи ви аматор?

Артем Кішко (ashchuk), команда «Композитний ключик»: «Ми спочатку задумували спробувати щось новеньке. На регіональному етапі спробували і кілька пакетів, до яких ніяк руки не доходили, і Яндекс.Хмара. На фіналі розгорнули CockroachDB у Kubernetes, спробували накотити на нього міграції за допомогою EF Core. Щось добре пішло, щось не дуже. Отже, ми і новому навчилися, і себе перевірили, і переконалися в надійності перевірених підходів»..

Як вибрати завдання, якщо розбігаються очі:

  • Подумайте, які компетенції потрібні, щоб вирішити цей кейс, і чи є вони у всіх членів команди
  • Якщо компетенцій не вистачає - чи зможете ви їх компенсувати (вигадати інший шлях рішення, швидко навчитися новому)
  • Проведіть короткий ресерч ринку, для якого робитимете продукт
  • Прорахуйте конкуренцію — на який трек/компанію/завдання піде найбільше людей
  • Дайте відповідь на запитання: що драйвуватиме вас найсильніше?

Олег Бахтадзе-Карнаухов (PLEXeT), команда PLEXeT: «Ми ухвалювали рішення на десятигодинній пересадці в аеропорту — якраз у момент приземлення нам на пошту впав перелік треків та короткі формулювання завдань. Я одразу виділив штуки чотири завдання, які мені як програмісту цікаві і з яких зрозумілий план дій після старту — що потрібно зробити і як ми це робитимемо. Потім прикинув завдання кожного члена команди та оцінив рівень конкуренції. У результаті обирали між завданнями Газпрому та Мінкомзв'язку. У нашого дизайнера батько працює з нафтогазом — ми йому зателефонували та поставили питання щодо галузі. У результаті зрозуміли, що так, цікаво, але чогось принципово нового ми запропонувати не зможемо і за компетенціями точно не витягнемо, тому що надто багато галузевої специфіки треба враховувати. У результаті ризикнули та пішли на перший трек».

Діана Ганієва (dirilean), команда Jingu Digital: «У регіональному етапі ми мали завдання, пов'язане із сільським господарством, а на фіналі — AR/VR у промисловості. Вибирали всією командою, щоб кожна людина змогла реалізувати свої здібності. Після того відсіювали те, що нам здалося не таким цікавим».

Робіть домашню роботу

І ми зараз не про заготівлю коду — займатися таким взагалі безглуздо. Йдеться про комунікацію у команді. Якщо ви ще не зігралися, не навчилися розуміти один одного і домовлятися, зберіться кілька разів заздалегідь і змоделюйте хакатон, або хоча б зателефонуйте, щоб проговорити основні моменти, продумати план дій, обговорити сильні та слабкі сторони один одного. Можна навіть знайти якийсь кейс і спробувати його вирішити — хоч би схематично, на рівні «як прийти з пункту А до пункту B».

За цей абзац ми ризикуємо наловити мінусів у карму та коментарів, мовляв, як же так, ви нічого не розумієте, а як же азарт, драйв, відчуття, що зараз із первинного бульйону (привіт, уроки біології) народиться прототип.

Так, АЛЕ.

Імпровізація і драйв хороші тільки коли стають лише невеликим відступом від стратегії — інакше надто великі ризики витратити час на розгрібування хаосу та виправлення помилок, замість попрацювати, поїсти чи поспати.

Олег Бахтадзе-Карнаухов, команда PLEXeT: «Нікого з членів моєї команди я до конкурсу не знав – вибрав та запросив їх, ґрунтуючись на компетенціях та оцінках на етапі онлайн-тестування. Коли ми виграли регіональний хакатон і зрозуміли, що нам ще їхати разом до Казані та доробляти проект хакатону у Ставрополі, вирішили, що збиратимемося та тренуватимемося. До фіналу ми зустрілися двічі — знаходили рандомне завдання та вирішували його. Щось на кшталт кейс-чемпіонату. І вже на цьому етапі ми побачили проблему в комунікації та розподілі завдань — поки Поліна (дизайнер) та Лев (менеджер) думали над корпоративним стилем, фічами продукту, шукали дані щодо ринку, у мене залишалося багато вільного часу. Так ми зрозуміли, що потрібно брати номінацію складніше (не хвалюся, просто в основному нам траплялися завдання, пов'язані з Інтернетом, а мені це на раз-два) і мені потрібно більше залучатися до робочих процесів. У результаті на фіналі під час попереднього ресерчу я займався математичним моделюванням, розробляв алгоритми».

Артем Кошко, команда "Композитний ключик" : «Ми готувалися швидше морально, про заготівлю коду навіть не йшлося. Ще заздалегідь розподілили ролі в команді — ми втрьох усі програмісти (у нас fullstack і два backend, плюс я трохи нишпорю в мобільній розробці), але було зрозуміло, що комусь доведеться взяти на себе ролі дизайнера та управлінця. Ось так непомітно для себе я став тимлідом, спробував себе в ролі бізнес-аналітика, доповідача та presentation maker. Думаю, якби ми заздалегідь це не проговорили, то нам би не вдалося правильно розподілити час, і на фінальний захист ми б не вийшли».

Діана Ганієва, Jingu Digital: «До хакатона не готувалися, бо вважаємо, що проекти на хаках мають бути зроблені з нуля – це чесно. Напередодні, на етапі вибору треків, у нас був готовий загальний концепт того, що хочемо зробити».

На одних розробниках не виїхати

Діана Ганієва, команда Jingu Digital: «У нас у команді троє спеціалістів у різних галузях. На мою думку, це ідеальний склад для хакатона. Кожен зайнятий своєю справою і немає перетинів та поділу завдань. Ще одна людина була б зайвою».

Статистика показала, що середній склад наших команд – від 4 до 5 осіб, серед яких (у кращому разі) один дизайнер. Прийнято вважати, що треба посилювати команду розробниками різних мастей — щоб і в базу спромогтися, і «машинкою» здивувати якщо що. У кращому випадку, ще прихоплюють із собою дизайнера (не ображайтеся, ми вас любимо!), Презентація та інтерфейси самі себе не малюють, зрештою. Роль управлінця нехтують ще частіше — зазвичай цю функцію бере на себе капітан команди, розробник за сумісництвом.
І це докорінно неправильно.

Артем Кошко, команда "Композитний ключик": «У якийсь момент ми пошкодували, що не взяли до команди профільного фахівця. Якщо з дизайном ми якось змогли впоратися, то з бізнес-планом та іншими стратегічними речами було складно. Яскравий приклад – коли потрібно було порахувати цільову аудиторію та обсяг ринку, TAM, SAM».

Олег Бахтадзе-Карнаухов, команда PLEXeT: «Внесок розробника в продукт — це далеко не 80% роботи, як вважається. Не можна сказати, що хлопцям було простіше — лежав на них майже весь основний масив завдань. Мій код без інтерфейсів, презентації, відео, стратегії просто набір символів. Якби в команді замість них були ще розробники, ми б, напевно, впоралися, але все виглядало б менш професійно. Особливо презентація — це загалом половина успіху, як мені здається. За час захисту та потім у реальному житті за пару хвилин ніхто не встигне зрозуміти, чи справді працює твій прототип. Якщо захопишся схемами, то ніхто не слухатиме тебе. Переборщиш із текстом — усі зрозуміють, що ти сам не знаєш, що головне у твоєму продукті, як його подати і кому він потрібний».

Тайм-менеджмент та відпочинок

Пам'ятаєте, як у мультфільмах дитинства типу «Тома і Джеррі» герої ставили собі сірники на віки, щоб вони не закривалися? Приблизно також виглядають недосвідчені (або надто захоплені) учасники хакатонів.

На хакатоні легко втратити зв'язок з реальністю і відчуття часу — атмосфера сприяє нестримному кодингу без перерв на відпочинок, сон, валяння дурня в ігровій кімнаті, спілкування з партнерами або відвідування майстер-класів. Якщо ставитися до цього як до чемпіонату світу чи олімпіади, то так, можливо так і варто поводитися. Насправді ні.

Артем Кошко, команда "Композитний ключик": «У нас було багато чак-чака, дуже багато — посередині нашого столу з нього було збудовано вежу, вона підтримувала нам бойовий дух і підкріплювала вуглеводами в потрібний момент. Відпочивали та працювали майже весь час разом, окремо не відпочивали. А ось спали по-різному. Андрій (fullstack-розробник) любить спати вдень, Денис і я вночі. Тому з Денисом я більше працював удень, а з Андрієм уночі. А сам спав у перервах. Якоїсь системи роботи та постановки завдань у нас не було — швидше за все було спонтанно. Але нам це не заважало, бо ми добре один одного розуміємо та доповнюємо. Тут допомогло те, що ми колеги і тісно спілкуємось. Я – колишній стажист Андрія, а Денис прийшов у компанію моїм стажистом».

А ось, до речі, та сама гора чак-чака.

Грамотний тайм-менеджмент майже всі опитані учасники назвали головним критерієм успіху на хакатоні. Що це означає? Ви розподіляєте завдання так, що у вас залишається час і на сон, і на їжу, і завдання виконуються не в режимі все рухнулоа в комфортному для кожного учасника команди темпі.
Щось обов'язково піде не так, і це нормально: як виграти хакатон командою із трьох осіб

Олег Бахтадзе-Карнаухов, команда PLEXeT: «У нас було завдання не працювати якнайбільше годин, а залишатися продуктивними якомога довше. Хоча ми спали по 3-4 години на день, нам це, здається, вдалося. Ми могли сходити до ігрової кімнати або потусувати на стендах партнерів, виділити нормальний час на їжу. На другий день постаралися максимально розвантажити Лева, щоб він виспався і встиг упорядкувати себе перед виступом. Нам допомогли репетиції хакатона, бо ми вже розуміли, як треба розподілити завдання, і синхронізація розпорядку дня — їли, спали і не спали ми в той самий час. У результаті працювали як єдиний механізм.

Не знаємо, як цій команді вдалося протягнути на хакатон Око Агомото, але врешті-решт вони навіть встигли зняти відео про проект і підготувати роздатку.

Декілька порад з тайм-менеджменту на хакатоні:

  • Йдіть від великого до малого – бийте завдання на невеликі блоки.
  • Хакатон – це марафон. Що найголовніше у марафоні? Намагатися бігти в єдиному темпі, інакше до кінця дистанції впадеш. Намагайтеся працювати з приблизно однаковою інтенсивністю і не доводити себе до знемоги.
  • Заздалегідь подумайте, що входитиме до завдань кожного учасника, і скільки в нього піде на це часу. Допоможе уникнути сюрпризів, коли до дедлайн півгодини, а у вас не готовий великий шматок роботи.
  • Звіряйте координати, щоб скоригувати обсяг завдань. Чи відчуваєте, що йдете добре і навіть залишається час? Відмінно – його можна витратити на сон чи доопрацювання презентації.
  • Не зациклюйтесь на деталях, працюйте широкими мазками.
  • Відірватися від роботи складно, тому спеціально виділяйте собі час на сон, відпочинок чи опустити. Можна ставити будильники, наприклад.
  • Виділяйте час на підготовку та репетицію мови. Це неодмінно для всіх і завжди. Про це ми розповідали в одному з минулих постів.

А ще є ось така альтернативна думка. Ви за який варіант — катування кодингом чи війна війною, а обід за розкладом?

Діана Ганієва, команда Jingu Digital: «У нас кожна людина в команді відповідає за щось одне, замінити нас не було ким, тому працювати позмінно не могли. Коли зовсім не залишалося сил, спали години по три залежно від обсягу робіт, який ще залишився за учасником. Погасити часу не було від слова зовсім, ми не витрачаємо на цей дорогоцінний час. Продуктивність підтримували хоч і коротким, але сном, і смаколиками з чаєм — жодних енергетиків чи кави».

Під катом заховали кілька корисних посилань, якщо хочеться поринути у тему тайм-менеджменту. Вона і в звичайному житті стане в нагоді — повірте автору цієї посади, яка вічно спізнюється 🙂
Для підкорювачів часу — Ефективні методики управління часом зібрала у блозі «Нетології» менеджер проектів «Лабораторії Касперського»: клік
- Гарна стаття для початківців на Cossa: клік

Намагайтеся виділитися

Щось обов'язково піде не так, і це нормально: як виграти хакатон командою із трьох осіб

Вище ми писали про команду, яка зробила роздатку для захисту проекту. У своєму треку вони були одні, і ми впевнені, що серед 3500+ учасників більше таких не знайшлося.
Звичайно, це не стало головною причиною їхньої перемоги, але додатковий плюс достеменно принесло — як мінімум, симпатію експертів. Виділятися можна по-різному — одні наші переможці кожен виступ починають з жарту про те, що вони зробили бомбу (команда імені Сахарова, привіт!).

Докладно зупинятись на цьому не будемо, а просто поділимося кейсом команди PLEXeT — нам здається, він гідний стати жартом про сина маминої подруги.

Олег Бахтадзе-Карнаухов, команда PLEXeT: «Ми розуміли, що йдемо з випередженням і вирішили — буде круто прийти на передзахист із роздаткою. У проекті багато технічних деталей, пояснень алгоритмів, які на презентацію взагалі ніяк. А показати хочеться. Експерти ідею підтримали та навіть допомогли оптимізувати. Перший варіант вони навіть дивитися не стали, сказали, що таке полотно ніколи не читатимуть. На захистах ми були такі самі».

Щось обов'язково піде не так, і це нормально

На хакатоні, як і у звичайному житті, завжди є місце косякам. Навіть якщо здається, що ти все передбачив — хто з нас не запізнювався на літак/іспит/весілля просто тому, що автомобілі вирішили стати в пробку, ескалатор — зламатися, а паспорт забути вдома?

Олег Бахтадзе-Карнаухов, команда PLEXeT: «Я з Поліною всю ніч робив презентацію, а в результаті її забули скинути на комп'ютер у залі, де відбувався захист. Ми намагаємося відкрити флешки, і антивірус сприймає файл як вірус і зносить її. У результаті вдалося все запустити лише за хвилину до кінця нашого виступу. Ми встигли показати відео, але все одно дуже засмутилися. Схожа історія трапилася з нами на передзахисті. У нас не запускався прототип, комп'ютери Поліни та Лева зависли, а мій я чомусь залишив у ангарі, де сидів наш трек. І хоча експерти вранці бачили нашу роботу, ми виглядали як команда диваків із роздаткою, гарними словами, але без продукту. З огляду на те, що мою роботу над матмоделями багато учасників сприймали як «сидить чогось малює, в комп'ютер не дивиться», ситуація була не дуже».

Прозвучить банально, але все, що ви можете зробити у цій ситуації, — видихнути. Це вже сталося. Ні, ви не одні такі, косять усі. Навіть якщо це фатальна помилка — це досвід. І ще подумайте, а чи вважає людина, яка вас оцінює, цей випадок факапом?

Діліться в коментарях, яким складом вам комфортніше працювати на хакатоні (і в людях, і у фахівцях) та як будуєте процеси у команді.

Джерело: habr.com

Додати коментар або відгук