Разработчик Node.js (удаленная работа)

4 марта 2026

Уровень зарплаты:
з.п. не указана
Требуемый опыт работы:
Не указан

Вакансия: Разработчик Node.js

Описание вакансии

О проекте

Вы присоединитесь к команде White Label это 20+ микросервисов, которые обеспечивают полный цикл управления DDoS-защитой: от регистрации клиента и настройки доменов до реалтайм-статистики атак и автоматического биллинга. Платформа мультитенантная : каждый партнёр (white-label) получает изолированное окружение для своих конечных клиентов, с собственным брендингом, конфигурацией и набором фич. Доступ через API v1/v2/v3, личные кабинеты.

Масштаб:

  • ClickHouse обрабатывает 286 миллиардов строк в аналитических запросах, хранит десятки терабайт агрегированных данных;
  • Во время атак система обрабатывает до 152 миллионов событий блокировок в час;
  • Десятки тысяч доменов под защитой, каждый с индивидуальной конфигурацией и мониторингом;

Наш стек

  • TypeScript / Node.js 100% backend на TypeScript;
  • NestJS основной фреймворк для всех сервисов;
  • Moleculer legacy-микросервисы (поддержка и миграция на NestJS);

Базы данных ключевая часть работы:

  • PostgreSQL основное хранилище (TypeORM, миграции, сложные запросы);
  • ClickHouse аналитика и статистика трафика: терабайты данных, MergeTree / AggregatingMergeTree движки, MaterializedView, партиционирование по месяцам, TTL-политики, агрегации и перцентили;
  • MySQL legacy-данные и биллинг системы, JSON-поля, сложные схемы синхронизации; Redis кеширование, сессии, rate-limiting;

Асинхронное взаимодействие:

  • RabbitMQ основная шина сообщений между сервисами (exchanges, dead-letter queues, retry); NATS транспорт для Moleculer-сервисов; Kafka первичный источник статистики;

Архитектура и паттерны:

  • Микросервисная архитектура (20+ сервисов) с мультитенантной изоляцией данных;
  • Clean Architecture / Layered Architecture (domains storage gateways);
  • BFF-паттерн (Facade, API Gateway агрегация данных из множества источников для фронтенда);
  • Сложные runtime-синхронизации между разнородными БД и внешними API (биллинг, платёжные системы, сетевая инфраструктура, DNS, SSL-провайдеры);
  • Паттерны отказоустойчивости: backpressure , circuit breaker , graceful degradation , retry с dead-letter queues;
  • Общие версионируемые контракты и приватные npm пакеты;

Инфраструктура:

  • Docker + Kubernetes (Pod, Deployment, Service, Job, CronJob, Helm-чарты, liveness/readiness probes, автоскейлинг);
  • GitLab CI/CD (автоматические пайплайны);
  • PM2 для legacy-сервисов на bare metal;
  • Graylog централизованное логирование;
  • Linux управление серверами, виртуалками и контейнерами через SSH ;
  • Jest (unit, integration, e2e);
  • Supertest;

