Не упустите лучшие вакансии!
Подключите наш Telegram-бот и получайте мгновенные уведомления о новых предложениях из 10+ источников. Будьте первым, кто откликнется!
Подключить ботаSenior Backend Engineer (Node.js/NestJS, Postgres, Redis)
Senior Backend Engineer (Node.js/NestJS, Postgres, Redis) 200-250 часов работы.
О проекте
Мы делаем онлайн-платформу (RU-рынок, эзотерика: тарологи, астрологи) с real-time функционалом: видео/аудио-чат (Jitsi), платежи и бронирования.
Продукт уже в продакшене, задача ближайших месяцев - довести его до боевого уровня: обновить платформу, закрыть вопросы безопасности, добавить наблюдаемость и тесты.
Мы ищем сильного инженера, который умеет доводить проекты до боевого уровня
Технологии
-
Node.js 20+, NestJS 9/10, TypeScript 5+
-
Postgres 14+, TypeORM (миграции), Redis (Bull)
-
JWT + refresh (httpOnly), rate-limit/anti-bruteforce
-
Swagger (dev/stage only), Pino (JSON) + Prometheus/OTEL
-
Docker (multi-stage), GitHub Actions (v4), Sentry/alerts
Задачи
-
Перевести Docker/CI на Node 20, GitHub Actions v4; включить npm ci, кэш, npm audit (fail on high).
-
Настроить безопасность: throttler на /auth/*, /sms, /email-code; refresh-cookie secure: true, sameSite: 'strict'; жёсткий CORS-whitelist.
-
Написать тесты: e2e (Supertest) - регистрация → логин → refresh → guarded route → logout; unit-тесты на AuthService/TokenService.
-
Внедрить наблюдаемость: Pino с requestId, метрики http_latency p95/p99, error rate, queue lag (Bull).
- Привести миграции к консистентному состоянию, проверить synchronize=false в prod.
- Подготовить мульти-инстансы: конфиги env, healthchecks, разделение stage/prod.
Объём и сроки
Мы заранее оценили работу:
-
Объём: 200–250 часов.
-
Горизонт: 4–6 недель при полной занятости.
-
После этого возможны новые задачи, но в рамках отдельного согласования.
Будет плюсом
-
Опыт с Jitsi/Janus/WebRTC (интеграция токенов/конфигов).
-
Реализация безопасных refresh-токенов, ротации ключей.
-
Настройка SLA/SLO и алертинга (Prometheus/Alertmanager/Grafana).
Условия
-
Удалённый формат, полная или почти полная занятость.
-
Долгосрочная работа (3+ месяцев).
-
Ставка $25/ч. Оплата по закрытым чек-поинтам (спринтам).
-
USDT
Тестовое (оплачиваемое, до 5 часов)
Репозиторий (снэпшот). Нужно:
Ветка feat/hardening: включить Nest Throttler на /auth/* и один «счётчик» метрик (Prometheus).
Ветка chore/ci-node20: GitHub Actions v4, Node 20, npm ci, npm audit --audit-level=high.
Один e2e: POST /auth/login → GET /me.
Сделать PR + README («что и почему»).
Оплата фикс - $125.
Как понять, что это ваше
Вы делали боевые сервисы на NestJS + Postgres.
Писали unit/e2e, поднимали CI/CD.
Не откладываете тесты и метрики «на потом», а делаете сразу и воспроизводимо.
В сопроводительном письме укажите коротко:
-
Ссылку на один ваш PR или commit, где вы внедряли тесты (unit или e2e) в NestJS или другой Node.js сервис.
-
Ссылку на один ваш PR или commit, где вы настраивали CI/CD (GitHub Actions, GitLab, Jenkins — не важно).
-
Проект (коммерческий или pet), где вы настраивали rate-limit или security middleware. Одним предложением: что делали и зачем.
-
Ваш любимый инструмент для логирования или метрик (pino, winston, prom-client, opentelemetry, etc.) - и почему именно он.
-
Если работали с Jitsi/Janus/WebRTC - напишите в 2–3 предложениях: какие были самые большие проблемы и как решали.
Ваше резюме увидят первым!
Автоматическое поднятие на HeadHunter каждые 4 часа. Увеличьте свои шансы на успех в 10 раз!
Подключить автоподнятие