Привет! Меня зовут Сергей Мелюков, я senior engineer в команде Frontend Architecture в Авито.
17 августа в нашем офисе пройдет пятый по счёту митап-сателлит Moscow.js — Moscow SPA, встреча для фронтенд-разработчиков, которым интересна тема веб-приложений (Single Page Application). Поговорим об интеграции Jest с QA-инфраструктурой, DI в качестве способа масштабирования, может ли UIKIt быть максимально гибким и подходящим для всего, росте библиотек компонентов и платформенной команде. С докладами, кроме меня, выступят эксперты из Mail.Ru, Яндекса, ВКонтакте и Тинькофф.


Встреча начнётся в 11:00. Регистрируйтесь сами и приглашайте коллег. Под катом — тезисы выступлений, ссылки на регистрацию и видеотрансляцию митапа.



Доклады


Жесть для Jest — Сергей Мелюков, Авито


image


В Авито десятки фронтенд-инженеров и QA-специалистов. Все они очень хотят писать тесты для сайта. Чтобы сделать написание тестов удобным, а сами тесты полезными, мы используем различные инфраструктурные сервисы: сервис скриншотов, report viewer для CI, хранилище тест-кейсов, selenium-кластер и другие.
Но наличие сервисов не означает, что не остается открытых вопросов. Как посмотреть скриншот компонента, если тест провалился? Как интегрироваться с внутренними сервисами, например, report viewer’ом и тестохранилкой? Как сделать со всеми ними работу удобной прямо из кода тестов?
В докладе я расскажу, как мы интегрировали Jest с QA-инфраструктурой Авито.
Казалось бы, что в этом такого? Но у нас есть собственный reporter, environment с самописным IPC и http/ws-моки.



DI как способ масштабирования всего — Алексей Попков, Яндекс


image


Как часто в тестах вы подключаете библиотеку для хитрой подмены модулей? Во сколько if вы оборачиваете куски вашего кода для разных платформ? Или, может, ваша система A/B тестирования построена на бесконечных switch/case? Хватит это терпеть — нужно чинить!



UIKit, который точно сможет — Константин Лебедев, Mail.Ru


image


За свою карьеру я участвовал в создании множества разных UIKit’ов. Годы идут, технологии меняются, но киты — нет. У них те же проблемы, что и десять лет назад: расширяемость, темизация, зависимости, избыточность, и так далее. Конечно, эти проблемы пытаются решить, но выходит очень поверхностно и бессистемно. И вот, начав делать очередной pet-project, не имея ограничения по строкам и полную свободу, я задумался, как же всё таки должен выглядеть современный «UKit, который точно сможет»?
В этом докладе не будет готовых решений, но будут рассуждения и исследования на обозначенную тему: как можно построить максимально гибкие компоненты с общими правилами.
Доклад будет добротно приправлен примерами на TypeScript с зубодробительными и рекурсивные типами.



Куда растут библиотеки компонентов — Тим Чаптыков, ВКонтакте


image


Многие видели развитие библиотек компонентов. От вдохновляющего «На этот раз мы сделаем заново как надо» до «Здесь можно не править, в следующем квартале будем всё переписывать». От инициативы одного человека до выделенной команды, которая занимается поддержкой общих компонентов.
Мы часто сталкиваемся с одними и теми же проблемами, применяем одни и те же решения. И обычно это решения, которые требуют много ресурсов: больше разработчиков, больше времени, больше этапов тестирования. А что если ресурсов очень мало? На чём можно сэкономить?


Платформенная команда: пособие по применению — Александр Казаченко, Тинькофф


image


В Тинькофф Бизнес более 20 продуктовых команд. Все они работают с общим тулингом и сервисами. Раньше была проблема — нет ответственных за всё «общее» (читай, ничье), поэтому в начале 2019 года мы запустили платформенную (core) команду, которая эту проблему решила. Сейчас команда активно работает и приносит очень много пользы. В докладе я расскажу о нашем опыте, поделюсь готовыми решениями и постараюсь ответить на вопросы, связанные с организацией работы платформенной команды:
  • как понять, что вам нужна платформенная команда;
  • что входит в задачи платформенной команды;
  • как эффективно выполнять задачи в платформенной команде;
  • способы распространения сервисов и компонент;
  • какие задачи нужно делегировать в продуктовые команды и как доводить их до конца;
  • дальнейшее развитие платформенной команды.



Панельная сессия: «Платформенные команды: сказка или реальность?»


Тезисы и участники дискуссии уточняются.


Ведущий и модератор встречи — Роман Дворнов.


Расписание


11:00 — 11:30 | Регистрация
11:30 — 12:10 | Жесть для Jest. Сергей Мелюков, Авито
12:15 — 13:00 | DI как способ масштабирования всего. Алексей Попков, Яндекс
13:00 — 13:30 | Обед
13:30 — 14:10 | UIKit, который точно сможет. Константин Лебедев, Mail.Ru
14:15 — 15:00 | Куда растут библиотеки компонентов. Тим Чаптыков, ВКонтакте
15:00 — 15:15 | Кофе-брейк
15:15 — 16:00 | Платформенная команда: пособие по применению. Александр Казаченко, Тинькофф
16:00 — 16:30 | Панельная сессия: «Платформенные команды – сказка или реальность?»
16:30 — Afterparty в баре ONE MORE PUB


Пароли и явки


Митап начнётся 17 августа в 11:00. Участие в мероприятии бесплатное, но нужно зарегистрироваться. Пожалуйста, указывайте вашу фамилию и имя так, как в паспорте, и не забудьте взять его (или водительское удостоверение) с собой, иначе вас не пропустят в офис.


Адрес: офис Авито, Лесная 7.


Если не сможете прийти, то подключайтесь к прямой трансляции на ютуб-канале AvitoTech.


До встречи!

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


  1. dmitriym09
    06.08.2019 17:44

    На аватарке не Тим Чаптыков


    1. dmitriym09
      06.08.2019 17:47

      Теперь нормально


    1. iSeregin
      06.08.2019 17:47

      Кажется, что уже поменяли картинку.


      1. dmitriym09
        06.08.2019 17:53

        Да. У Тима была аватарка Леши Попкова. Это видел из PWA на своем мобильном андроиде. Вот теперь и не знаю — PWA чудит (иногда он себя странно ведет) или же ошиблись и поменяли.
        smelukov, если не секрет, была ли правка?


        1. smelukov Автор
          06.08.2019 19:10

          Да, поправил ссылку
          Спасибо!