В декабре 2016 мой коллега kevteev сказал, что было бы неплохо замутить митап по постгресу в следующем году на площадке Avito. А незадолго до этого безопасники пригласили меня поучаствовать в нескольких CTF, в том числе одном Attack-Defence. И я ответил ему: “А почему бы не замутить постгресовый хакатон?”. И вот мы подготовили первое в России очное соревнование для специалистов по PostgreSQL, и сегодня я хочу пригласить на него вас.



Что такое PGHACK? По своей сути это соревнование немного похоже на конкурсы для специалистов по информационной безопасности, CTF. Отличие в том, что PGHACK был разработан нами с учётом тех задач, с которыми сталкиваются специалисты по работе с базами данных. И это не только соревнование, но и профессиональное общение. Мы не слышали, чтобы кто-то проводил подобные тематические мероприятия в таком формате.

PGHACK — для кого?


Мы ждём на соревновании специалистов по работе с базами данных: разработчиков, программистов, администраторов. Участие смогут принять DevOps-инженеры и фуллстэк разработчики с большой базой знаний по теме. Желательно понимать:

  • что такое MVCC;
  • как работают триггеры;
  • как база данных обеспечивает валидность данных, которые хранятся в таблице;
  • как администрировать Linux — нужно уметь установить программу из исходного кода и собрать её вручную.

Механика соревнования


Первый этап, заочный, отборочный


На этом этапе мы принимаем заявки на участие в PGHACK. Для этого необходимо ввести регистрационные данные и ответить на 5 вопросов в форме на этой странице. Участники, которые предложат правильные варианты решения, получат возможность побороться за победу в финальном раунде. Критерии отбора: правильность ответов и их скорость. Время проведения этапа — с сегодняшнего дня, 7.08, и по 25.08. Если мы отберём 50 финалистов раньше этого срока, то сразу же закроем регистрацию на TimePad. Всем, кто заполнит форму на странице мероприятия, придут письма с результатами отборочного этапа.

Финал PGHACK в московском офисе Avito


По итогам первого этапа мы пригласим 50 участников в московский офис Avito 2 сентября. Для участия в финальном раунде понадобится ноутбук с VirtualBox (версия 5.1.24 или новее), 20Gb свободного пространства на жестком диске и 3GB оперативной памяти. Виртуальная машина будет предоставлена на месте. Если понадобится — поможем настроить окружение. И начнётся игра!

Для начала нужно будет решить задачу по восстановлению работоспособности базы данных. Это потребует не столько энциклопедических знаний о том, как именно она устроена, а скорее, внимательности. Другие задания соревнования можно решать в любой последовательности. Нужно будет знать (или быстро понять) механизмы, которые используются в работе базы PostgreSQL, суметь выявить ошибки в её работе, найти недостатки при эксплуатации.

Результаты будут определяться автоматической проверочной системой в режиме реального времени одновременно у всех участников. За выполнение заданий будет начисляться разное количество баллов — в зависимости от их сложности. Критерии при выводе рейтинга те же, что и в проверочном этапе: правильность и скорость решения. Если при выполнении какой-либо задачи участник нарушит решение другого задания, баллы за него аннулируются.

Партнёры


Партнёрами соревнования выступают PGDay Russia, наша любимая питерская профильная конференция, и #RuPostgres, русскоязычное сообщество разработчиков и пользователей этой СУБД, с которым мы не раз проводили совместные мероприятия.

Призы


Конечно, там где проходит соревнование, должны быть и награды. Главный приз PGHACK — квадрокоптер. Также победитель получит билет на PG Day Russia'2018. Участникам из ТОП-10 достанутся наборы с Arduino, гаджеты, мини-коптеры. И конечно, всем присутствующим на финале приготовлены сувениры от Avito. Непременно обеспечим всех пиццей и приятной компанией профи.

Что потом?


После того, как пройдет PGHACK и мы подведем итоги, я расскажу здесь, на Хабре, о процессе создания платформы для этого соревнования. Как готовились задания, игровое приложение, создавалась система проверки, таск-трекер и лидерборд, настраивались виртуальные машины и инфраструктура — читайте уже в сентябре. До встречи!

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


  1. gxcreator
    07.08.2017 17:02
    -2

    Надеюсь вы найдете там крутого суперспеца, который сделает вам фильтрацию по цене в объявлениях.


    1. martovskiy
      07.08.2017 19:07
      +1

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


      1. gxcreator
        07.08.2017 22:02

        Ого, наконец то. А есть какие-то технические сложности сделать фильтрацию без выбора конечной категории?


        1. martovskiy
          08.08.2017 09:43

          Технических нет.
          Почему сделано так, могу только предположить:


          • Мотивировать пользователя уточнять категорию. Точнее категория, точнее поиск.
          • Непонятная размерность и разрядность фильтра по цене (цены могут быть десятками рублей, а могут быть миллиарды)


  1. xztau
    08.08.2017 09:38

    постгресовый хакатон

    Постгрессивный:)