Разрабатывать web-интерфейсы с помощью React/Angular/Vue (знание любого фреймворка).
Оптимизировать код JS, уверенные знания TypeScript, CSS, HTML5.
Взаимодействовать с командой backend и выполнять интеграцию UI с backend.
Настраивать CI/CD пайплайны с автоматическими тестами (unit, integration, e2e), линтерами, статическим анализом.
Обеспечивать observability: логи, метрики (Prometheus), трейсинг, алерты.
Проводить нагрузочное тестирование ключевых эндпоинтов и оптимизировать узкие места.
Обеспечивать безопасность: защита от инъекций, валидация входных данных, rate limiting, аутентификация (JWT/OAuth), ролевая модель доступа.
Node.js — от 2 лет коммерческой разработки, из них минимум 1 год в роли Middle (архитектурные задачи, код-ревью, принятие решений).
TypeScript — глубокое знание (дженерики, utility types, conditional types, декораторы).
JavaScript — понимание внутреннего устройства event loop, memory leaks, оптимизация асинхронного кода.
Один из фреймворков: Nest.js (предпочтительно) или Express/Fastify — на уровне проектирования модулей, middleware, guards, interceptors.
Тестирование — написание unit (Jest), интеграционных (supertest), e2e-тестов. Опыт с моками, тестовыми контейнерами (Testcontainers).
CI/CD — опыт настройки пайплайнов (GitLab CI / GitHub Actions / Jenkins).
Docker — написание Dockerfile, docker-compose для локальной разработки и тестовых окружений.
Очереди сообщений — RabbitMQ или Redis Streams (для асинхронной обработки задач).