Как прошел frontend-митап в Казани от Росбанка и партнеров

Росбанк провел 22 марта митап для frontend-разработчиков в Казани. На встрече эксперты Росбанка, VK Добра и СберМаркета представили 4 доклада:

  • Анастасия Постойко, Росбанк – «Наши круги ада со State Managers»;
  • Никита Журавель, Росбанк ؘ– «От любви до любви – Tanstack Query (React Query)»;
  • Даниил Трофимов, СберМаркет – «npm: node packages madness»;
  • Павел Кочура, VK Добро – «Прощай, легаси: переезд 10-летнего проекта на Next.js».

Регистрацию участников Росбанк организовал на платформе Codenrock. Как прошло мероприятие – в нашем кейсе. 

Подготовка к проведению

Организация митапа – не только поиск зала и подготовка докладов. Главное – люди, которые придут на конференцию. Перед Росбанком стояла задача привлечь на мероприятие профильных специалистов, чтобы повысить узнаваемость бренда в регионе среди разработчиков. 

Для регистрации посетителей митапа банк выбрал платформу Codenrock. Площадка поддерживает проведение событий разного типа: от хакатонов и ML-соревнований до One Day Offer и конференций. Первый этап – запуск страницы-лендинга, где пользователи могут оставить заявку и заполнить анкету участника. Новости о мероприятии регулярно публикуются в социальных сетях, дайджестах и рассылках Codenrock. Перед встречей все посетители, прошедшие регистрацию, получают уведомление. 

Страница митапа на Codenrock

Митап прошел 22 марта в казанском творческом центре «Смена». Авторы лучших вопросов получили в подарок мерч от организаторов, а после конференции участников ждали пицца-пати и нетворкинг-сессия.

Видеозапись докладов

Наши круги ада со State Managers

Анастасия Постойко, fullstack-разработчик из Росбанка, рассказала о проблемах при использовании менеджеров состояний. Сейчас Анастасия занимается созданием и поддержкой внутреннего банковского портала для сотрудников. На проекте используется два стейт-менеджера: Pinia и Vuex. И проблема в том, что они усложнили разработку. 

Анастасия выделила несколько недостатков State Managers:

  • Сложная архитектура сторов.
  • Жесткая связка компонентов.
  • Сложность рефакторинга.
  • Растягивание процесса онбординга сотрудников.
  • Сложности масштабирования. 

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

  1. Следовать строгой структуре наименования.
  2. Вместе с коллегами решить, какие глобальные данные необходимо выносить в стор.
  3. Определить допустимую вложенность компонентов без внедрения сторов.
  4. Соблюдать архитектуру.

Закончить хотелось бы фразой Дэна Абрамова: «Flux-подобные библиотеки как очки: мы всегда знаем, когда они нам нужны». 

Анастасия Постойко, fullstack-разработчик из Росбанка

Node Packages Madness

Даниил Трофимов, разработчик интерфейсов в СберМаркете, подготовил доклад о Node Package Manager (NPM). На выступлении эксперт рассказал об истории развития менеджера пакетов, инцидентах, которые с ним происходили, и способах обеспечить безопасность проектов:

  • Боритесь за уменьшение зависимостей.
  • Используйте Nexus и Verdaccio.
  • Лучше применять PNPM или собственные менеджеры.
  • Смотрите на лицензию, под которой распространяется пакет. 

Стартуя проект с нуля, я бы в 90% случаев взял PNPM, потому что это достаточно прикольный быстрый инструмент, по API похожий на NPM. В остальных 10% – менеджеры, которые вы используете в компании, они не то чтобы драматически хуже. 

Даниил Трофимов, разработчик интерфейсов в СберМаркете

Прощай, легаси

Павел Кочура, старший frontend-разработчик из VK Добра, поделился опытом переноса 10-летнего проекта на Next.js. До этого он был написан на корпоративном шаблонизаторе Fest, который не обновлялся с 2014 года. Главные проблемы легаси-кода:

  • Низкая производительность.
  • Несоответствие современным стандартам безопасности.
  • Сложность поддержки.

Архитектура – огромное количество папок, каждая из которых соответствовала странице. При сборке в них генерировались 11 tmp-файлов. На начальном этапе проект еще поддерживался – было всего 2 папки на React, и можно было позволить при разработке одной пересобирать другую, но их количество постоянно росло. Критерии выбора нового фреймворка:

  • Популярность.
  • Поддержка React.
  • Использование Server-Side Rendering.
  • Простота использования.

Выбор пал на Next.js. Советы по результатам перехода:

  1. Проверять гидратацию.
  2. Не забывать про динамический импорт для оптимизации.
  3. Удалять дубликаты зависимостей модулей.
  4. Проверять размеры подключаемых библиотек. 
  5. Проводить рефакторинг docker-контейнера. 
  6. Проверять настройки аналитики. 

Я против того, чтобы пытаться поддерживать то, что уже мертво. Хорошее решение в прошлом не всегда является хорошим решением в настоящем – разработчики становятся его заложниками. Но следует помнить, что рефакторинг – это хорошо, но он не должен мешать бизнес-приоритетам.

Павел Кочура, старший frontend-разработчик из VK Добра

От любви до любви

Никита Журавель, frontend-разработчик Росбанка, рассказал о TanStack Query. Это мощный асинхронный менеджер состояний, который поддерживает фреймворки React, Solid, Vue и Svelte, а также JavaScript и TypeScript. Он декларативный, автоматический, простой и расширяемый. 

Никита объяснил способы применения TanStack Query на нескольких реальных примерах:

  • Снижение числа запросов к серверу для базовых компонентов. 
  • Реализация таблицы с фильтрами, поддержкой нескольких состояний и обновлением данных. 
  • Разбор документации, самых часто используемых API и передаваемых параметров.
  • Способы интеграции TanStack Query в уже существующие старые проекты.

В жизни так бывает: что-то начинается с любви, заканчивается ненавистью. Или начинается с ненависти, заканчивается любовью. В случае, если вы будете использовать TanStack Query, у вас будет начинаться все с любви и заканчиваться также любовью.

Никита Журавель, frontend-разработчик Росбанка

Об организаторе

В Росбанке много команд, которые занимаются фронтендом. Пишем на очень разных современных технологиях: Vue, React, Angular и не только. У нас распределенная команда – многие люди работают удаленно. 

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

Игорь Поляков, тимлид и лидер Гильдии Frontend в Росбанке
Оцените статью
Codenrock Blog


    Оставьте заявку, мы подберем для вас лучшие решения для работы с ИТ-сообществом

    X


      Оставьте заявку, мы подберем для вас лучшие решения для работы с ИТ-сообществом