Работа
Новосибирск

Senior С++ разработчик в 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 и опыт коммерческой разработки на нём
    от 4-х лет.
  • Сильная алгоритмическая подготовка (знание основных алгоритмов и структур данных, умение оценивать сложность алгоритмов).
  • Умение самостоятельно разработать сложное программное решение — от проработки и обсуждения требований до проектирования архитектуры и написания качественного кода.
  • Умение работать в команде, работать с чужим кодом.
  • Умение писать эффективный и понятный код.

Будет плюсом

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

Кроме того

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Руководитель инфраструктуры веб-сервисов
CI/CD
Ansible
CI
Linux
Администрирование серверов
Администрируем инфраструктуру веб-сервисов 2ГИС
C# разработчик в команду SMT
C#
SQL
Удалённая работа
Создаем инструменты для быстрого анализа.
Middle/Senior C++ разработчик в Core
Алгоритмы
STL
Boost
CMake
C++
Удалённая работа
Создаем фундамент мобильного приложения 2ГИС
Middle+/Senior DevOps Engineer on Premises (ОАЭ)
CI/CD
k8s
Gitlab
Ansible
Jenkins
Python
Linux
Удалённая работа
Помогаем интегрировать решения 2ГИС внешним клиентам
Middle/Senior С++ backend-разработчик в Транспорт
Python
STL
Go
C++
Удалённая работа
Строим маршруты во всех продуктах 2ГИС — проезд на авто и общественном транспорте, пешеходные маршруты, пробки, такси и отображение автобусов на карте
iOS разработчик
Objective-C
Swift
Удалённая работа
Делаем мобильную версию 2ГИС для iOS
DBA в команду Infrastructure & Operations
PostgreSQL
DBA
Удалённая работа
Создаём инфраструктурные решения и внедряем новые технологии для команд разработки
Middle C# разработчик в Fiji
C#
.Net Framework
MS Visual Studio
Удалённая работа
Делаем приложение для создания и редактирования карт в 2ГИС.
Data Scientist в команду NLP
Python
Data Science
Удалённая работа
Решаем задачи для заказчиков внутри нашей компании.
Senior iOS-разработчик в сервис Транспорта
Swift
Удалённая работа
Реализуем построение маршрутов во всех продуктах 2ГИС
Middle Golang-разработчик в cервис транспорта
PostgreSQL
k8s
Python
Go
Удалённая работа
Строим маршруты во всех продуктах 2ГИС
Middle/Senior C++ разработчик в Transport Core
Алгоритмы
Git
STL
Boost
C++
CI
Удалённая работа
Создаем фундамент транспортного направления для мобильного приложения 2ГИС
Scala-разработчик в Social
Горячая вакансия
SCALA
Удалённая работа
Создаем новое направление Social в R&D 2ГИС
Golang-разработчик в Social
PostgreSQL
Go
Удалённая работа
Помогаем друзьям быть ближе
Middle Golang Engineer в команду Отелло
PostgreSQL
Go
Удалённая работа
Помогаем пользователям находить и бронировать отели для проживания
C++/Qt/QML разработчик в команду Android
QML
C++
Android
Удалённая работа
Разрабатываем приложение 2ГИС под Android
Scala-разработчик в Casino
SCALA
Удалённая работа
Создаем инструменты хранения, обработки и анализа данных.
Middle/Senior C# разработчик YouRa
TypeScript
C#
React
Удалённая работа
Разрабатываем внутренние сервисы 2ГИС и отвечаем за сбор и актуальность справочной информации
Middle Golang Engineer в команду UGC
PostgreSQL
k8s
Go
Удалённая работа
User generated content — важная социальная составляющая 2ГИС. Мы даём возможность поучаствовать в наполнении нашего продукта фотографиями и отзывами, а также присоединиться к созданию карты и справочника.
Golang-разработчик в 2GIS.KIT
PostgreSQL
Go
Удалённая работа
Создаем продукты на базе нашего API и SDK для наших b2b партнеров
Middle Python/Golang-разработчик в cервис транспорта
k8s
Python
Go
Удалённая работа
Реализуем построение маршрутов во всех продуктах 2ГИС
Senior C++ разработчик в Social Core
Алгоритмы
STL
Boost
CMake
C++
Удалённая работа
Создаем фундамент социальных механик для мобильного приложения 2ГИС
Middle C++ разработчик в команду алгоритмов Транспорта
Алгоритмы
STL
C++
Удалённая работа
Разрабатываем библиотеки и компоненты для построения маршрутов, коммерческого API и пользователей приложения 2ГИС
C++/Qt/QML разработчик под Android в команду Social
QML
C++
Android
Удалённая работа
Реализуем новое направление Social в R&D 2ГИС
C++/Qt/QML разработчик под Android в команду Транспорта
QML
C++
Android
Удалённая работа
Развиваем транспортные UI/UX сценарии на платформе Android
Senior Frontend-разработчик в команду Отелло
TypeScript
JavaScript
React
Удалённая работа
Помогаем пользователям находить и бронировать отели для проживания
Middle/Senior Data Scientist в команду ETA/RTA
k8s
Python
SQL
Data Science
Удалённая работа
Определяем, где на дорогах находятся пробки, прогнозируем время в пути для автомобилей и общественного транспорта.
Senior C# разработчик в команду ERM
C#
.Net Framework
SQL
Удалённая работа
Развиваем коммерческое ПО
iOS-разработчик в команду Social
Swift
Удалённая работа
Первая фича, которую мы сделали — отображение друзей на карте в реальном времени, и это только начало!
Senior C++ разработчик в команду алгоритмов Транспорта
Алгоритмы
STL
C++
Удалённая работа
Разрабатываем библиотеки и компоненты для построения маршрутов, коммерческого API и пользователей приложения 2ГИС
Junior C# разработчик в ERM
CI/CD
C#
.Net Framework
SQL

Развиваем коммерческое ПО

Middle/Senior C# разработчик в СityLens
Docker
k8s
C#
.Net Framework
Удалённая работа

Мы делаем продукт для оцифровки городской среды и последующего анализа данных

Frontend-разработчик в СityLens
TypeScript
JavaScript
React
Удалённая работа
Мы делаем продукт для оцифровки городской среды и последующего анализа данных
Frontend-разработчик в 2GIS Platform Manager
TypeScript
JavaScript
React
Создаём гео-информационную платформу для крупного бизнеса и государств
Python-разработчик в команду Поиска
k8s
Python
Удалённая работа
Создаем алгоритм поиска для всех продуктов 2ГИС

Senior C++/Qt/QML разработчик в команду Android
QML
C++
Android
Удалённая работа
Разрабатываем приложение 2ГИС под Android