Show must go on!

Год назад ВСК получила незабываемый, позитивный опыт проведения олимпиады по программированию внутри своей компании. Известный факт: не все начинания, даже успешные, в итоге имеют свое продолжение. Но, благодаря энергии и настойчивости нашего DevRel и неравнодушных коллег из разных подразделений ВСК, в июле состоялась 2-я IT-олимпиада ВСК, которая, уже традиционно, объединила в online-режиме площадки 3-х регионов (Москва, Волгоград и Томск).

В этот раз наши аппетиты выросли, что было заметно по расширению границ мероприятия:

  1. В отличие от 2021 года, кроме соревнований по программированию, мы провели состязания в навыках среди аналитиков и администраторов серверов приложений.

  2. Расширился круг подразделений компании, сотрудники которых решились испытать свои силы: кроме ИT-блока, участие приняли блок информационной безопасности и даже 2 бизнес-подразделения.

  3. Среди участников были и внешние – сотрудники крупного партнера нашей компании.

  4. Общее количество участников увеличилось почти в 2 раза.

Кстати, для тех, кто решит организовать у себя подобную олимпиаду, будет полезным такой факт: и в прошлом году, и в этом из подавших заявки для участия на олимпиаду пришла примерно половина. Основная причина – страхи: оказаться слабее других, не решить ни одного задания, в итоге – понизить самооценку. А еще если твой руководитель сделает далеко идущие выводы… В общем, перспектива не радужная :). Отсюда урок на будущее – со своими сотрудниками надо работать до начала олимпиады: развеивать страхи, использовать отзывы предыдущих участников, особенно не победителей :). Ведь большинство из них после олимпиады говорят о мощном положительном заряде, отличном опыте, мотивации для развития и в целом хорошем настроении!

А в чем challenge?

Итак, какие задания мы приготовили для участников?

На секции программирования мы не стали изобретать велосипед: использовали тот же класс математических задач и площадку «Яндекс.Контест» (подробно описано здесь)  и тот же метод оценки.

Аналитики оттачивали свое мастерство в теоретических знаниях методов анализа и решении практических задач. Среди теоретических вопросов были, например, такие:

  • Что такое Use Case? Дайте объяснение в свободной форме

  • Укажите иерархию пользовательских историй для корректной приоритизации требований, согласно принципу MoSCoW

  • Перечислите основные критерии хорошо декомпозированной User Story, согласно принципу INVEST

А вот как выглядела практическая задача по аналитике

Практическое задание -Разработать процесс «Заключение договора  КАСКО»

Процесс не требуется привязывать к процессам ВСК

Задание:

1.      Разработать модель процесса

2.      Сделать описание шагов процесса

3.      Предложить возможную автоматизацию функций

Вводные данные:

1.      Клиент Физическое лицо, резидент РФ

2.      Канал продаж - офис Компании

3.      Продавец – сотрудник Компании

4.      Информационные системы Компании:

a.      Фронт-офисная система

b.     Бэк-офисная система (система страхового учета)

c.      Портал самоосмотра

d.     Скорринговая (тарификационная) система

Описание:

1.      Процесс состоит из подпроцессов (не все подпроцессы могут выполняться):

a.      Предварительный расчет страховой премии и суммы

b.     Создание проекта договора

c.      Проверки (транспортного средства, клиента, бизнес-логика, ФЛК, прочая)

d.     Андеррайтинг сотрудником Компании

e.      Осмотр транспортного средства, включая согласование

f.      Заключение договора (выставление счета, оплата в офисе компании по карте или через кассу)

2.      Документы Клиента необходимые для заключения договора:

a.      Паспорт гражданина РФ

b.     Свидетельство о регистрации транспортного средства

c.      Водительское удостоверение собственника транспортного средства и других лиц, допущенных к управлению транспортным средством

3.      Информация/Документы формируемые компанией по процессу

a.      Котировки (результат предварительного расчета)

b.     Проект договора

c.      Счет на оплату

d.     Договор

4.      Клиент может отказаться от заключения договора на любой стадии оформления

5.      Клиент может внести изменения в условия договора (страховая сумма, франшиза, лица допущенные к управлению) до момента заключения договора

6.      Компания может отказать в заключение договора в результате внутренних проверок, скорринга, результатов осмотра

