Работа
Разработка ПО

С++ разработчик в Mobile SDK

Алгоритмы
STL
Boost
CMake
C++

О проекте

Мобильным приложением 2ГИС ежемесячно пользуется более 20 миллионов человек. Ищут адреса и фирмы, изучают карту, ездят по навигатору. Всё это должно работать быстро, надёжно и офлайн на ограниченных ресурсах мобильного телефона.
Для этого основная бизнес-логика продукта реализована в виде кроссплатформенного Mobile SDK на C++, который делает наша команда. Этот продукт используется как самим 2ГИС, так и доступен для сторонних разработчиков. В июле 2021 вышел наш первый публичный релиз. Mobile SDK является частью семейства продуктов 2GIS.KIT для разработчиков.
В рамках SDK нужно дорабатывать существующие и создавать новые компоненты. Примеры того, чем предстоит заниматься:
  • Работа с картой — инструменты управления и визуализация различных данных.
  • Навигатор — построение и обновление маршрута, притяжка геопозиции к линии маршрута, поездка без маршрута, озвучивание голосовых инструкций.
  • Компактное хранение на устройстве и инкрементальные фоновые обновления справочных данных.
  • Собственная система аналитики для сбора бизнес- и продуктовых метрик внутри продукта.
  • Профилирование и оптимизация — боремся за миллисекунды на «горячих» участках кода.
Технически проект представляет собой несколько сотен тысяч строк кода на 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ГИС

У нас комфортные офисы в городе Новосибирске, Питере и удобный график работы. Спокойно относимся к удалёнке. Даже после карантина. Если захочешь работать из офиса — поможем с релокацией в Новосибирск или Питер. На выбор предоставляем несколько вариантов техники и ОС, наиболее комфортных для работы. Для удалёнки — доставим и поможем настроить. 

Рассказываем о наших продуктах в дайджесте Доставили, делимся опытом на конференциях и пишем на Хабр. Некоторые конференции — например, DevDay — проводим сами.

Любим тех, кто умеет работать в команде, открыто общается и вместе с командой находит лучшие решения.
Приходите, у нас хорошо
Как у других, только лучше
Вниманиек процессам
Внимание
к процессам
Мы постоянно улучшаем процессы, учитывая пожелания разработчиков — например, устраиваем демо-дни, чтобы все команды знали, кто из них над чем работает.
Дваклассных офиса
Два
классных офиса
У нас два красивых и уютных офиса — в «Сан Сити» и Технопарке в Академгородке. Кухни с кофемашинами на каждом этаже, инстаграмные виды из окон, теннисные столы и настольные игры — мы умеем не только работать, но и отдыхать.
Крутойи полезный продукт
Крутой
и полезный продукт
Миллионы людей пользуются и любят 2ГИС, а мы постоянно развиваем продукт, чтобы радовать пользователей ещё больше.
Удалённаяработа
Удалённая
работа
Мы готовы обсуждать формат удалённой работы для большей части сотрудников. Работайте там, где вам удобно, — в офисе, дома, в другом городе или даже стране. Мы умеем налаживать и успешно поддерживаем процессы в распределённых командах.
Хочу работать в 2ГИС
Ольга Сидорова
Привет!
Я — Ольга Сидорова. Помогаю соискателям — изучаю резюме и провожу собеседования. Чтобы откликнуться на вакансию, расскажите о себе в форме ниже. Будут вопросы — смело пишите мне на почту.
Обязательно для заполнения
Обязательно для заполнения
Обязательно для заполнения
Отправилось!
Умпешная отправка формы
Мы рассмотрим ваше резюме в течение двух недель и сразу же сообщим результат. А пока почитайте что-то интересное.
Как долго рассматривается резюме?

Не дольше двух недель. Если вы не получили ответ, напишите или позвоните в отдел по работе с персоналом — возможно, ваше письмо не дошло.

Когда я могу ждать ответа после собеседования?

