Наши амбассадоры продолжают раскрывать тайны своей победы или делиться лайфхаками. Мы спросили у финалиста прошлого года Вячеслава Фокина (slavuntik), нужно ли готовиться к хакатону и как это делать? Спойлер: готовиться нужно обязательно! А подробнее читайте в нашем материале.



Регистрация на новый сезон конкурса «Цифровой прорыв» уже открыта. В этом году нас ожидают не только региональные хакатоны в офлайне, но и впервые запускается онлайн-этап. Масштабный IT-марафон, который состоит из аж двух онлайн-хакатонов и онлайн-чемпионата. Онлайн-хакатоны помогут здорово подготовиться к очным соревнованиям, но к онлайн-хакатону тоже стоит подготовиться заранее. Для нас, представителей IT-сообщества, онлайн — это скорее не баг а фича, да и вообще, для программистов и дизайнеров, это совершенно нормальный режим работы, особенно для интровертов. Можно остаться дома в любимом кресле, да и доступ к холодильнику ограничен только собственным желанием и богатым внутренним миром содержимым холодильника.



Влияние самоизоляции на рабочую форму гордых представителей IT-сообщества


Все-таки хакатон достаточно серьезное испытание, к которому полезно подойти во всеоружии, поэтому попробуем экстраполировать имеющийся опыт участия в новые реалии. Подумаем, как можно заранее подготовиться к хакатону и настроиться как на спортивное мероприятие.

Самое главное тут, как и в любом деле, команда. Команда должна эффективно работать вместе, и здесь можно и нужно тренироваться, заранее организовав рабочий процесс, устранив извечный конфликт отцов и детей менеджеров, дизайнеров и программистов. Все должны четко понимать, кто тут босс кто что делает, и зачем это нужно. В небольших рабочих группах, таких как команда на хакатоне, это особенно важно, так как главный наш враг это не другие команды и участники, а время! Кстати, онлайн хакатоны будут 36-часовым, это намного легче чем 48-часов (бессонной остается только одна ночь, теоретически, можно не спать вообще, за исключением человека, который будет проводить презентацию).


Хрестоматийная иллюстрация на тему who is who в команде

Как выбирать кейс


Итак, задания мы не знаем (это главный и строжайший секрет организаторов). Но направления, по которым будет осуществляться работа, — известны и публичны. Советую выбирать направления, исходя из имеющихся человеческих и профессиональных ресурсов. Допустим, что у вас в команде нет специалиста по 3D-графике и UNITY/Unreal engine программиста, значит в VR или геймификацию не идем, нет специалиста по машинному обучению и хорошего аналитика — в Big Data и AI не лезем и т.д… Также нужно выбирать кейс так, чтобы максимально использовать предыдущий опыт (играть на своем поле). Учиться времени не будет!

Тренировка в домашних условиях


Итак, для тренировки берем любой кейс, чем страшнее звучит задание, тем интересней!

Например, «Кейс от РосГазМясАгроПромБанк. Разработать систему управления распределенной сетью гидропонических ферм (помидоры выращивать) в условиях волатильности валютных рынков».


Вертикальные фермы

1. Понимаем ли мы задание? Гуглим, устраиваем мозговой штурм.

В результате мы должны получить ответы на следующие вопросы:

Как выращивают помидоры? А так можно было? Как влияют валютные рынки на стоимость питательного состава? Можем ли мы их сопоставить с прогнозом продаж помидоров? Чем здесь можно управлять и как? Что нам для этого понадобится?

Программа/бот, анализирующая необходимые остатки на складе питательного состава, в зависимости от его расхода, закупочной стоимости компонентов, курса Уругвайского Песо (к примеру, там покупаем), логистических издержек, таможенных платежей и прогноза продаж наших помидоров (продаем в Мозамбик за доллары).

Примерный алгоритм работы. Контроллер полива регулятор смеси (платформа, алгоритм работы, на хакатоне его можно не делать, достаточно объяснить, как он будет работать и сколько будет стоить!), WEB-интерфейс и мобильное приложение, чтобы этим всем управлять, задавать настройки и осуществлять мониторинг. Серверное ПО.

2. Сможем ли мы сделать софт, иллюстрирующий принцип работы нашей системы и успеем ли за время хакатона? Есть ли аналоги, рефы? Есть ли готовые датасеты с тестовыми данными (в таких кейсах постановщик задачи их обычно предоставляет).

Да, да, и еще раз да.

3. Насколько эффективно наше решение, какую выгоду оно принесет? Сможем ли мы использовать его (с незначительными доработками) в других отраслях агропромышленного комплекса? Можем ли мы предоставлять наше решение по подписке, как сервис?

Да. На выходе должны получиться конкретные цифры. Внедрение нашего решения стоимостью n рублей, принесет сэкономит заказчику x рублей за y лет. Лицензию на нашу систему можно продавать, рынок составляет M рублей в год.

Если на все вопросы имеем внятный и положительный ответ, разбиваем задание на маленькие части, распределяем среди участников команды (пилим софт), готовим презентацию и речь в защиту нашего проекта. При постановке целей, необходимо в первую очередь пользоваться методологией SMART.

Инструменты, которые точно облегчат жизнь на хакатоне


Отдельное внимание уделю инструментам, которыми стоит пользоваться на хакатоне. KANBAN доски, системы управления тикетами на хакатоне использовать не надо (конечно, если вы без них жить не можете и все привыкли, то no problem)! Во первых, спринт у нас только один, во вторых, маленькая команда, короткий промежуток времени, поэтому на первый план выходят инструменты, по принципу “чем проще, тем лучше”:

  • Mindmeister (все, что придумали, записываем в Mind Map и детализируем)
  • Microsoft 2 do или любая чекалка (Wunderlist бывший) – фиксируем выполнение задач
  • Figma – макеты интерфейсов, дизайн
  • Canva – презентации
  • Telegram и Zoom – вся команда на связи
  • Excel Google sheets – forever

Заканчиваем тренировку


Написание кода – трудоемкий процесс, поэтому в тренировочных целях его писать не нужно (программисты программировать и так умеют). Желательно заготовить ноду или сервер, вообще инфраструктуру, где вы будете свое решение разворачивать и отработать CI (continuous integration).

Грамотное планирование задач и их декомпозиция, постановка целей по SMART совместно с программистами (отказ от fullstack разработки), основное, что следует тренировать для подготовки к хакатону. Необходимо максимально распараллелить их выполнение так, чтобы команда работала как единый организм. Главное помнить, что для успеха все одинаково важны: и программисты, и менеджеры, и дизайнеры, и аналитики.

Главное, чтобы каждый член команды знал свою роль, а все вместе вы шли к общей цели.



Всем добра и удачи на конкурсе!