Frontend Developer (React / TypeScript)
Мы делаем продуктовую веб-платформу с богатым UI, сложной бизнес-логикой и интеграциями. Нужен Frontend-разработчик, который умеет делать интерфейсы быстро, качественно и поддерживаемо, умеет работать с архитектурой, производительностью и тестами, и спокойно живёт в командных процессах.
Задачи:
-
Разрабатывать новые фичи и улучшать текущие экраны (SPA/SSR).
-
Поддерживать продукт: фиксить баги, улучшать стабильность, проводить рефакторинг/работать с legacy.
-
Проектировать и развивать архитектуру фронтенда (паттерны, декомпозиция, переиспользование, масштабируемость).
-
Делать компонентный UI: UI-kit / дизайн-система / библиотека компонентов, документация компонентов (например, Storybook).
-
Интегрировать фронт с бэкендом: REST (контрактный подход, типизация).
-
Писать тесты (unit/UI/e2e), поддерживать качество поставки.
-
Улучшать производительность (Lighthouse/Web Vitals, lazy loading, code splitting).
-
Участвовать в code review, оценке задач, декомпозиции, планировании и коммуникации с продуктом/дизайном/бэком.
-
По необходимости участвовать в BFF/Node.js задачах, интеграциях, релизах и CI/CD пайплайнах.
Требования:
-
Коммерческий опыт от 4+ лет frontend-разработки.
-
Уверенно: React.
-
Уверенно: JavaScript (ES6+) и TypeScript.
-
Верстка: HTML, CSS/SCSS, адаптивная и кроссбраузерная (mobile-first), аккуратная работа по макетам.
-
Управление состоянием: Redux / Redux Toolkit / RTK Query и/или альтернативы (MobX / Zustand и т.п.).
-
Работа с API и данными: REST, плюс понимание client-server, запросы/кеширование/ошибки; знание GraphQL/OpenAPI приветствуется.
-
Инструменты сборки: Webpack / Vite (или аналоги), понимание сборки, окружений, оптимизаций.
-
Понимание и применение архитектурных принципов: SOLID/DRY/KISS, модульность, читаемость, поддерживаемость, масштабирование (например FSD/Atomic).
-
Тестирование: опыт с unit/UI/e2e (как минимум базовый уровень), понимание ценности тестов.
-
Процессы: Git, code review, умение работать в команде и кросс-функционально (дизайн/продукт/бэк).
-
Оптимизация: практический опыт улучшения производительности (Lighthouse/Web Vitals, lazy, split, оптимизация рендера).
-
Умение оценивать и планировать: декомпозиция, оценка сроков, ответственность за результат (ownership).
-
Готовность разбираться в продуктовой логике и сложных бизнес-сценариях.
Будет плюсом:
-
Next.js / SSR
-
Микрофронтенды / Module Federation
-
Node.js / Express / BFF (базово или уверенно)
-
SPA роутинг (React Router и аналоги)
-
UI-библиотеки: MUI, Ant Design, Patternfly, Radix и т.п.
-
CSS-in-JS / CSS Modules / Tailwind / Emotion
-
Storybook
-
Работа с формами: react-hook-form и похожие, схемы валидации (например Zod)
-
WebSocket
Тестирование:
-
Jest, React Testing Library, Playwright, Cypress
Инфраструктура/качество поставки:
-
CI/CD (GitLab CI/Jenkins и т.п.), участие в релизах
-
Docker / Kubernetes
-
Наблюдаемость/метрики: Grafana
-
Кеширование/Redis
Продукт/качество UX:
-
Доступность (a11y), интернационализация (i18n)
-
SEO (если есть публичные страницы)
Прочее:
-
Монорепо/workspaces/Lerna
-
Backend/DB: PostgreSQL/TypeORM
-
Английский для чтения документации
Как мы работаем
-
Прозрачные задачи: декомпозиция → оценка → реализация → ревью → тесты → релиз.
-
Регулярный code review, договорённости по стилю и архитектуре, понятные ownership-зоны.
-
Фокус на качестве: стабильность, производительность, читаемость, тестируемость.
Мы предлагаем
-
Гибкий формат (удалёнка/гибрид — по договорённости).
-
Понятные цели, влияние на продукт, рост до лид/ментор роли (если хочешь).
-
Современный стек, инженерные практики, адекватные сроки и приоритеты.