7.      Клиент может предоставить полный или неполный (для предварительного расчета – минимальная обезличенная информация) комплект документов.

8.      Клиент должен оплатить (в офисе компании по карте или через кассу) полную сумму страховой премии в день выставления счета (рассрочка или частичная оплата не принимается), иначе договор аннулируется.

Решение:

Модель процесса «Заключение договора  каско»

1.      Для моделирования нужно использовать любую из нотаций: BPMN, ARIS, UML, IDEF0/3

2.      Можно использовать встроенный инструментарий confluence, либо любое другое ПО (VISIO, Camunda, другое), поддерживающее выбранную нотацию. В этом случае схему модели приложить в этот раздел в виде читабельного файла.

Дополнительно, разработать статусную модель или модель потока данных, архитектурную схему

Аналитики выполняли задания каждый на своей странице в Confluence. Просто используя режим редактирования страницы:

После чего жюри коллегиально принимало решение о качестве выполнения заданий.

 О заданиях для администраторов лучше расскажет член жюри, руководитель направления дирекции поддержки информационных систем, Денис Бурлаков:

«Конечно, в моем направлении нельзя дать абстрактную задачу, администрирование Windows сводится к одному: работает или не работает. И тогда мы решили что-то сломать :) Сначала собрали изолированную сеть из трех компьютеров: идея была в том, чтобы смоделировать корпоративную систему ВСК в миниатюре. А потом я придумал задания на основе тех, с которыми сталкивался раньше на практике, оказалось сложновато, поэтому разбавили их более легкими на внимательность. Вот пример задания: нужно найти три папки с особыми свойствами в массиве из 250 тысяч папок, вложенных друг в друга случайным образом. Конечно, можно и вручную искать, но на такое уйдут недели. В общем, мое направление заданий получилось самым практически ориентированным. Верю, что люди, сумевшие справиться с нашими задачками, испытают такое же облегчение, как и я в свое время, когда решил их в первый раз».

С инструментом для ввода участниками своих решений здесь все просто: может быть Confluence, Word или что-то аналогичное.

"Успех полностью зависит от подготовки"

Конфуций

Чтобы статья была более полезной, мы решили подробнее остановиться на том, что предшествовало самой олимпиаде.

Представим это в виде чек-листа подготовки к событию

Задача

Описание

Done

1

Старт

 

1.1

Определить дату и время

Согласовать с руководителями

 

1.2

Определить место проведения

Также определить ответственных на каждой площадке, кто будет заниматься организационными вопросами

 

1.3

Подготовить план мероприятия

Например:

09:00  Кофе-брейк

10:00  Открытие

10:30  Старт олимпиады

14:00  Фиксирование результатов

15:00  Подведение итогов

 

4

Дисциплины, задания

 

4.1

Определить дисциплины и ответственных по ним.

Определить ответственных за составление заданий по дисциплинам.

 

4.2

Подготовить задания

Проконтролировать готовность заданий по дисциплинам

 

4.3

Подготовить инструменты

Проконтролировать готовность инструментов для решения и оценки заданий

 

4.4

Настроить задания

Лидерам по дисциплинам обеспечить настройку доступов, описания и функциональности для выполнения заданий.

 

4.5

Протестировать задания

Лидерам по дисциплинам протестировать работоспособность заданий от имени тестового участника.

 

5

Бюджет, призы, анонс

 

5.1

Согласовать бюджет, призы, сувениры

Согласовать бюджет на кофе-брейк, призы, сувениры (в т.ч. блокноты и ручки), а также их состав.

 

5.2

Анонсировать олимпиаду и подачу заявок для участия

1. Создать шаблон с анонсом предстоящей олимпиады с кнопкой на регистрацию и сроком подачи заявок.

2. Регистрацию настроить, например, через https://anketolog.ru/ , с вводом следующей информации: ФИО, город участия, дисциплина, номер телефона, email.

3. Сделать рассылку о предстоящей олимпиаде на все платформы (например, Confluence, WhatsApp, Telegram).

 

6

Участники, жюри

 

6.1

Сформировать списки участников

На основании поданных заявок, сформировать список участников. Предусмотреть поля для логина и пароля входа в домен, а также логина и пароля для входа на платформу соревнования, если требуется (например, contest.yandex.ru).

 

