Principal C++ developer (Technical Lead) / Ведущий инженер-программист (TATLIN.UNIFIED)

Дата размещения вакансии: 09.05.2024
Работодатель: YADRO
Уровень зарплаты:
з/п не указана
Город:
Нижний Новгород
Требуемый опыт работы:
Более 6 лет

R&D центры расположены в Москве, Санкт-Петербурге, Нижнем Новгороде и Минске, есть собственное производство в Московской области и инновационное производство полного цикла в городе Дубна.

На текущий момент нас уже более 4500 человек, и мы продолжаем активно расти и расширять команду, в связи с этим открываем поиск Principal Software engineer в Департамент обработки данных — часть большой команды разработки нашего флагманского продукта — TATLIN.UNIFIED.

Продукт представляет собой современное хранилище, созданное для решения задач традиционных корпоративных приложений, больших данных и аналитики, которое используют в ЦОД, публичных и частных облаках.

Команда создаёт самую сложную часть программного продукта СХД — набор высоконагруженных сервисов, реализующих сложные алгоритмы работы с данными, их кэширования, репликации, создания слепков (snapshots) и т.д.
Наибольшая часть сервисов написана на С++ в соответствии с последними стандартами языка, часть сервисов написана на языке C в ядре Linux в тесной интеграции с аппаратной частью. Набор сервисов, которые разрабатываются в департаменте, реализуют так называемый Data Path СХД.

Data Path СХД решает следующие задачи:

  • кэширование данных на запись и чтение с управлением политик наполнения кэша и вытеснения данных из кэша;
  • обеспечение консистентности данных между основной и резервной новой в режиме active-active для различных режимов работы системы;
  • синхронная и асинхронная репликация данных на удаленные системы;
  • создание слепков данных (снапшотов) и работа с ними;
  • реализация собственного гибкого, конфигурируемого решения для RAID;
  • автоматическая адаптация системы к профилю нагрузки для достижения максимальной производительности системы при различных сценариях и многое другое.

Чем вам предстоит заниматься:

  • разработкой высокопроизводительных data path, control/management path, уровня data protection и кластерных компонентов для системы хранения данных;
  • разработкой эффективных алгоритмов и структур данных для симметричного active-active кластера;
  • разработкой высокопроизводительных алгоритмов преобразования данных и алгоритмов уменьшения избыточности данных;
  • исследованием и решением проблем, связанных с производительностью и стабильностью.
  • разработкой механизмов репликации данных;
  • настройкой и доработкой различных подсистем ядра Linux, продвижением наработок в mainline ядра.

Мы ожидаем от будущего члена команды:

  • понимание устройства современных компьютеров и операционных систем в целом;
  • уверенное понимание принципов создания дизайна и архитектуры программных продуктов;
  • опыт построения сложных программных продуктов и разработки архитектуры;
  • знание С и C++11/14/17;
  • отличное понимание как устроен Linux и Linux/POSIX API;
  • опыт анализа производительности отдельных приложений и системы в целом;
  • умение тестировать собственный код;
  • опыт написания многопоточных и/или асинхронных программ;
  • также необходимо быть знакомым с классическими алгоритмами и структурами данных.

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

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

Мы предлагаем:

  • возможность выбрать удобный формат работы: гибрид, офис, удаленная работа;
  • конкурентный уровень заработной платы для нас это не просто слова, а — принцип;
  • обучение и развитие: учебный портал с курсами и лекциями от внешних и внутренних экспертов, а также дополнительное профессиональное обучение и изучение английского языка;
  • программа поддержки инноваций: премии за научные достижения, публикацию статей, выступления на конференциях и регистрацию патентов;
  • «Лекторий», в котором мы организовываем встречи с выдающимися экспертами в области технологий;
  • забота о здоровье: ДМС с первых дней работы + стоматология, а также льготные условия страхования близких;
  • поддержка в личных вопросах: консультации юристов, психологов, экспертов по ЗОЖ и управлению финансами;
  • открытое общение: регулярные онлайн-встречи всей команды YADRO;
  • программа рекомендаций: рекомендуя друзей или бывших коллег, вы получаете не только возможность работать вместе, но и денежные бонусы.