О проекте
Мы строим два взаимосвязанных продукта:
1. Агрегатор автопрокатов (MVP за 3-4 месяца)
Цель - быстро вывести на рынок продукт, который объединяет десятки поставщиков автомобилей, синхронизирует флот, тарифы, доступность, бронирования, страховки, платежи и выдачу авто.
Стек: NestJS, PostgreSQL, Redis, BullMQ, OpenSearch, Next.js
2. Fleet Management System (FMS - старт через 4–5 месяцев)
Полноценная система управления автопарком уровня Enterprise: тарифы, бронирования, контракты, повреждения, ТО, телеметрия, бухгалтерия, интеграции.
Стек: NestJS (микросервисы), Kafka, PostgreSQL + TimescaleDB, Redis, Go, Kubernetes, Next.js
Мы строим архитектуру, которая начнётся как монолитный NestJS-проект, а затем естественным образом вырастет в микросервисную FMS. В этом процессе backend-разработчик будет ключевым участником.
Кого мы ищем
Мы ищем сильного backend-разработчика, который:
- умеет строить чистые и надёжные backend-модули на NestJS;
- знает TypeScript на хорошем уровне;
- понимает архитектурные решения, связанные с интеграциями и высокими нагрузками;
- умеет работать с БД, очередями и асинхронной обработкой;
- хочет расти до Senior/Lead в рамках проекта;
- готов писать код, который живёт долго и масштабируется.
Backend-разработчик работает в тесной связке с архитектором: участвует в обсуждении архитектурных решений, предлагает улучшения, получает поддержку по проектированию сложных модулей. У нас нет бюрократии, решения принимаются быстро и технично. У разработчика есть влияние на проектирование API, схему данных и внутреннюю архитектуру модулей. У нас современная техническая культура: code review, линтеры, форматтеры, автоматические тесты, CI/CD. Мы ценим инженерный подход и ответственность за результат, поэтому мы ждём от backend-разработчика активной позиции, а не только выполнение задач по ТЗ.
Основные задачи
1-3 месяц (этап агрегатора)
Разработка ключевых модулей backend:
- интеграции с поставщиками (API, webhooks, retries, валидация);
- модуль бронирований (цены, доступность, валидаторы, правила);
- работа с PostgreSQL: миграции, сложные запросы, индексация;
- очереди BullMQ: фоновые задачи, ретраи, дедубликация;
- кэширование в Redis (sessions, caching, rate limits);
- разработка API-контрактов (OpenAPI).
Работа с архитектурой и инфраструктурой:
- реализация архитектурных решений, принятых архитектором;
- участие в обсуждении структуры модулей NestJS;
- написание чистого кода (SOLID, KISS, DRY);
- написание юнит-тестов и интеграционных тестов.
4-12 месяц (этап FMS)
Участие в переходе к микросервисной архитектуре:
- перенос модулей агрегатора в отдельные bounded contexts;
- работа с Kafka (публикация событий, консюмеры, ретенции, топики);
- реализация event-driven взаимодействия между сервисами;
- проектирование read models / projections.
Разработка сложных бизнес-модулей FMS:
- тарифы и динамическое ценообразование;
- availability engine;
- модули контрактов и связанной логики;
- управление повреждениями;
- сервисные работы и ТО;
- финансы, расчёты, удержания;
- модуль телеметрии (совместно с Go-сервисом).
Участие в CI/CD, наблюдаемости и качестве кода:
- логирование, метрики, уведомления и оповещения;
- оптимизация производительности;
- участие в расширенных code-review.
Требования
Обязательные
Технологическая экспертиза
- 2+ года коммерческого опыта в backend-разработке на Node.js / TypeScript
- Отличное знание NestJS: DI, модули, middleware, guards, interceptors, pipes
- Опыт работы с PostgreSQL:
- joins, индексация, оптимизация запросов
- миграции
- проектирование схем
- Опыт работы с Redis:
- кэш
- очереди BullMQ
- rate limiting
- Опыт разработки REST API, понимание:
- error-handling
- idempotency
- retries / backoff
- вебхуки
- антидублирование операций
- Работа с асинхронными очередями и обработкой фоновых задач
- Уверенное знание TypeScript (Generics, utility types, промисы, async flow)
- Опыт написания unit и integration тестов
Будет плюсом
- опыт в Kafka или других брокерах сообщений;
- опыт с TimescaleDB или time-series данными;
- опыт event-driven архитектур;
- опыт интеграции внешних API;
- опыт построения микросервисов на NestJS;
- знание Go (или желание изучить);
- опыт в b2b-интеграциях;
- опыт работы с OpenSearch / ElasticSearch;
- опыт в автомобильной или логистической сфере.
Личные качества
Мы ищем разработчика, который:
- умеет писать чистый, поддерживаемый код;
- умеет оценивать задачи и предлагать улучшения;
- не боится сложных задач и новых технологий;
- умеет мыслить системно и работать в большом домене;
- может аргументировать решения и слышать контраргументы;
- не усложняет там, где можно сделать проще.
Что мы предлагаем
- Работа с уникальной архитектурой: интеграции, pricing, booking engine, event-driven FMS
- Разработка продукта с нуля
- Возможность вырасти до senior/tech lead
- Отсутствие legacy
- Гибкий график, удалёнка
- Долгосрочный roadmap роста проекта
- Участие в проектировании архитектуры и доменной модели