Всем привет!
Меня зовут Рыловникова Татьяна, я аналитик 1С, создатель «Клуба Питерских Одинэсников», ведущая подкаста «Аналитики у микрофона», докладчик и модератор на конференциях от Инфостарт, автор курса «Консоль запросов для аналитика» на Инфостарт.
Вводная часть
Я ранее писала статью “5 идей, как еще аналитик может развивать себя”. С того момента я открыла для себя еще один довольно интересный способ - участие в Хакатоне. В этой статье хотелось бы его раскрыть подробнее.
Хакатон - это соревнование, где перед командой ставят задачу и дают довольно короткий срок на её выполнение. Из этого определения мы видим три ключевых параметра: команда, задача и срок.
Принято считать, что хакатон - соревнование студенческое, но на самом деле нужно смотреть условия конкретного хакатона, где-то действительно нужно быть студентом, а где-то совсем не обязательно.
С самим понятием хакатона я уже знакома, несколько лет назад удалось собрать команду и участвовать в хакатонах от фирмы 1С, мы летали в Москву и Новосибирск, но победу не увезли ни в первом, ни во втором случае. Хотя в первом попали в топ-10. С тех хакатонов я получила хороших друзей и опыт, с некоторыми ребятами из команды мы общаемся до сих пор (Дима, Оксана, привет!).
Что случилось в этом году?
Мне на глаза попалось объявление о хакатоне от холдинга Т1, при этом у меня всегда было желание посоревноваться (не просто так я в баттлах на Инфостарте участвую).
Всего организаторы в Питере заявили 2 трека:
-
SprintHealth: Инновационный Анализ для Agile-команд.
-
Открытый WAF, закрытый доступ: Создание непробиваемой политики против инъекций.
Методом исключения (у меня нет совершенно опыта в ИБ и нет даже потенциально знакомых в этой отрасли) выбор пал на SprintHealth.
Команда
Мы помним, что одна из составляющих хакатона - команда. Я в целом понимала, что в задаче речь про BI, а в этой области у меня есть друзья. Собственно я им предложила, а они согласились. При этом цели делать на 1С - у меня не было, ниже об этом напишу.
Раз мы настроились участвовать, то у коллеги (Влад, спасибо тебе) я спросила про его опыт на хакатоне, откуда я для себя унесла недостающую деталь: нам нужен дизайнер. И такой человек тоже есть в нашем окружении. И она тоже согласилась.
Что имеем?
- Желание попробовать
- Полную команду (нас было 5 человек, это максимум для участия)
- Все мы из Питера
- Все мы знакомы между собой
Представляю вам нашу команду GUSSI-Lebedy:
- Рыловникова Татьяна - Systems Analyst, капитан
- Жук Александр - Data Architect (DWH/BI)
- Никитин Алексей - Data Engineer (DWH/BI)
- Харебова Ирина - Data Engineer (DWH/BI)
- Соболева Екатерина - Graphic and UIX Designer (все, что вы видите на слайдах - дело ее рук https://t.me/sekm_des
Задача
Из описания и наводящих вопросов мы понимали только то, что нужно будет сделать дашборд на основе некоторой информации о спринтах, никакого ИИ от нас не требовалось. Больше ничего понятно не было, поэтому заранее мы договорились особо ничего не делать. Только подложили соломку, если можно было бы использовать PIX BI.
В день старта нам выдали задачу и сразу попросили задать вопросы, что в целом сделать было очень сложно, поэтому все вопросы, которые задавали участники - были поверхностными.
Из плюсов: нам озвучили технические требования к решению (даже скорее ограничения), а также функциональные требования, то есть задача довольно конкретная.
Звучит итоговая задача так:
Необходимо разработать инструмент, который будет анализировать данные о различных спринтах, используя информацию о состоянии задач на таймлайне. Данные будут включать информацию о старте и завершении задач, их приоритетах, статусах и других метриках. Инструмент должен предоставлять визуализации и отчеты, которые помогут командам оценить эффективность спринтов и выявить области для улучшений.
Критерии оценки:
Технические критерии:
- Соответствие функциональным требованиям (30%)
- Работоспособность прототипа (25%)
- Технологичность (15%)
Бизнес критерии:
- Применимость метрик (10%)
- Интуитивность (10%)
- Масштабируемость (10%)
Сроки
Старт 15 ноября в 18:00, стоп-код 17 ноября в 17:00
16 ноября - два чек-поинта
17 ноября - очное присутствие на площадке и один чек-поинт
18 ноября - финальные питчи и оглашение победителей
*чек-поинт - это когда мы показываем экспертам, что сделали, они задают вопросы и говорят, насколько мы движемся в нужном направлении.
Наше решение
Разработка интуитивного приложения в BI-системах, ориентированного на команды, которое обеспечит пользователей инструментами для оперативного и точного анализа спринтов. Наше приложение станет основным источником данных и аналитики, позволяющее командам эффективно планировать и принимать обоснованные решения в процессе работы над проектами.
Стек: python, docker, SuperSet, PostreSQL.
Как видите, 1С мы не использовали. Почему? Мне хотелось получить опыт в других технологиях, не меняя при этом работу или сферу деятельности, поэтому изначально я подумала о ребятах, которые работаю с BI на других стеках. Оглядываясь назад я понимаю, что 1С:Аналитика могла бы закрыть эту потребность вполне, мне даже интересно, что сказали бы эксперты.
Само решение выглядит так:
Но чтобы к нему прийти, мы два дня очень активно работали. А именно:
- Провели системный анализ
- Описали все поля, их типы, варианты заполнения
- Проанализировали требования (ФТ, ТТ) и составили чек-лист
- Проанализировали показатели и описали запросы для получения данных по требованиям от заказчика
- Создали репозиторий, в который добавили файлы конфигурации нашей инфраструктуры, в том числе docker-compose
- Написали ETL сервис на python для загрузки данных из источника во внутреннее хранилище
- Развернули Apache Superset с ETL сервисом с внутренним постпроцессингом для подготовки наборов данных
- Загрузили предоставленные таблицы в хранилище данных при помощи Python
- Произвели обработку таблиц и приведение к типам данных
- Создали виртуальный набор данных в Apache Superset
- Разработали дашборд
При этом SuperSet ребята изучали в процессе работы над решением и до этого с ним не работали.
Напомню, что все это было сделано за двое суток, и мы даже успевали немного поспать.
О хакатоне в цифрах
- 500+ человек
- 60+ команд
- 2 трека
- 800 тыс призовой фонд (по 400 на трек)
И зачем же все это аналитику 1С?
- Возможность попробовать себя в других технологиях, не меняя работу или сферу деятельности.
- Возможность увидеть (а я увидела это очень ясно), что не нужно делать аналитиков на 1С или не 1С, действительно мы все работаем с требованиями, системами, и основные навыки не отличаются, а на изучение конкретного инструмента требуется не так много времени, как может показаться.
- Опыт в питчинге (питчинг - это краткая презентация проекта). Мы по сути питчили каждый чек-поинт наше решение, а когда вошли в топ-7 питчили его уже на сцене. По сути этот опыт нужен для защиты своего решения на работе. А может в дальнейшем пригодится и для личных проектов.
- Опыт работы в команде. Я взяла тему, в которой не шарю, если бы это была 1С, то скорее всего мне было очень сложно отпустить ситуацию, но в данном случае каждый делал свои задачи, потому что каждый эксперт в чем-то отдельном от других, мы регулярно синхронизировались по результатам и это помогало нам двигаться. При этом было понятно кто и что делает, и всем было место в этом проекте.
- Мы все поняли, что наглость - второе счастье, порой нужно уметь и не бояться проявить себя, чтобы тебя заметили и поняли. Мы все вместе - не боялись, в какой-то момент это стало решающим фактором.
- Возможность послушать другие команды и увидеть, а как еще можно решить задачу. Тем самым повышается насмотренность и можно получить информацию о том, какие еще технологии можно использовать.
Благодарности
- Возможность попробовать себя в других технологиях, не меняя работу или сферу деятельности.
- Возможность увидеть (а я увидела это очень ясно), что не нужно делать аналитиков на 1С или не 1С, действительно мы все работаем с требованиями, системами, и основные навыки не отличаются, а на изучение конкретного инструмента требуется не так много времени, как может показаться.
- Опыт в питчинге (питчинг - это краткая презентация проекта). Мы по сути питчили каждый чек-поинт наше решение, а когда вошли в топ-7 питчили его уже на сцене. По сути этот опыт нужен для защиты своего решения на работе. А может в дальнейшем пригодится и для личных проектов.
- Опыт работы в команде. Я взяла тему, в которой не шарю, если бы это была 1С, то скорее всего мне было очень сложно отпустить ситуацию, но в данном случае каждый делал свои задачи, потому что каждый эксперт в чем-то отдельном от других, мы регулярно синхронизировались по результатам и это помогало нам двигаться. При этом было понятно кто и что делает, и всем было место в этом проекте.
- Мы все поняли, что наглость - второе счастье, порой нужно уметь и не бояться проявить себя, чтобы тебя заметили и поняли. Мы все вместе - не боялись, в какой-то момент это стало решающим фактором.
- Возможность послушать другие команды и увидеть, а как еще можно решить задачу. Тем самым повышается насмотренность и можно получить информацию о том, какие еще технологии можно использовать.
Благодарности
Спасибо организаторам, волнтерам и экспертам за мероприятие, отзывчивость и помощь на всех этапах
Спасибо команде, что согласились и воплотили нашу идею в жизнь
Спасибо другим участникам, за атмосферу, крутые идеи и питчи
Что в итоге?
Мы шли на эту авантюру по фану, а получилось 3-е место, что на самом деле очень крутой результат, потому что по ночам мы хотя бы спали.
Этой статьей мне хотелось показать, что возможности вокруг нас и, если кажется, что уже непонятно, откуда еще брать знания и как получать опыт - то хакатон это вполне доступный и интересный вариант.
Ссылка на нашу финальную презентацию
А как вы развиваетесь? Ну кроме курсов и книг)