MA
MAX
Frontend разработчик
FrontendгибкийМосква
Навыки
Next.jsReactTypeScriptZodJotai@tanstack/react-queryReact Hook Formnext-intlkyp-queueuse-debouncedate-fnsuidlibphonenumber-jsjoseclsxTurbopackWebpackYarnPrettierOxlintESLintHuskylint-stagedcommitlintJestts-jestOrvalErudaSentry
Задачи:
Вам предстоит: * разрабатывать и развивать интерфейсы продуктов команды в тесном взаимодействии с дизайнером и backend-разработчиками; * вместе с продакт-менеджером прорабатывать продуктовые требования и оценивать сроки на разработку новых компонентов и изменений в пользовательском опыте; * владеть frontend-репозиториями команды и вносить изменения в репозитории других команд.
Требования:
1. Опыт работы от 5ти лет ком.опыта 2. Фреймворк и база * Уверенный опыт с Next.js (желательно последних версий, понимание app router, SSR/SSG, оптимизации). * Отличное знание React (современные хуки, серверные компоненты приветствуются). * Обязательная работа с TypeScript: строгая типизация, умение описывать сложные типы. 3. UI и анимации * Опыт работы с готовыми UI-китами (аналог @maxhub/max-ui) и их кастомизацией. * Понимание анимаций в React (библиотеки уровня motion/framer-motion). * Опыт работы с модальными шторками / bottom-sheet (react-modal-sheet) и кастомными контролами (например, input-otp). * Аккуратная работа с CSS-классами через утилиты типа clsx. 4. Состояние и формы * Практический опыт с Jotai или другим современным атомарным стейт-менеджментом. * Опыт управления серверным состоянием через @tanstack/react-query (кэширование, инвалидация, optimistic updates). * Уверенная работа с формами на React Hook Form. 5. Интернационализация * Опыт i18n в Next.js, предпочтительно с next-intl. * Понимание особенностей русской локали (склонения, pluralization), использование библиотек уровня lvovich. 6. Работа с API и утилитами * Опыт работы с легкими HTTP-клиентами (ky или аналог). * Понимание очередей и ограничения запросов (p-queue) и дебаунса (use-debounce). * Готовность использовать вспомогательные утилиты (date-fns, uid и т.п.). 6. Валидация и безопасность на клиенте * Опыт описания и проверки схем на Zod. * Понимание клиентской работы с JWT (jose). * Опыт валидации телефонных номеров (libphonenumber-js). * Безопасный парсинг JSON (@hapi/bourne) будет плюсом. 8. Developer Experience и сборка * Понимание процессов разработки на Next.js с Turbopack и финальной сборки на Webpack. * Опыт работы с Yarn (Berry). * Привычка к поддержанию качества кода: Prettier, линтер (Oxlint или ESLint), проверка типов. * Опыт настройки pre-commit-хуков (Husky, lint-staged) и валидации коммитов (commitlint). 9. Тестирование * Написание модульных/юнит-тестов на Jest. * Использование ts-jest для поддержки TypeScript в тестах. 10. Интеграции и инструменты * Опыт генерации типов/клиентов из OpenAPI (уровня Orval). * Умение отлаживать мобильные сценарии (инструменты типа Eruda) будет плюсом. * Понимание туннелирования для локальной разработки (аналог VK Tunnel). 11. Мониторинг и продакшн * Опыт подключения и использования Sentry или аналогичных систем мониторинга ошибок. * Готовность к переходу на системы с трассировкой (tracing).
Мы предлагаем:
Бонусы и скидки от партнеров Офис в центре города ДМС Профессиональная команда Интересные задачи Откликнуться Формат работы комбинированный дистанционный Уровень senior График работы полный