Rendering engineer C++ в 3D Карту
Карты 2ГИС взяли курс на иммерсивность: мы хотим создать не просто красивую, но и как никогда реалистичную карту. Если ты «горишь» графикой и хочешь поучаствовать в создании новой карты, мы ждём именно тебя!
О проекте
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 подходы в графике и оцениваем их применимость в нашем продукте.
- Не забываем и про нефункциональные требования – работаем над производительностью движка и его графической подсистемы.
Ты будешь заниматься
- Подготовкой и отрисовкой новых картографических данных.
- Написанием различных графических эффектов.
- Улучшением взаимодействия с современными графическими API (Vulkan, Metal, OpenGL).
- Производительностью графической подсистемы и 3D-движка в целом.
- Сжатием данных (в том числе созданием и оптимизациями собственных форматов хранения данных).
- Генерализацией и симплификацией данных.
- Разработкой алгоритмов и структур данных, производительных на различных мобильных устройствах.
- Улучшением и поддержкой собственного языка описания стилей карт.
Мы ждём, что ты
- Имеешь опыт работы с графическим API (Metal, OpenGL, DirectX, Vulkan).
- Имеешь опыт написания шейдерных программ.
- Знаешь основные алгоритмы и структуры данных, в том числе имеешь опыт работы с алгоритмами компьютерной графики.
- Подключишься к разработке сложных программных решений — от проработки и обсуждения требований до проектирования архитектуры и написания качественного кода.
- Умеешь работать в команде — открыто общаться и обсуждать свои задачи, вместе с командой находить лучшие решения.
Будет плюсом
Опыт мобильной или кроссплатформенной разработки на С++, разработки многопоточных приложений и навыки измерения производительности и профилирования графических программ.
Кроме того
- 2ГИС — аккредитованная IT-компания. Если хочешь работать в гибридном формате, у нас есть офисы в Москве, Санкт-Петербурге, два классных офиса в Новосибирске. А также коворкинги в Томске, Астане и Алма-Ате. Также у нас можно работать 100% удалённо, в том числе за границей.
- График не главное. Кто-то начинает работу в 9, кто-то в 11, а кто-то — когда удобно ему и команде. Главное — выполнять задачи в срок и быть на связи с коллегами.
- Само собой, полностью белая зарплата, размер обсуждается на собеседовании, потолка нет.
- Есть ДМС, штатный терапевт, невролог, мед.консультант и другие IT-плюшки.
- Если хочешь делиться своим опытом, мы только за — поможем с выступлениями на конференциях и статьями для Хабра.
офис
и полезный продукт
в достижении целей
работа
Я — Кристина Блинкова. Помогаю соискателям — изучаю резюме и провожу собеседования. Чтобы откликнуться на вакансию, расскажите о себе в форме ниже. Будут вопросы — смело пишите мне на почту.
Не дольше двух недель. Если вы не получили ответ, напишите или позвоните в отдел по работе с персоналом — возможно, ваше письмо не дошло.
Через два-три рабочих дня. Если через три дня ответа нет, напишите или позвоните эйчару — тут уместно проявить инициативу.
Мы даём ответы по всем кандидатурам и любым решениям.
Нет, у всех наших специалистов в работе обычно сразу по несколько вакансий — у них плотный график интервью. Даже если вы придёте лично, вас все равно попросят прислать резюме на электронную почту.
Да, но мы рекомендуем определиться с тем, какая работа интересна вам в первую очередь, и проходить собеседования последовательно.
В среднем — от двух до четырёх. Первая встреча — всегда со специалистом по работе с персоналом. Далее — ещё одно-два интервью с руководителем. Возможны промежуточные встречи с экспертами. Число собеседований зависит от конкретной вакансии.
Позвонить в офис 2ГИС и попросить соединить с отделом персонала. Вам помогут разобраться в ситуации.
В Новосибирске — на левом берегу на площади Маркса в «Сан Сити» и в Академгородке — в одной из башен Технопарка. Работать предстоит там, где работает ваша команда, в описании вакансии обычно указано место работы.
2ГИС даёт полный соцпакет, ДМС с момента прохождения испытательного срока, работу в комфортном современном офисе с комнатами отдыха и кухнями на каждом этаже.
Да, возможен, но нужно будет пройти внутренний конкурс на вакансию.
Как горизонтальный — переход в другие отделы / департаменты, расширение зоны ответственности, так и вертикальный — можно вырасти в руководителя. Для этого в 2ГИС есть стажировки внутри компании, Корпоративный университет и ежегодная оценка персонала.