Чем предстоит заниматься

  • Разрабатывать микросервисы на NestJS + TypeScript в рамках проектов команды;
  • Проектировать и реализовывать сложные синхронизации данных между PostgreSQL, MySQL, ClickHouse и сторонними API (биллинг WHMCS, платёжные системы Stripe/TBank/PayPal, сетевая инфраструктура, DNS-провайдеры, SSL Let's Encrypt) с гарантией eventual consistency, идемпотентности и обработки ошибок;
  • Работать с ClickHouse на терабайтных объёмах: проектировать схемы таблиц (MergeTree, ReplacingMergeTree), писать MaterializedView, управлять партициями и TTL, оптимизировать аналитические запросы на сотнях миллиардов строк (агрегации, перцентили, семплирование);
  • Писать и оптимизировать SQL-запросы для PostgreSQL и MySQL ;
  • Управлять миграциями через TypeORM , проектировать схемы данных, планировать миграции с legacy-форматов на нормализованные структуры ;
  • RabbitMQ с паттернами отказоустойчивости: backpressure при пиковых нагрузках (миллионы событий/час), retry-стратегии, dead-letter queues;
  • Проектировать REST API для внешних партнёров
  • Расследовать и устранять production-инциденты: анализ логов в Graylog, подключение к контейнерам в K8s, отладка SQL-запросов, участие в post-mortem, проектирование reconciliation-джобов и алертов для предотвращения рассинхронизации;
  • Управлять своей dev-виртуалкой через SSH: Docker Compose, просмотр логов, перезапуск сервисов, диагностика сети;
  • Проводить и проходить Code Review;

Что мы ожидаем

  • 3+ года коммерческой разработки на Node.js / TypeScript;
  • Уверенное владение NestJS (модули, DI, middleware, guards, interceptors, pipes);
  • Опыт проектирования и поддержки микросервисной архитектуры на практике;
  • Глубокое знание SQL и реляционных БД PostgreSQL или MySQL: оптимизация запросов, индексы, EXPLAIN ANALYZE, транзакции, партиционирование, оконные функции;
  • Опыт работы с ORM (TypeORM или аналоги) и написания миграций , включая нетривиальные сценарии: переходные периоды с параллельной работой старой и новой схемы;
  • Практический опыт с брокерами сообщений (RabbitMQ, Kafka или NATS) не hello-world, а реальные сценарии с retry, dead-letter, гарантией доставки;
  • Понимание паттернов отказоустойчивости в распределённых системах: eventual consistency, идемпотентность, graceful degradation, компенсирующие транзакции (saga);
  • Понимание Kubernetes на уровне архитектуры : Pod, Deployment, Service, Job, CronJob, ConfigMap, liveness/readiness probes не обязательно настраивать кластер, но понимать, как ваш сервис живёт в K8s;
  • Опыт работы с Docker : Dockerfile, docker-compose, отладка контейнеров;
  • Уверенная работа в Linux через командную строку : SSH, grep/awk/sed, systemctl, journalctl, docker logs, просмотр процессов, работа с файлами, базовая диагностика сети (curl, netstat/ss, ping, dig);
  • Умение диагностировать проблему БД через psql/mysql CLI, анализ логов, просмотр метрик;
  • Навык написания unit и integration тестов (Jest);
  • Умение читать и анализировать чужой код на Code Review;

Будет серьёзным плюсом

  • Опыт работы с ClickHouse или другими колоночными OLAP-базами (MergeTree, AggregatingMergeTree, MaterializedView, партиции, TTL);
  • Опыт синхронизации данных между несколькими гетерогенными источниками (разные БД + внешние API) reconciliation jobs, обработка конфликтов, мониторинг консистентности, алерты на рассинхронизации;
  • Опыт работы с большими объёмами данных (терабайты) агрегации, кеширование, инкрементальные обновления, семплирование, преагрегация;
  • Опыт работы в домене сетевой безопасности , CDN , хостинга или телекома (понимание L3/L7, reverse proxy, SSL/TLS, DNS);
  • Опыт расследования production-инцидентов : post-mortem, root cause analysis, проектирование алертов и системы мониторинга;
  • Понимание Clean Architecture / Hexagonal Architecture;
  • Опыт проектирования мультитенантных систем с изоляцией данных между клиентами;
  • Опыт работы с Redis (кеширование, pub/sub, rate-limiting);
  • Знание Moleculer Framework;

Условия

  • Полностью удалённая работа;
  • Команда из 8 10 backend-разработчиков;
  • Работа с production-нагрузкой: реальные терабиты трафика, тысячи доменов, атаки в реальном времени;
  • Каждый разработчик имеет личную dev-виртуалку с полным контуром сервисов полная автономность в разработке;
  • Возможность влиять на архитектурные решения;
  • Jira + GitLab + Mattermost прозрачные процессы;


Посмотрите похожие вакансии

Старший разработчик Node.js
Компания: Peaky Hunters
Зарплата: от 308 694 до 308 694 руб.
Fullstack разработчик (Node.js / Next.js)
Компания: АйТиИ Экспо Интернешнл
Зарплата: з.п. не указана
Middle Backend разработчик - Node.js + TypeScript
Компания: TOLA
Зарплата: от 70 000 до 90 000 руб.
Backend разработчик (Node.js)
Компания: ADWAY.TEAM
Зарплата: з.п. не указана