Через два-три рабочих дня. Если через три дня ответа нет, напишите или позвоните эйчару — тут уместно проявить инициативу.

Мы даём ответы по всем кандидатурам и любым решениям.

Могу ли я не отправлять резюме, а сразу прийти на личную встречу?

Нет, у всех наших специалистов в работе обычно сразу по несколько вакансий — у них плотный график интервью. Даже если вы придёте лично, вас все равно попросят прислать резюме на электронную почту.

Могу ли я подать резюме сразу на несколько позиций?

Да, но мы рекомендуем определиться с тем, какая работа интересна вам в первую очередь, и проходить собеседования последовательно.

Сколько собеседований мне нужно будет пройти?

В среднем — от двух до четырёх. Первая встреча — всегда со специалистом по работе с персоналом. Далее — ещё одно-два интервью с руководителем. Возможны промежуточные встречи с экспертами. Число собеседований зависит от конкретной вакансии.

Что делать, если я отправил резюме, но не получил ответ?

Позвонить в офис 2ГИС и попросить соединить с отделом персонала. Вам помогут разобраться в ситуации.

Где находятся офисы 2ГИС? В каком из них я смогу работать?

В Новосибирске — на левом берегу на площади Маркса в «Сан Сити» и в Академгородке — в одной из башен Технопарка. Работать предстоит там, где работает ваша команда, в описании вакансии обычно указано место работы.

Какие условия труда, есть ли социальный пакет?

2ГИС даёт полный соцпакет, ДМС с момента прохождения испытательного срока, работу в комфортном современном офисе с комнатами отдыха и кухнями на каждом этаже.

Возможен ли переезд в офисы других городов и стран 2ГИС?

Да, возможен, но нужно будет пройти внутренний конкурс на вакансию.

Какой карьерный рост возможен в 2ГИС?

Как горизонтальный — переход в другие отделы / департаменты, расширение зоны ответственности, так и вертикальный — можно вырасти в руководителя. Для этого в 2ГИС есть стажировки внутри компании, Корпоративный университет и ежегодная оценка персонала.

Похожие вакансии

Java/Kotlin-разработчик в команду World
PostgreSQL
k8s
Git
C#
Kotlin
Java8
SCALA
ООП
CI/CD
Разрабатываем сервисы, которые непрерывно собирают, обрабатывают и доставляют картографические и справочные данные до внутренних систем
Middle C++ разработчик в команду Navi
Алгоритмы
STL
C++
CI
Строим маршруты во всех продуктах 2ГИС — проезд на авто и общественном транспорте, пешеходные маршруты, пробки, такси и отображение автобусов на карте
Senior C++ разработчик в команду Navi
Алгоритмы
STL
C++
CI
Удалённая работа
Строим маршруты во всех продуктах 2ГИС — проезд на авто и общественном транспорте, пешеходные маршруты, пробки, такси и отображение автобусов на карте
Middle C++ разработчик в команду 3D-карты
3D-карта
Алгоритмы
C++
OpenGL
STL
CMake
Развиваем картографический движок: рендерим 3D-объекты, генерируем геометрию, собираем тайлы с данными
Senior C++ разработчик в команду 3D-карты
3D-карта
Алгоритмы
C++
OpenGL
STL
CMake
Удалённая работа
Развиваем картографический движок: рендерим 3D-объекты, генерируем геометрию, собираем тайлы с данными
iOS-разработчик
Objective-C
Swift
Apple Human Interface Guidelines
Делаем мобильную версию 2ГИС для iOS
Middle/Senior Go-разработчик в UGC
PostgreSQL
Docker
k8s
Go
Удалённая работа
Разрабатываем сервисы, которые позволяют пользователям добавлять контент в продукт и помогают справочнику быть точнее, а другим пользователям — лучше ориентироваться в городе
Middle/Senior Frontend-разработчик в Веб-карту
3D-карта
Алгоритмы
JavaScript
Удалённая работа
Делаем API карт, которым пользуются разработчики по всему миру
Middle/Senior C# разработчик в Fiji
C#
.Net Framework
Разрабатываем ПО для наших картографов
Системный администратор / DevOps
PostgreSQL
Docker
Python
SQL
Go
ELK
Linux
Поддерживаем и улучшаем инфраструктуру и операционную деятельность «Школы 21»
Middle/Senior Go-разработчик в Товары
PostgreSQL
Docker
k8s
Go
Удалённая работа
Собираем и показываем пользователям товары и услуги в 2ГИС
Middle/Senior Python-разработчик в команду Добычи данных
PostgreSQL
Docker
k8s
Python
Удалённая работа
Собираем данные компаний и добавляем в 2ГИС
Golang Техлид в команду Товары
PostgreSQL
Docker
k8s
Управление командой
Работа в команде
Go
Удалённая работа
Разрабатываем сервисы для импорта данных о товарах и услугах, проектируем структуру их хранения
Middle+ Go-разработчик в Infrastructure & Operations
CI/CD
PostgreSQL
k8s
Python
Go
Внедряем новые технологии для разработки — поддерживаем сервисы с нагрузкой в 10 000+ RPS
Tимлид в команду Добычи данных
Python
Управление командой
Собираем данные компаний и добавляем в 2ГИС

