Младший инженер-программист C++

Дата размещения вакансии: 17.11.2024
Работодатель: CAD Exchanger
Уровень зарплаты:
з/п не указана
Город:
Нижний Новгород
Требуемый опыт работы:
От 1 года до 3 лет

CAD Exchanger – IT-компания, предлагающая решения в области визуализации и конвертации 3D данных. У нас есть собственные программные продукты (для десктопа, облака и мобильных устройств), которые используются во всем мире (150,000+ пользователей в 110+ странах), включая лидеров индустрии: Apple, Tesla, Amazon, NASA, Fujitsu, General Electric, и многие другие (cadexchanger.com/customers). Компания основана в 2014г, а сам продукт существует с 2009.

В настоящий момент мы активно развиваем наш программный продукт для работы со сложными 3D данными. В продукте используются сложные геометрические алгоритмы для работы с 3D телами, поэтому мы проводим набор программистов, обладающих уверенными знаниями в области вычислительной геометрии и мат.анализа. Будет плюсом, если вы знакомы с дифференциальным исчислением, методами интерполяции, решением СЛАУ и другими численными методами. Вы найдете отличные применения своим знаниям в нашей предметной области CAD/САПР (Computer Aided Design, или Системы Автоматизированного Производства).

В качестве первых поручений сотрудники получают задачи, связанные с дебаггингом (поиском ошибок и отладкой) запросов, приходящих от пользователей. Эта практика позволяет быстрее и лучше понять, как наши продукты используются в клиентских приложениях; архитектуру и связи между различными компонентами; технические аспекты (например, особенности 3D форматов или алгоритмов) и т.д. прежде чем приступать к задачам по улучшению существующего или созданию нового функционала. В качестве следующих этапов карьерного роста сотрудники могут переходить в группы разработки продуктов или созданию вспомогательных компонентов. Ядро продукта написано на языке C++ и является кросс-платформенным (Windows, Linux, Mac), поэтому соответствующий опыт будет Вашим преимуществом.

Круг возможных задач на данной позиции может быть очень широк, что позволяет расширить кругозор и использовать различные технологии (Qt, Unity, WPF и др.), языки программирования (C++, C#, Java, Python, Javascript) и инструменты (git, Doxygen, CMake и др.).

Задачи:

  • Разработка и поддержка сложных математических компонентов и алгоритмов
  • Развитие существующих 3D форматов и добавления нового функционала (полигональные сетки и точная геометрия B-Rep, PMI/Product and ManufacturingInformation, продуктовая структура и мета-данные, добавление новых версий форматов)
  • Адаптация и улучшение алгоритмов и структур данных, в частности ускорения производительности, уменьшения памяти (memory footprint)
  • Участие в написании и обновление публичных материалов, связанных с продуктом: документация, примеры, прочее

Вы будете работать под руководством более опытных сотрудников, однако ваш начальный уровень должен быть вполне зрелым для самостоятельного изучения материалов. Мы не предполагаем системного обучения по языку C++ (хотя будет дан обзорный видео-курс, основанный на нашем опыте), но обязательно проведем вводный тренинг по предметной области и особенностям наших проектов.

Мы ожидаем, что после небольшого интеграционного периода Вы сможете быстро погрузиться в рабочую среду и самостоятельно (в режиме периодических консультаций) выполнять задачи.

Требования:

  • Вы должны иметь высшее образование. Мы готовы рассматривать также студентов последних курсов при условии готовности работать на полную ставку
  • Опыт разработки на C++. Понимание основ ООП. Знание классических алгоритмов и структур данных. Хорошее владение STL
  • Уверенные знания математики за I-II курс (линейная алгебра, дискретная математика, мат. анализ)
  • Windows или Linux (дополнительно Mac)
  • Visual C++ / gcc / clang
  • английский уровня Intermediate или выше

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

  • Опыт работы в области инженерного ПО (САПР) и/или уверенные знания в области математических дисциплин (мат. анализ, вычислительная геометрия и т.п.)
  • Приветствуется опыт работы с технологиями параллельного программирования(OpenMP, Intel TBB); кросс-платформенной разработки (Linux и Windows, cmake, и др.)
  • Опыт работы с git, gitlab, Jenkins, Bug tracker (YouTrack, Jira, Redmine)
  • Будет преимуществом опыт разработки на любом объектно-ориентированном языке программирования (Java, C# и др.), практический опыт в других IT компаниях

Ваши возможности:

  • Работа над интересными сложными задачами в области 3D моделирования
  • Работа в команде с профессиональными коллегами
  • Отсутствие микро-менеджмента в обмен на самостоятельное достижение результата
  • Карьерный рост (в технического лидера, старшего разработчика, менеджера группы) при условии опережающего развития, качественной работы и готовности брать на себя ответственность

Условия трудоустройства:

  • Оформление в соответствии с Трудовым Кодексом

  • Возможна работа в удаленном режиме

  • Конкурентное вознаграждение. Регулярный пересмотр в зависимости от достижений

  • Расширенный социальный пакет: ДМС, система премирования (за производственные показатели, рекомендательный бонус), компенсация больничных листов до оклада, спортивных занятий и профессионального развития, корпоративные мероприятия и др.

О компании:

  • Мы создаем сложные программные продукты и технологии
  • Мы практикуем открытые и профессиональные отношения, и принципы меритократии ("власть достойных"), когда продвижение по карьерной лестнице определяется результатами. Между сотрудниками, менеджерами и руководством компании всегда открытый и прямолинейный диалог
  • Компания с хорошо организованными инженерными процессами и эффективными инструментами (code review, SCRUM; gitlab, YouTrack, Jenkins)
  • Более подробную информацию можно найти в описании компании

Процесс найма происходит в несколько этапов, включая выполнение тестового задания и последовательность собеседований.

Если Вас привлекают сложные задачи, которые часто требуют творческого подхода и сверхусилий, если Вы хотите гордиться своими достижениями и рассказывать о них своим друзьям и близким, то у нас Вы окажетесь среди единомышленников.