описание
Навыки: Node.js, TypeScript, ClickHouse, SQL. Квалификация: Senior. Специализации: Бэкенд разработчик.
**О нас**
**DataLouna** — киберспортивная аналитика нового поколения. Уже 4 года наша команда превращает сырые данные CS2 и Dota 2 в уникальную статистику, предсказания и эксклюзивные беттинг-линии.
Мы часть крупного IT/киберспортивного холдинга, работаем с топовыми букмекерами.
**Отличие от HLTV и Dotabuff:** не агрегируем публичные данные, а создаём собственные метрики вместе с профессиональными аналитиками и тренерами. На этой базе строим B2B-решения: API, предиктивные модели, уникальные линии.
**Цель:** стать HLTV 2.0 в аналитике и главным поставщиком данных для беттинг-индустрии.
**Слово от CEO**
На создание технологического ядра DataLouna ушли годы. Мы перепробовали сотни подходов к данным и их применению, пока не нашли свой путь. Теперь собираем команду, с которой пойдём дальше.
- Нам не нужны исполнители, которых легко заменит LLM
- Не нужны те, кого надо постоянно контролить, разжёвывать задачи и писать детальные ТЗ
Нам нужны взрослые. Получил задачу — покрутил решения — пришёл с предложением и сроками — сделал. И кайфанул от результата.
Мы верим в маленькую автономную команду. Минимум бюрократии, созвонов и регламентов. Большой результат.
**Что будешь делать**
Развивать несколько продуктов: сервис статистики CS2/Dota 2, беттинг-линии, платформу datalouna.io.
**Задачи:**
- Проектировать и разрабатывать микросервисы, у нас ~10 сервисов на Node.js/TypeScript, один на Go
- Оптимизировать ClickHouse и PostgreSQL под аналитику и высокие нагрузки
- **Разрабатывать API:** REST, GraphQL, интеграции с внешними системами
- **Работать с live-данными:** сотни событий в секунду, low latency пайплайны
- **Влиять на продукт:** предлагать решения, участвовать в архитектурных решениях
**Примеры реальных задач:**
- Спроектировать обработку live-событий с latency < 500ms
- Оптимизировать аналитические запросы по миллионам записей
- Разработать сервис расчёта предиктов в реальном времени
- Сделать GraphQL API с live-обновлениями через subscriptions
**Что важно**
**Обязательно:**
- **Node.js / TypeScript, опыт от 4 лет.** Уверенная работа с async/await, понимание Event Loop. Опыт написания серверного кода без тяжелой магии фреймворков. Bun / Hono будут плюсом, но не обязательны
- **PostgreSQL: п**роектировал схемы с нуля, понимаешь индексы, транзакции, умеешь читать EXPLAIN ANALYZE
- **ClickHouse:** имеешь реальный опыт проектирования схем под аналитику, понимаешь особенностей колоночных БД, работаешь кодеками сжатия
- **SQL:** умеешь писать сложные запросы руками, без ORM
- **Redis: п**рактический опыт использования в проде
- **System Design:** умеешь проектировать архитектуру, декомпозировать задачи, обосновывать выбор технологий
- **Микросервисы:** у тебя есть опыт работы с распределенными системами, ты понимаешь REST/gRPC, message queues
- **Docker и CI/CD:** разворачиваешь сервисы в Docker, работаешь с docker-compose
- **Самостоятельность: т**ы не ждешь задач в готовом виде. Получив цель, ты сам определяешь путь: разбиваешь ее на этапы, распределяешь силы и ведешь работу от концепции до реализации. Мы доверяем процесс нашим сотрудникам и ждем осознанного управления временем и приоритетами
**Будет плюсом:**
- Опыт работы с Go: у нас есть сервис на нем
- Если знаешь GraphQL: schema design, DataLoader, subscriptions
- Kubernetes, нагрузочное тестирование
- Парсинг / веб-скрапинг
- Бэкграунд в сфере беттинга или киберспорта
Стек
- **Backend:** Node.js, TypeScript, Bun, Hono
- **Базы данных:** PostgreSQL, ClickHouse, Redis
- **API:** REST, GraphQL, gRPC, WebSocket
- **Инфраструктура:** Docker, Kubernetes, Google Cloud, GitLab CI, Grafana, Prometheus
- **Очереди:** BullMQ, Google Pub/Sub
условия
💰 350 000 – 450 000 ₽ (обсуждается по опыту)
📍 Удалённая работа
�� Гибкий график, синхронизация с командой по необходимости
С тобой будет на связи руководитель разработки — столько, сколько нужно для онбординга и по ходу работы. Но мы ищем человека, который быстро вливается в боевые задачи и не требует постоянного сопровождения.
Как проходит отбор
1. **Скрининг** (15-20 мин) — знакомство, пара технических вопросов
2. **Техническое интервью** (1.5-2 часа) — обсуждение опыта, system design задача
3. **Оффер**
Тестового задания нет.