Tech Lead (Node.js · NestJS)

Дата размещения вакансии: 09.09.2026
Работодатель: Devhunt
Уровень зарплаты:
з/п не указана
Город:
Москва
Требуемый опыт работы:
Более 6 лет

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

Вести кросс-функциональную команду маркетплейса — несколько инженеров уровня Senior / Middle+ на backend и frontend. Команда растёт, поэтому в зоне ответственности: постановка технических задач, 1-on-1, регулярная обратная связь, планы развития и рост специалистов.

Участвовать в найме: проводить технические интервью, разбирать тестовые задания, участвовать в финальном принятии решений по своей команде и сопровождать онбординг новых сотрудников до первой самостоятельной задачи.

Отвечать за архитектуру основного продукта: проектировать решения, фиксировать их письменно, защищать на техническом совете и принимать ответственность за последствия архитектурных решений.

Отдельный пласт работы — техническое обновление существующего контура: программа на год и более, которую необходимо вести поэтапно, сохраняя обратную совместимость и обеспечивая понятный промежуточный результат. Важно развивать техническую платформу без остановки продукта и без превращения задачи в бесконечный рефакторинг.

Работать с high-load задачами: конкурентный доступ к товарам и балансам, идемпотентность, распределённые транзакции и Saga, Outbox, консистентность между сервисами, кэширование и его инвалидация, тяжёлые миграции без даунтайма.

Участвовать в разборе инцидентов: проводить blameless postmortem, определять системные причины и доводить исправления до системных изменений, а не ограничиваться разовым устранением проблемы.

Сохранять практическую связь с разработкой. Ежедневное кодирование не входит в основную нагрузку, однако в зависимости от ситуации потребуется самостоятельно брать сложный или рискованный участок, прототип архитектуры, критичный фикс или помогать команде на пике перед релизом.

Работать в кросс-функциональном контуре: внутри команды — backend и frontend (Vue 3 / Nuxt), рядом — продукт, QA, отдел Computer Vision, DevOps, аналитика и Support.

Использовать AI как полноценную часть инженерного процесса. Cursor и Claude Code используются в ежедневной работе, применяются AI-гейты в CI и внутренние инструменты вокруг метрик и ревью. От Tech Lead ожидается формирование инженерного стандарта команды: где AI позволяет существенно ускорить работу, где создаёт дополнительные риски, как ревьюить AI-generated code и как правильно оформлять контекст и правила для команды.

Требования:

5+ лет коммерческой разработки на Node.js / TypeScript.

NestJS в production — обязательное требование. Нужен как минимум 2-летний практический опыт работы с NestJS на боевых проектах.

Глубокое знание PostgreSQL — ключевое требование. Важен не только опыт написания запросов, но и годы работы с базой данных под нагрузкой: планы запросов и оптимизация, индексы и их стоимость, блокировки и deadlocks, уровни изоляции, конкурентный доступ к строкам, миграции таблиц на десятки и сотни миллионов записей без даунтайма, репликация и работа с репликами.

Эти темы подробно обсуждаются на техническом интервью.

Опыт работы с high-load и распределёнными системами: Redis, очереди (RabbitMQ / Kafka), идемпотентность, Outbox, компенсации, консистентность при частичных отказах.

Самостоятельное ведение проектов в связке с менеджерами. Важен опыт, когда за технический результат проекта отвечал Tech Lead, а не только отдельный архитектор. Ожидается готовность самостоятельно формировать решение, аргументировать его перед руководством и отвечать за реализацию.

Готовность отвечать за весь web-контур, а не только за backend. Писать на Vue необязательно, однако важно понимать frontend-архитектуру, SSR, API-контракты и уметь обсуждать и ревьюить frontend-решения на уровне архитектуры и рисков.

Инженерная культура: тесты, code review, CI/CD, работа с инцидентами и postmortem — часть стандартного процесса разработки, а не задачи «на свободное время».

AI как рабочий инструмент и понимание его ограничений: способность оценивать, где LLM действительно экономит время, где может генерировать правдоподобные ошибки и как эффективно выявлять их на этапе ревью.

Плюсом будет:

Опыт ведения длительной технической программы на живом продукте: миграция, переход на новый контур, крупный рефакторинг или другая программа длительностью год и более. Важны этапность, обратная совместимость и видимый результат на протяжении всей программы, а не только в финальной точке.

Опыт с Vue 3 / Nuxt (SSR) или другим SSR-фреймворком — позволит быстрее включиться в web-часть продукта.

Опыт с Kubernetes / observability: метрики, трейсинг, алертинг и эффективное взаимодействие с DevOps.

Опыт работы с инженерными метриками: delivery, review turnaround, incidents — и понимание того, как использовать их для улучшения процессов, не превращая метрики в формальные KPI для оценки людей.

Интерес к игровой индустрии — понимание ценности внутриигровых предметов и особенностей нашей аудитории.

Мы предлагаем:

Реальную зону ответственности с первого месяца: направление, команда, техническиерешения — без согласования каждого шага.
Продукт, которым пользуются миллионы людей каждый день, и технически насыщенный домен: high-load, живые деньги, распределённые P2P-сделки.
AI-first процесс: — Cursor, Claude Code, внутренние AI-инструменты встроены в разработку; LLM не считается читингом.
Прямой контакт с CTO и продуктом: короткая дистанция принятия решений, никаких многослойных согласований.
Команду из 8+ стран — при этом полностью русскоязычную: английский для работы унас не нужен.
Автономию и доверие: мы нанимаем взрослых людей и не занимаемся микроменеджментом.
Полностью удалённую работу.