AdMetrix — аналитическая платформа для рынка наружной рекламы. Она собирает данные о рекламных конструкциях от десятков поставщиков, рассчитывает охват и частоту и предоставляет аналитику через веб-интерфейсы с OLAP-отчётами и через API.
Существующая платформа переходит на Python, и мы формируем новую команду разработки, которая продолжит развитие платформы и всего комплекса систем. Ищем технического лидера, который возглавит команду из 2–3 backend- и 1–2 frontend-разработчиков, будет определять архитектуру и выстроит процессы разработки и доставки.
Чем предстоит заниматься
- Технически руководить командой: декомпозиция и оценка задач, code review, стандарты разработки, наставничество, участие в найме.
- Проектировать архитектуру backend-сервисов на Python и принимать ключевые технические решения.
- Разрабатывать сервисы платформы: API, аналитические и OLAP-модули, загрузку и обработку данных от поставщиков.
- Проектировать и оптимизировать Базы данных, отвечать за производительность аналитических запросов на больших объёмах данных.
- Выстроить CI/CD: сборка, тесты, деплой, контейнеризация сервисов.
- Координировать работу backend и frontend: проектировать API и контракты, при необходимости дорабатывать фронтенд.
- Взаимодействовать с продуктом и бизнесом, а также со смежными командами.
Что мы ожидаем:
Python
- Коммерческая разработка на Python от 5 лет.
- Построение REST API, работа с ETL и обработкой данных из внешних источников.
- Опыт работы со OpenAPI/Swagger.
- Тестирование (pytest), типизация, поддерживаемая кодовая база.
- Понимание принципов проектирования: SOLID, чистая архитектура, паттерны.
Реляционные базы данных
Глубокое знание MariaDB/MySQ, планы выполнения, индексы, оптимизация тяжёлых запросов.
- Проектирование и нормализация схем, представления, миграции.
- Транзакции, блокировки, конкурентный доступ.
- Репликация, резервное копирование, масштабирование.
CI/CD и GitLab
- Построение CI/CD в GitLab: stages, rules, include, шаблоны, кеширование, артефакты.
- Администрирование GitLab Runners, работа с self-hosted GitLab.
- Окружения и деплой (staging, production), переменные и секреты, защищённые ветки, процесс работы с merge request.
- Docker, контейнеризация сервисов.
- Уверенный Linux.
Техническое лидерство
- Опыт работы техлидом или ведущим разработчиком от 2 лет, руководство командой от 3 человек.
- Опыт принятия и обоснования архитектурных решений.
- Менторство, code review, онбординг, участие в техническом найме.
- Умение переводить требования бизнеса в технические задачи и планировать работу команды.
Frontend
- Опыт с одним из современных фреймворков. Умение ставить задачи frontend-разработчикам и проверять их результат.
Будет плюсом
- Знание JavaScript и Vue 3 (Composition API, Pinia).
- Опыт с Node.js (текущая кодовая база платформы).
- Опыт с PostgreSQL.
- Картографические сервисы и геоданные (2GIS), визуализация данных.
- Опыт с OLAP и аналитическими хранилищами.
- Опыт в рекламной индустрии или медиаизмерениях.
- Мониторинг и логирование: Prometheus, Grafana, ELK.