О проекте Мы ищем опытного Node.js-разработчика (уровень Middle+ / Senior) на проект нашего заказчика для развития и повышения технического качества On‑premises-решений (версии v2 и v3). Проект ориентирован на создание надежного, масштабируемого бэкенда для корпоративных клиентов с высокими требованиями к безопасности и отказоустойчивости. Чем предстоит заниматься: Разрабатывать и поддерживать бэкенд-компоненты на Node.js (версии v2 и v3) для On‑premises-развертывания. Проектировать и реализовывать модули аутентификации и авторизации с разграничением прав доступа. Настраивать взаимодействие с базами данных: PostgreSQL (основная), MongoDB (документо-ориентированные данные), оптимизировать запросы и схемы. Реализовывать real-time функционал через WebSockets / Socket.IO. Интегрироваться с шиной сообщений Apache Kafka (продюсеры/консьюмеры, управление топиками, обработка событий). Работать с контейнеризацией и оркестрацией: Kubernetes (включая cue-шаблоны для генерации конфигураций). Настраивать и сопровождать обратный прокси/балансировщик Nginx. Проводить рефакторинг, писать чистый, тестируемый код на JavaScript/TypeScript, документировать API и архитектурные решения. Отвечать за техническое качество продукта: юнит-тесты, интеграционные тесты, code review, анализ производительности. Обязательные требования: Глубокое знание Node.js (современные версии, Event Loop, Streams, Cluster, работа с памятью). Опыт работы с TypeScript и JavaScript (ES2020+). Уверенное владение Express.js или аналогичными фреймворками. Опыт работы с PostgreSQL и MongoDB (проектирование схем, индексы, агрегации, транзакции). Практический опыт с WebSockets / Socket.IO (комнаты, reconnection, fallback-транспорты). Опыт развертывания и управления приложениями в Kubernetes (k8s), понимание cue-шаблонов для конфигураций. Опыт работы с Apache Kafka (продюсеры/консьюмеры, группы, партиционирование). Понимание механизмов аутентификации и авторизации (JWT, OAuth2, RBAC, сессии). Настройка Nginx как reverse-proxy (upstream, балансировка, заголовки, SSL). Будет преимуществом: Опыт работы с Prometheus (сбор метрик, экспортеры, alerting). Знание ClickHouse (работа с большими объемами аналитических данных). Опыт интеграции с AWS S3 (загрузка/выгрузка объектов, signed URLs, политики). Использование PM2 для управления процессами в production (fork/cluster mode, логирование, перезапуск). Ключевой стек: Node.js, TypeScript, Express, PostgreSQL, MongoDB, WebSockets/Socket.IO, Kubernetes (cue-шаблоны), Apache Kafka, Nginx, JWT/OAuth2. Условия работы Удаленный формат работы по РФ (основное взаимодействие по Московскому часовому поясу). Оформление: договор с ИП или самозанятым (оформление к нам, аутстафф на проект заказчика). График: 5/2, полный день (8 часов). Проектная занятость от 6 месяцев с возможностью продления или перехода на другой проект из нашего пула. Что мы предлагаем: Интересный проект с фокусом на техническое качество и архитектуру On‑premises-решений. Современный стек (Node.js TS, k8s, Kafka) и работу с высоконагруженными компонентами. Доступ ко всем необходимым средам и инструментам. Регулярные выплаты без задержек (1 раз в месяц). Полное соблюдение условий договора. Развитие и карьерный рост (в т.ч. роль ведущего разработчика или архитектора). Поддержку от команды (кадровая, юридическая и бухгалтерская помощь). Стабильную занятость и проекты на выбор из портфеля после завершения текущего проекта.