После ICFPC прошло две недели, но в эти выходные мы снова пишем код и соревнуемся. В субботу и воскресенье в офисе разработки в Екатеринбурге будет хакатон. Участвует 62 человека в 11 командах.
Почти никто не помнит, какие приложения были сделаны на прошлом хакатоне :) Поэтому в этот раз мы делаем полезные штуки, которыми будем пользоваться каждый день. Например, одна из команд делает приложение для геокодирования адресов и кластеризации маршрутов — оно поможет коллегам из техподдержки, которые заканчивают работать ночью и едут домой на корпоративном такси. А другая команда делает сокращалку ссылок, интегрированную с внутренней соцсетью — она не только посчитает клики, но и расскажет всё, что известно о кликавших коллегах.
Вот как выглядит конференц-зал, где соберутся команды, за сутки до начала хакатона. Завтра всё будет по-другому:
А вот куб-компаньон с 17 кг книг из Амазона для команд-победителей:
Так, один из ведущих этого канала наконец выспался после хакатона :) Сейчас расскажу, что было в субботу и воскресенье.
В хакатоне участвовало 70 человек — разработчики, дизайнеры, аналитики, тестеры, менеджеры. Это около 10 % ребят, которые делают продукты в Контуре.
Мы разбились на 11 команд. В самой большой было 9 человек, в самой маленькой — три. В конце мы узнали, что умение сделать клёвый продукт и выиграть на хакатоне не коррелирует с размером команды:
Мы писали код ровно 24 часа. Хакатон начался в субботу в 12:00, а в 15:00 в воскресенье мы уже закончили презентовать результаты и раздавать награды. Так выглядел конференц-зал в офисе разработки в Екатеринбурге через 4 часа после начала хакатона:
Самая атмосферная фотография с хакатона — разработчики обсуждают архитектуру:
Каждые 8 часов мы делали чекпоинты. Команды показывали и рассказывали, что успели сделать. Кто-то был удивительно продуктивен, кого-то ждал провал в прямом эфире:
В одной команде devops-разработчик быстро написал бэкенд на Python и сложил данные в Elasticsearch. А потом сорвался и настроил сборку проекта в TeamCity, развёртывание через Ansible, деплой через Octopus, агрегацию логов в Logstash, сбор метрик в Graphite, визуализацию в Grafana и алертинг в Moira. Сказал, что по привычке :)