Разработчик в тестировании в команду 3D-карты
Автотесты
Python
CI
Развиваем картографический движок: рендерим 3D-объекты, генерируем геометрию, собираем тайлы с данными
Senior Android-разработчик в Дело
Java
Kotlin
Android
Создаём приложение, которое поможет предпринимателям поддерживать бизнес в онлайне
Разработчик C++/Qt под Android
Разрабатываем приложение 2ГИС под Android
Middle iOS-разработчик
Swift
Apple Human Interface Guidelines
Разрабатываем SDK для оплаты услуг на АЗС через 2ГИС на iOS
Senior Android-разработчик
Java
Kotlin
Android
Разрабатываем SDK для оплаты услуг на АЗС через 2ГИС на Android
Middle Python-разработчик в команду Navi
Docker
k8s
Python
Git
SQL
Go
Создаем все транспортные сценарии в 2ГИС
Middle/senior frontend-разработчик в Online
JavaScript
React
Redux
Разрабатываем новую десктопную (2gis.ru) и мобильную (m.2gis.ru) онлайн-версию
Frontend-разработчик в Личный Кабинет
HTML
JavaScript
React
Redux
Удалённая работа
Разрабатываем веб-приложение для владельцев компаний
Middle/Senior C# разработчик в Export
Agile
C#
.Net Framework
SQL
Формируем пакеты данных для 2gis.ru и мобильных приложений 2ГИС
iOS-разработчик в навигатор
Objective-C
Swift
Apple Human Interface Guidelines
Строим все маршруты в 2ГИС для iOS
iOS-разработчик в мобильный 2ГИС
Objective-C
Swift
Apple Human Interface Guidelines
Создаём новую версию 2ГИС
Инженер эксплуатации
Docker
k8s
ELK
Помогаем пользователям 2ГИС находить актуальную и полную информацию о товарах и услугах в городе
Тимлид в BIT
C#
.Net Framework
Управление командой
Удалённая работа
Разрабатываем инструменты аналитики
Android-разработчик в команду 2GIS Mobile SDK
Java
Android
Делаем инструмент для интеграции 2ГИС с любыми приложениями
Middle/senior frontend-разработчик
React
Redux
Удалённая работа
​​Разрабатываем сервисы и инструменты для удобного использования API
Python-разработчик в команду Data Science
Docker
k8s
Python
Машинное обучение
Решаем продуктовые задачи с помощью машинного обучения
C++ Техлид в сервис Поиска
Алгоритмы
Python
SQL
C++
Удалённая работа
Создаём алгоритмы поиска для всех продуктов 2ГИС