Middle+ TypeScript Developer
Задачи
Архитектура и разработка
- Разрабатывать 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 (для асинхронной обработки задач).