FrontendConf 2025

Крупнейшая профессиональная конференция фронтенд-разработчиков в России

6
6
9
  • Дарья Корчуганова
    Дарья Корчуганова

    Альфа-Банк

    Безопасность кода от разработчика до пользователя

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

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

    НО опыт показывает, что не все проекты добросовестно обрабатывают данные. Давайте разберем несколько вариантов, как можно снизить риск утечки данных.

  • Руслан Мирзоев
    Руслан Мирзоев

    PREMIER

    Юнит-тестирование: концепции и аспекты, которых не найти в документации

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

    Вы узнаете:
    * почему даже у опытных разработчиков возникают сложности;
    * что тестировать, а что не надо;
    * как тестировать, а как не надо;
    * лайфхаки, основанные на практическом опыте.

  • Роман Ахмадуллин
    Роман Ахмадуллин

    Дром

    CSS Anchor Positioning: упрощаем разработку связанных друг с другом элементов

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

    Обычно для реализации подобного поведения нам необходимо использовать JavaScript. Однако теперь это необязательно благодаря новой фиче в CSS.

    В докладе расскажу про CSS Anchor Positioning и как с его помощью упростить разработку связанных друг с другом элементов.

  • Артем Шинкарук
    Артем Шинкарук

    Яндекс Едадил

    Веб-компоненты — да это ж круто!

    В докладе покажу, как может выглядеть современная разработка фронтенда без VDOM с использованием веб-компонентов и фреймворка Lit.

    Поговорим про:
    * процесс миграции большого проекта на веб-компоненты;
    * нюансы работы с ShadowDOM;
    * ограничения технологии.

  • Вадим Королев
    Вадим Королев

    X5 Tech

    Утечки* Next.js. Расследование на миллион

    Не справляетесь с безграничным потреблением ресурсов в NextJS при использовании картинок? Надежда на сообщество Open Source-разработчиков фреймворка угасла? После этого доклада вы избавитесь от всех страданий!

    Я расскажу, как мы столкнулись с утечками памяти в NextJS из-за модуля оптимизации изображений и первыми решили проблему, вызванную модулем оптимизации изображений. Мы прошли весь путь от локализации проблемы до разработки Open Source-решения и разработали утилиту next-image-cache-cleaner, которую вы можете переиспользовать у себя.

    В ходе доклада вы научитесь:
    * оптимизировать потребление ресурсов NextJS-приложений;
    * оперативно локализировать проблемы, которые не имеют явных и прозрачных решений;
    * сделать показатели мониторинга ресурсов достоверными.

  • Илья Соколов
    Илья Соколов

    uchi.ru

    HTTP-кеш, Service Workers и TanStack Query: как выбрать правильный инструмент и не наломать дров

    HTTP-кеширование — мощный, но ограниченный фундамент для современных SPA. Мы разберем его правильную настройку, а также подключение Service Workers для обхода ограничений и библиотек вроде TanStack Query для интеллектуального управления состоянием приложения.

  • Денис Кондратьев
    Денис Кондратьев

    Точка Банк

    Как механизм приоритетов в React приводит к «разрывам» интерфейса и как с этим бороться

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

    Оказалось, дело в приоритизации обновлений в React: он может отбрасывать низкоприоритетные изменения, что приводит к tearing (разрывам интерфейса).

    В докладе проведу разбор реального кейса: обсудим работу React под капотом и рассмотрим, как устроены lanes и concurrent rendering.

  • Анастасия Лестова
    Анастасия Лестова

    Контур

    Как UX-исследования влияют на разработку и разработчика

    Принято считать, что исследования нужны, важны, влияют на траекторию развития продукта, а значит, на происходящее в разработке. Но будем честны, не всегда очевидно, в чем именно выражается это влияние и точно непонятно, как его измерить. Разработчику может казаться, что исследования — это причуда бизнес-команды, не связанная с его задачами напрямую.

    В рамках доклада я покажу эту связь и расскажу о ценности исследований для команд разработки:
    * как исследования влияют на технические задачи разного типа: от инфраструктурной рутины до инноваций;
    * по каким метрикам можно оценить влияние исследования на задачи разработки;
    * как по доле UX-обоснованных задач в бэклоге определить UX-зрелость вашей команды;
    * и наконец, в чем польза от исследований не для продукта, а для разработчика.

  • Андрей Шабанов
    Андрей Шабанов

    Сбер

    Web Vitals не хватило: что мы измеряем, чтобы понимать реальную производительность

    Что происходит с производительностью, когда у тебя сотни модулей, микрофронты, отдельные команды на каждый крупный блок, и все это работает в общем приложении, которым ежедневно пользуются миллионы людей?

    В этом докладе я расскажу, как мы выстраивали систему измерения производительности в Сбербанк Онлайн, чтобы понимать реальную картину.

    Web Vitals — это только начало: пришлось внедрять собственные метрики, отслеживать поведение отдельных компонентов и делать замеры не на синтетике, а в реальном продакшне.

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