Расскажите, какие премии и бонусы платит вам работодатель. Пройти опрос (займет 5-6 минут)

Разработчик С++ в команду Mobile SDK

Местоположение и тип занятости
Россия, Новосибирск · Полный рабочий день · Можно удаленно
Компания
Все организации города, их контакты, адреса, время работы + трехмерная карта + маршруты проезда

Описание вакансии

О проекте:

Мобильным приложением 2ГИС ежемесячно пользуется более 20 миллионов человек. Ищут адреса и фирмы, изучают карту, ездят по навигатору. Всё это должно работать быстро, надёжно и offline на ограниченных ресурсах мобильного телефона. Для этого основная бизнес-логика продукта реализована в виде кроссплатформенного SDK на C++, который делает наша команда. Сейчас это внутренний продукт, используемый в рамках 2ГИС, но перед нами стоит амбициозная задача сделать классное публичное API для сторонних разработчиков, что задирает планку качества ещё выше.

В рамках SDK нужно дорабатывать существующие и создавать новые компоненты.

Вот далеко не полный перечень того, чем предстоит заниматься:

  • работа с картой: инструменты управления и визуализация различных данных;
  • навигатор: построение и обновление маршрута, притяжка геопозиции к линии маршрута, озвучивание голосовых инструкций;
  • компактное хранение на устройстве и инкрементальные фоновые обновления справочных данных;
  • реклама: обновление дельтами раз в 15 минут, компактное хранение, быстрое подмешивание рекламных материалов в выдачу;
  • собственная система аналитики для сбора бизнес- и продуктовых метрик внутри продукта;
  • профилирование и оптимизация — боремся за миллисекунды на «горячих» участках кода.

Технически проект представляет собой несколько сотен тысяч строк кода на C++17. Используем CMake, свежие версии компиляторов (clang-10, gcc-10, Visual Studio 2019 - кому что удобней), clang-tidy. Обязательное ревью и сборки на CI перед вливанием организованы средствами Bitbucket Server и Jenkins. Иногда пишем вспомогательные скрипты на Python.

Мы ждем от тебя:

  • отличное знание C++14/17 и опыт коммерческой разработки на нём от 2 лет;
  • сильная алгоритмическая подготовка (знание основных алгоритмов и структур данных, умение оценивать сложность алгоритмов);
  • умение самостоятельно разработать сложное программное решение — от проработки и обсуждения требований до проектирования архитектуры и написания качественного кода;
  • умение работать в команде, работать с чужим кодом;
  • умение писать эффективный и понятный код.

Будет плюсом:

  • опыт мобильной/кроссплатформенной разработки на С++;
  • опыт разработки многопоточных приложений;
  • навыки измерения производительности и профилирования графических программ;
  • опыт работы с Jenkins, знание Python, CMake.

Немного об R&D 2ГИС:
В Новосибирске у нас два больших офиса: в Технопарке и в Сан Сити. Ты будешь работать в Технопарке. У нас нет дресс-кода и строгого графика. Кто-то приходит в 9, кто-то в 10, а кто-то, когда удобно ему и команде. Главное — выполнять задачи в срок и быть на связи с коллегами.
Мы используем современные технологии и любим о них говорить. Пишем статьи, выступаем на конференциях и сами их организуем.
Заработную плату готовы обсуждать индивидуально.

Ваш отклик

No content.icon.access denied
Авторизуйтесь
Откликаться на вакансии могут только зарегистрированные пользователи.