Senior Backend‑Developer (Node.js)
Город:
Москва
Занятость:
Полная занятость
Опыт:
Более 6 лет
Компания "Devhunt"
Прибыльная и быстрорастущая продуктовая компания, развивающая околоигровые продукты, один из крупнейших маркетплейсов внутриигровых предметов в мире в своей экосистеме: продаёт быстрее и безопаснее всех благодаря собственному ComputerVision-решению с системой P2P-сделок. Мы делаем так, чтобы покупка и продажа предметов была мгновенной, безопасной и понятной.Задачи:
- Проектировать и реализовывать бизнес-критичные микросервисы с нуля и развивать существующие
- Решать задачи конкурентного доступа: race conditions при одновременных покупках одного товара, двойные списания, корректная работа с балансами при тысячах одновременны операций
- Обеспечивать консистентность данных между микросервисами: саги, компенсирующие транзакции, eventual consistency
- Проектировать и поддерживать контракты между сервисами (HTTP API, события в Kafka, сообщения в RabbitMQ)
- Оптимизировать работу с PostgreSQL: сложные запросы, правильные уровни изоляции, индексирование, партиционирование, миграции без даунтайма на таблицах с сотнями миллионов записей
- Проектировать очереди и event-driven потоки: гарантии доставки, ordering, retry-стратегии, dead letter queues, poison message handling
- Писать тесты: unit, integration с Test containers, e2e
- Участвовать в в код-ревью, формировать стандарты и практики команды
- Отвечать за свои сервисы в produtcion: мониторинг, алертинг, инцидент-менеджмент
- Использовать AI-инструменты для ускорения разработки и критически оценивать результат
-
5+ лет коммерческой backend-разработки
-
TypeScript + Node.js — не «писал скрипты на ноде», а строил production-системы: понимание event loop, libuv, streams, memory leaks, профилирование, отладка под нагрузкой
-
NestJS — реальный опыт с DI, модулями, guards, interceptors, pipes, custom decorators, микросервисными транспортами
-
PostgreSQL — не «делал SELECT», а: транзакции с правильными уровнями изоляции, SELECT ... FOR UPDATE / FOR UPDATE SKIP LOCKED , deadlocks и их диагностика, EXPLAIN ANALYZE , partial/covering/GIN/GiST индексы, партиционирование, оконные функции, CTE, миграции на живых данных
-
TypeORM — query builder, миграции, работа с транзакциями, понимание ограничений и когда переходить на raw SQL
-
Redis — кэш-стратегии (cache-aside, write-through), распределённые блокировки, rate limiting, pub/sub, понимание eviction policies, persistence (RDB/AOF)
-
RabbitMQ — exchange types, routing, prefetch, ack/nack, dead letter exchanges, стратегии retry, отравленные сообщения
-
Опыт с race conditions — не теоретический, а реальный: находил, воспроизводил, чинил в production
-
Идемпотентность — умение проектировать операции, безопасные при повторном выполнении (idempotency keys, deduplication)
-
Тестирование — не «знаю что такое jest», а: тестовая стратегия, моки vs реальные зависимости, Testcontainers, тестирование race conditions
-
Самостоятельность — способность взять задачу «нужно решить проблему X» и довести до production без пошагового руководства
-
AI как инструмент — практический опыт работы с AI-ассистентами в разработке (Cursor, Copilot, Claude, ChatGPT). Не «спрашиваю у ChatGPT как написать цикл», а: декомпозиция задач для AI-агентов, промпт-инжиниринг для сложных задач, критическая оценка сгенерированного кода, понимание ограничений и галлюцинаций LLM
Будет плюсом:
- Kafka — partitioning, consumer groups, exactly-once semantics, event sourcing, Schema Registry
- ElasticSearch / OpenSearch — проектирование маппингов, bulk-индексация, оптимизация поисковых запросов, агрегации
- ClickHouse — аналитические запросы, потоковая вставка, materialized views
- Опыт с финансовыми системами, платёжными сервисами, банкингом — где ошибка = потеря денег
- Опыт в gaming, e-commerce, high-frequency trading, fintech — знакомство с доменом и его вызовами
- Распределённые транзакции — Saga (orchestration / choreography), Outbox Pattern, Two-Phase Commit на практике
- Нагрузочное тестирование — k6, Artillery
- Понимание балансировки нагрузки, стратегий деплоя (blue-green, canary, rolling)
- Опыт декомпозиции монолитов
- Опыт построения AI-пайплайнов в команде: автоматизация ревью, генерация тестов, AI-агенты для DevOps-задач
- Опыт работы с LLM API (OpenAI, Anthropic, локальные модели) — интеграция AI-функциональности в продукт
- Python — умение читать и писать код (часть внутренних инструментов и ML-пайплайнов)
Условия:
- Работу над продуктом, которым пользуются миллионы людей каждый день
- Влияние на продукт: здесь код двигает бизнес x5-x7, а не пылится в бэклоге
- Технически сложные задачи — high-load, concurrency, distributed systems — каждый день
Микросервисную архитектуру, где ты владеешь своими сервисами целиком - Участие в ключевом проекте трансформации платформы — прямое влияние на рывок компании
- Международную команду из 8+ стран
- Автономию и доверие: мы нанимаем взрослых людей и не занимаемся микроменеджментом
- Конкурентную компенсацию (обсуждается индивидуально)
- Полностью удалённую работу
При отклике, укажите, пожалуйста, в сопроводительном письме в какие игры вы играете или играли :)
29 Мая
Senior frontend developer (МТС Веб Сервисы, Медиаподписка)
Москва
Компания "МТС" Обязанности: Разработка и внедрение функциональности на Angular 20+ Оптимизация и рефакторинг текущей кодовой базы....
29 Мая
Senior Data Quality Analyst / Аналитик по качеству данных( Unilever )
Москва
Компания "Unilever" Мы - команда управления данными и аналитической отчетности компании ЮниРусь. Мы ищем опытного аналитика для развития и...
29 Мая
Backend-разработчик( Тулпар Интерьер Групп )
Москва
Компания "Тулпар Интерьер Групп" «Авиационные интерьеры» – это одна из ведущих и динамично развивающихся производственных компаний,...
29 Мая
Москва
Компания "Сбербанк" Мы разрабатываем AI продукт для Департамента Ключевых Клиентов - GenIdeas. Инструмент позволяет анализировать большие объемы...
29 Мая
Senior ML-инженер( «Газпромбанк» (Акционерное общество) )
Москва
Компания "«Газпромбанк» (Акционерное общество)" Твои задачи: Разработка и внедрение ML-моделей полного цикла: от анализа данных до вывода...
Вакансия размещена в отрасли