Проектирует эффективные алгоритмы обработки больших объёмов данных на клиенте с учётом ограничений main thread. Применяет Web Workers для тяжёлых вычислений, использует виртуализацию списков (TanStack Virtual) и стратегии инкрементального рендеринга.
Роли · Frontend Developer (React) · Senior
Что должен уметь Senior }
39 ключевых навыков, всего 56. Ожидания по каждому навыку и что меняется на следующем уровне.
На этой странице — что ожидается от Senior }, навык за навыком. Ключевые навыки оценивают руководитель и коллеги в цикле ревью; остальные учитываются только в самооценке. Основные области: Основы программирования, Frontend Development, API и интеграции.
Ключевые навыки для Senior
Сгруппированы по областям. Метка справа — ожидаемая глубина: Осведомлённость, Применение, Продвинутый или Эксперт.
Основы программирования · 6
Проектирует асинхронную архитектуру React-приложений: стратегии кеширования и инвалидации в TanStack Query, streaming SSR в Next.js, конкурентный рендеринг с useTransition и useDeferredValue для отзывчивого UI.
Проектирует систему обеспечения качества React-кода: кастомные ESLint-правила для архитектурных конвенций, автоматический анализ bundle size в CI, метрики покрытия тестами. Внедряет Storybook для документации и визуального тестирования компонентов.
Проектирует архитектурные паттерны React-приложений: модульную структуру с feature-sliced подходом, инверсию зависимостей через DI-контейнеры. Создаёт библиотеки переиспользуемых хуков и headless-компонентов на базе Radix UI.
Проектирует сложные структуры данных для кеширования и нормализации в TanStack Query и клиентском state. Реализует оптимистичные обновления с откатом, использует immer для безопасных мутаций вложенных структур в React-приложениях.
Проектирует продвинутые системы типов для React-приложений: типобезопасные form-библиотеки, роутинг в Next.js App Router, generic-компоненты для UI-библиотек. Создаёт utility-типы и type guards для сложных бизнес-доменов.
Frontend Development · 19
Проектирует систему визуального регрессионного тестирования для React-дизайн-системы: multi-theme и multi-viewport матрицу в Storybook/Chromatic, integration с CI для блокирующих проверок. Оптимизирует стабильность тестов: детерминистичные шрифты, фиксированные даты, mock данные.
Проектирует accessibility-архитектуру React-приложений: систему фокус-менеджмента для SPA-навигации в Next.js, стратегию ARIA для сложных интерактивных паттернов, accessibility-first подход в дизайн-системе. Внедряет автоматическое a11y-тестирование в CI.
Проектирует стратегию тестирования React-компонентов: пирамиду тестов (unit/integration/E2E), shared test utilities и fixtures, custom render с провайдерами. Создаёт testing-library/react расширения для проектных паттернов, интегрирует с Storybook interaction tests.
Проектирует micro-frontend архитектуру на React: определяет границы micro-frontends по бизнес-доменам, настраивает shared state management (custom events, shared store), реализует routing integration между host и remote apps. Проектирует CI/CD для независимого деплоя каждого micro-frontend.
Проектирует стратегию bundle optimization для React-приложений: гранулярный code splitting, prefetching через Speculation Rules API, module/nomodule подход. Внедряет автоматический мониторинг bundle size regression в CI, оптимизирует vendor chunks для длительного кеширования.
Проектирует архитектуру дизайн-системы на React: headless-компоненты с Radix UI, стилизация через Tailwind CSS + CVA, токенизация через CSS custom properties. Создаёт NPM-пакет с tree-shaking, автотестами и визуальным регрессионным тестированием.
Проектирует CSS-архитектуру React-приложения: систему дизайн-токенов через CSS custom properties, адаптивную типографику через clamp(), оптимизацию CLS через aspect-ratio. Обеспечивает совместимость CSS-стратегии с React Server Components и streaming.
Проектирует архитектуру React-приложений для оптимальных Core Web Vitals: стратегию рендеринга (SSR/SSG/ISR/PPR) в Next.js, progressive hydration, selective streaming. Настраивает RUM-мониторинг через web-vitals библиотеку, определяет performance budgets.
Проектирует архитектуру дизайн-системы React с CSS-in-JS: token-based theming, variant API, compound component patterns. Оптимизирует bundle size через static extraction и critical CSS. Создаёт доступные компонентные библиотеки, соответствующие Core Web Vitals.
Проектирует data fetching архитектуру React-приложений: стратегию серверного и клиентского fetching в Next.js App Router, кеширование и ревалидацию, streaming с Suspense. Реализует слой абстракции для API-клиента с типобезопасностью через zod и TypeScript.
Проектирует Next.js-приложения с App Router, RSC и streaming SSR. Оптимизирует Core Web Vitals через ISR, оптимизацию изображений и code splitting. Устанавливает паттерны фронтенд-архитектуры для команды.
Проектирует PWA-архитектуру для React-приложений: стратегию синхронизации offline-данных с серверным состоянием TanStack Query, background sync, периодическую синхронизацию. Обеспечивает graceful degradation и progressive enhancement для всех фичей.
Глубоко понимает внутренние механизмы React 18+: Fiber-архитектуру, concurrent rendering, batching обновлений. Оптимизирует производительность через useTransition, useDeferredValue, React.memo, проектирует архитектуру Suspense-границ для streaming SSR.
Проектирует рендеринг-архитектуру Next.js приложений: стратегию выбора SSR/SSG/ISR/PPR для каждого маршрута, streaming-архитектуру с вложенными Suspense-границами, edge rendering для глобальных приложений. Обеспечивает баланс между производительностью и свежестью данных.
Архитектурирует state management для сложных React-приложений: стратегию разделения состояния по доменам, синхронизацию между вкладками через Zustand middleware, оптимистичные обновления с rollback. Проектирует state machines через XState для сложных UI-потоков.
Проектирует масштабируемую Tailwind CSS архитектуру для дизайн-системы на React: кастомные плагины, design tokens, варианты компонентов через CVA (Class Variance Authority). Оптимизирует CSS output для Server Components и streaming SSR.
Проектирует Vite-конфигурацию для сложных React-приложений: multi-entry builds, library mode для UI-пакетов, SSR-конфигурацию. Создаёт кастомные Vite-плагины для специфичных трансформаций, оптимизирует cold start и HMR для больших проектов.
Проектирует абстракции над Web API для React-приложений: WebSocket-менеджеры с автоматическим реконнектом и интеграцией в Zustand, Web Workers для тяжёлых вычислений, Shared Workers для синхронизации вкладок. Использует Streams API для обработки больших данных.
Проектирует стратегию использования Web Components в React-экосистеме: shared UI-примитивы как Custom Elements для framework-agnostic дизайн-системы, Shadow DOM для инкапсуляции в микрофронтенд-архитектуре. Обеспечивает SSR-совместимость через Declarative Shadow DOM.
API и интеграции · 2
Проектирует GraphQL-архитектуру React-приложений: стратегию кеширования и инвалидации, persisted queries для безопасности и производительности, интеграцию с React Server Components. Оптимизирует query complexity, реализует real-time подписки через WebSocket.
Архитектурирует API-слой React-приложений: BFF-паттерн через Next.js API Routes или Route Handlers, auto-generated типы из OpenAPI spec, стратегию кеширования и ревалидации. Проектирует API-абстракции для переиспользования между серверными и клиентскими компонентами.
Облако и инфраструктура · 2
Проектирует сетевую архитектуру React-приложений: стратегию CDN-дистрибуции для Next.js, edge middleware для геолокации и A/B-тестов, WebSocket/SSE для real-time функциональности. Оптимизирует TTFB через edge computing и стратегическое кеширование на всех уровнях.
Проектирует Docker-стратегию для React-приложений: оптимизация build pipeline для CI/CD, multi-target builds (dev/staging/prod), health checks для Next.js. Настраивает Docker для SSR-приложений с правильным управлением памятью и graceful shutdown.
DevOps и CI/CD · 1
Проектирует CI/CD архитектуру для React-приложений: матричные билды (Node versions, browsers), E2E тесты через Playwright в CI, автоматический деплой на staging/production. Оптимизирует время пайплайна: selective testing, Turborepo remote caching, parallel jobs.
Тестирование и QA · 3
Проектирует комплексные стратегии тестирования доступности для экосистем React-приложений с покрытием требований WCAG 2.1 AA/AAA. Внедряет продвинутые паттерны тестирования — валидацию дерева доступности virtual DOM, объявления переходов динамических маршрутов и тестирование сложных state-driven виджетов с множеством ассистивных технологий. Создаёт переиспользуемые утилиты тестирования a11y для библиотек компонентов React и формирует непрерывный мониторинг доступности для продакшн React-приложений.
Проектирует E2E-testing архитектуру для React-приложений: стратегию покрытия критических user flows, visual regression через Playwright screenshots, интеграцию с CI (sharding, selective testing). Оптимизирует стабильность: deterministic data, proper waits, isolated environments.
Проектирует unit-testing стратегию для React-приложений: тестовая архитектура (factories, fixtures, custom matchers), интеграция с MSW для API-мокирования, тестирование Zustand stores и TanStack Query hooks. Определяет что тестировать unit vs integration.
Безопасность · 1
Проектирует security-архитектуру React-приложений по OWASP: стратегию аутентификации и авторизации, защиту от SSRF в Server Components, secure cookie management. Внедряет автоматический security scanning в CI (Snyk, SAST), определяет threat model для фронтенд-приложений.
AI-ассистированная разработка · 2
Интегрирует LLM в архитектурные процессы React-разработки: code review с AI-ассистентом, генерация документации для дизайн-системы, анализ performance-проблем. Определяет границы применимости AI: когда доверять генерации, когда требуется экспертная верификация.
Оптимизирует использование Copilot в React-проектах: кастомные instructions для проектных паттернов (Next.js App Router, Zustand, Tailwind), Copilot Workspace для сложных задач. Определяет паттерны эффективного использования: где AI экономит время, где создаёт технический долг.
Контроль версий и коллаборация · 2
Менторит через code review в React-проекте: обучает архитектурным паттернам, объясняет trade-offs решений (Server vs Client Components, state strategies). Создаёт review guidelines для команды, автоматизирует проверки через danger.js и custom ESLint rules.
Проектирует Git-workflow для React-команды: branching strategy (trunk-based, GitFlow), конвенции для монорепо с Turborepo, стратегию release management. Настраивает automated changelog через conventional-changelog, определяет стратегию управления feature branches.
Performance Engineering · 1
Проектирует систему performance budgets для React-приложений: per-route бюджеты (JS, CSS, images), автоматический мониторинг в CI/CD через Lighthouse CI и web-vitals, алерты при деградации. Определяет бюджеты на основе конкурентного анализа и бизнес-требований.
Дополнительные навыки
Команда их не оценивает, но они входят в самооценку и план развития.
Что меняется на Lead
53 навыков получают более высокое ожидание или становятся ключевыми при переходе с Senior на Lead. Сначала самые большие скачки.
- Алгоритмы и сложность: Продвинутый → Эксперт
- Асинхронное программирование: Продвинутый → Эксперт
- Визуальное регрессионное тестирование: Продвинутый → Эксперт
- Доступность (Accessibility): Продвинутый → Эксперт
- Качество кода и рефакторинг: Продвинутый → Эксперт
- Компонентное тестирование: Продвинутый → Эксперт
- Микрофронтенды: Продвинутый → Эксперт
- Оптимизация бандла: Продвинутый → Эксперт
- Паттерны проектирования: Продвинутый → Эксперт
- Разработка дизайн-систем: Продвинутый → Эксперт
} в открытой матрице компетенций: 56 навыков на 5 уровнях. Матрица бесплатна для специалистов и останется бесплатной.