C++ Team lead в 3D Карту
Требования
Местоположение и тип занятости
Компания
Все организации города, их контакты, адреса, время работы + трехмерная карта + маршруты проезда
Описание вакансии
О компании и команде
Карты 2ГИС взяли курс на иммерсивность: мы хотим создать не просто красивую, но и как никогда детальную карту. Если ты «горишь» графикой, имеешь опыт управления небольшой командой (3-5 человек) и хочешь поучаствовать в создании новой карты, мы ждём именно тебя!
О проекте
- 3D-движок — большой и сложный проект, который содержит более полумиллиона строк высокопроизводительного кода на C++20, а также активно взаимодействует с современными GAPI: Vulkan/Metal/OpenGL.
- Собираем этот код с помощью CMake, свежими версиями компиляторов (Clang, GCC, MSVC) в различных IDE – кому что удобней.
- Поставляем наш продукт как кроссплатформенную библиотеку с документированным API, также предоставляем набор утилит для обработки и подготовки картографических данных.
- Также не забываем про качество нашего продукта. Пишем и поддерживаем различные тесты: от простых модульных до сложных e2e скриншотных тестов, запускаемых на ферме с реальными мобильными устройствами.
- Основные задачи команды связаны с обработкой и отрисовкой большого количества 3D-объектов — генерацией геометрии, написанием шейдеров и эффектов, работой с бинарными данными карты (векторными тайлами) в собственном формате.
Основной стек
- C++20, Python 3, CMake — для разработки и тестов.
- Jira, Bitbucket Stash и Jenkins – для задач, ревью и сборки на CI.
Задачи
- Сейчас мы активно разрабатываем графические продуктовые фичи в карте: различные анимации объектов, рельеф, реалистичные дороги, развязки и тоннели.
- В том числе активно экспериментируем с внедрением различных визуальных эффектов. Изучаем на state-of-art подходы в графике и оцениваем их применимость в нашем продукте.
- Не забываем и про нефункциональные требования – работаем над производительностью движка и его графической подсистемы.
Ты будешь заниматься
- Разработкой программных решений на С++20 с использованием современных графических API (Vulkan, Metal, OpenGL).
- Управлением небольшой командой разработчиков (3-5 человек): постановкой и контролем задач, 1х1, развитием инженеров и процессов.
Ожидания от кандидата
Мы ждем, что ты
- Имеешь опыт работы с современным С++ от 3-х лет и подключишься к разработке сложных программных решений — от проработки и обсуждения требований до проектирования архитектуры и написания качественного кода.
- Имеешь опыт управления командой от 1 года, умеешь работать в команде — открыто общаться и обсуждать задачи, вместе с командой находить лучшие решения.
- Хорошо умеешь распределять свое рабочее время, умеешь держать фокус на технических задачах, при этом не забываешь уделять внимание своей команде.
Будет плюсом
- Опыт мобильной или кроссплатформенной разработки на С++, разработки многопоточных приложений.
- Опыт с графическими API (Vulkan, Metal, OpenGL, DirectX), а также навыки измерения производительности и профилирования графических программ.
Условия работы
- 2ГИС — аккредитованная IT-компания. Если хочешь работать в гибридном формате, у нас есть офисы в Москве, Санкт-Петербурге, два классных офиса в Новосибирске. А также коворкинги в Томске, Астане и Алма-Ате. Также у нас можно работать 100% удалённо, в том числе за границей.
- График не главное. Кто-то начинает работу в 9, кто-то в 11, а кто-то — когда удобно ему и команде. Главное — выполнять задачи в срок и быть на связи с коллегами.
- Само собой, полностью белая зарплата, размер обсуждается на собеседовании, потолка нет.
- Есть ДМС, штатный терапевт, невролог, мед.консультант и другие IT-плюшки.
- Если хочешь делиться своим опытом, мы только за — поможем с выступлениями на конференциях и статьями для Хабра.