6.2

Сформировать жюри

По каждой дисциплине сформировать жюри (не менее 3 чел.), выбрать лидера по каждой дисциплине. Предусмотреть поля для логина и пароля для входа на платформу соревнования, если требуется (например, contest.yandex.ru).

 

6.3

Создать доменные учетные записи

1. Для каждого участника создать учетные доменные учетные записи.

2. Отразить логин и пароль в списках участников.

 

6.4

Создать учетные записи платформы соревнования (если требуется)

1. Для каждого участника и члена жюри создать учетные записи на платформе, где будет проходить соревнование по конкретной дисциплине.

2. Отразить логин и пароль в списках участников и членов жюри.

 

7

Оборудование

 

7.1

Подготовить ноутбуки для участников и жюри

1. Выделить ноутбуки.

2. Подготовить образ виртуальной машины с настройками под языки программирования и необходимыми доступами, включая доступ в Интернет.

3. Залить образ на все ноутбуки.

 

7.2

Настроить видеоконференцию

Проверить микрофоны, камеры, трансляцию звука и изображения. Если несколько локаций, проверить связь между ними.

 

7.3

Подготовить стикеры на ноутбуки

Пример:

Григорьев Борис Борисович

Домен.Логин: olimpiada_vsk_5

Домен.Пароль: yDsdagavW2XTVb6

Логин: vsk_prog_11

Пароль: PF8Xbwafsyb6P

 

8

Помещение

 

8.1

Общее оформление

 

 

8.2

Места для участников

 

 

8.3

Места для жюри

 

 

8.4

Зона кофе-брейк

 

 

8.5

Зона награждения

 

 

9

Репетиция

 

9.1

Проверить видеосвязь

 

 

9.2

Проверить микрофоны

 

 

9.3

Проверить рабочие места участников

1. Размещение

2. Наличие ноутбуков, стикеров, ручек, блокнотов

 

9.4

Проверить рабочие места жюри

Наличие ноутбуков, стикеров, ручек, блокнотов

 

9.5

Проверить зону награждения

 

 

9.6

Провести прогон выступлений

 

 

10

Готовность №1

 

10.1

Через все платформы направить информацию перед началом олимпиады

1. Время, место сбора (организовать встречу).

2. Тайминг мероприятия.

3. Ссылки для доступа к заданиям.

4. Контакты по возникающим вопросам.

 

"Опыт измеряется не в годах, а в событиях"

Александр Журба

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

Объявлен старт – и участники сразу бросились в бой – дорога была каждая минута из отведенного времени (3.5 часа).

Буквально через 10-15 минут у жюри уже была работа – начали поступать первые решения, которые предстояло проанализировать и оценить. Лидеры стали проявляться практически сразу. Но накал борьбы и интрига сохранялись до самого конца состязаний. Интересно было наблюдать за эмоциональной борьбой с самим собой у участников, когда они находили решение, идеальное с их точки зрения, но получали не максимальный балл. Было достойно уважения, когда один из участников секции программирования, решив все задачи, перестал думать, что его решение идеальное, и нашел в себе силы заменить его на новый вариант, который оказался лучшим среди всех! Он, кстати, обошел всех соперников и стал первым!

Ровно в 14:00 был остановлен прием решений. Жюри вышло на финишную прямую оценки оставшейся очереди решений и обсуждения спорных моментов. А участники получили возможность расслабиться и обменяться впечатлениями.

Настал самый радостный и приятный момент – награждение победителей! По уже ставшей традиции, сначала объявлены победители (с 3-го до 1-го места), после чего, в обратном порядке (от 1-го до 3-го места) каждый из них имел возможность выбрать один из призов (ну не всем может быть нужен еще один iPhone :)).

И уже после завершения всех официальных событий – живое общение между всеми участниками. Почти все хотят поделиться своими эмоциями, сказать слова благодарности и пожелания продолжать эту замечательную традицию – проведение олимпиады. Именно в этот момент понимаешь, что все усилия стоили такого результата: заряда энергии, толчка к развитию, единения всех участников и тех, кто наблюдал за этим ярким событием!

Комментарии (1)


  1. reznichenko_a
    18.08.2022 18:35

    здорово!