Ведущий разработчик базы данных на Rust/С в продуктовую команду разработки

Оплата не указана

Требуемый опыт работы

От 3 до 6 лет

Тип занятости

Полная занятость

График работы

Удаленная работа

В связи с расширением штата в компанию ООО «Пикодата» требуется Ведущий разработчик Rust /С в продуктовую команду Picodata.

О компании:

Компания Picodata основана экспертами по высоким нагрузкам с опытом разработки и внедрения систем, обслуживающих десятки тысяч запросов в секунду. Сотрудники компании — авторы собственных курсов по разработке и эксплуатации высоконагруженных приложений. Мы регулярно выступаем на конференциях и рассказываем о решаемых задачах и продукте.

Мы предоставляем полный спектр сервисов: от создания открытого и коммерческого ПО до внедрения, сопровождения, развития решений у заказчика. Наш софт помогает решать mission critical задачи и обеспечивает доступность > 99.99%. Наши заказчики — наиболее требовательные клиенты из крупнейших коммерческих и государственных организаций России и СНГ.

Наша команда разрабатывает собственный продукт – распределенную систему управления базами данных в памяти (in-memory DBMS) с поддержкой плагинов на языке Rust.

Технологический стек делится на несколько частей:

  • Ядро Tarantool, написанное на языках C и C++, которое предоставляет хранилище данных с подсистемой ввода-вывода, специализированные аллокаторы памяти, реализацию кооперативной многозадачности (stackful coroutines), механизм цикла событий (libev) и проч. Мы поддерживаем собственный форк и по мере необходимости вносим в него изменения, а также взаимодействуем с апстримом.

  • Все верхнеуровневые подсистемы, такие, как менеджер кластера, схемы данных, интерпретатор распределенного диалекта SQL, инфраструктурные библиотеки, плагины реализованы на языке Rust. Все компоненты собираются в единый исполняемый файл, а для работы с ядром активно используется FFI.

  • Тесты и вспомогательные скрипты пишем на языках python, lua, bash, make.

Мы поддерживаем релизы под дистрибутивы Linux на двух архитектурах: x86 и ARM, но для удобства разработчиков частично совместимы с MacOS.

На текущем этапе мы сфокусированы на трех ключевых свойствах продукта: движок исполнения SQL, надежное и удобное управление кластером на базе Raft, гибкий API для расширения возможностей СУБД посредством плагинов. Помимо этого, есть ряд интересных идей и продуктовых гипотез, которые нам предстоит проверить.

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

Вам предстоит:

  • Реализовывать распределенные алгоритмы управления транзакциями, составом кластера, репликацией и перебалансировкой данных.

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

  • Не только писать код, но и описывать свои идеи в формате RFC и документации и защищать их перед другими участниками проекта.

  • Отлаживать проблемы и чинить баги.

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

  • Делать ревью кода.

Основные требования:

  • Высшее или неоконченное высшее техническое образование.

  • Опыт работы программистом более 4-​х лет.

  • Знание Rust (предпочтительно) или других системных языков (C, C++).

  • Опыт разработки баз данных (PostgreSQL, MySQL, sqlite, ClickHouse итд) и/или умеете их готовить (DBA/DevOps). Отдельной похвалы заслуживают коммиты в подобных проектах.

  • Опыт системного программирования для Linux.

  • Опыт разработки распределенных систем.

  • Инструменты: cargo, git, gdb, perf, опционально ebpf.

  • Знание английского языка не ниже upper intermediate.

  • Вы можете поддержать разговор на тему системного программирования. Например, читали Роберта Лава или сами любите поковыряться в ядре Linux.

  • У вас есть открытые проекты на github или других площадках (мы их с удовольствием изучим).

Условия:

  • 100 % белая заработная плата, обсуждается по итогам собеседования.

  • Официальное трудоустройство, предоставление документации для отсрочки от призыва и частичной мобилизации (IT компания-производитель отечественного ПО).

  • Полная занятость, удаленная работа.

  • График работы 5/2.

  • ДМС после прохождения Испытательного срока, возможность приобретения ДМС на родственников, оплата 80% стоимости полиса ДМС детей до 18 лет Работодателем. Программа действует по всей России.

  • Предоставляется оборудование по стандартам компании.

  • Центральный офис – г. Москва (м. Алексеевская).

Контактная информация

Кадровый центр Сотрудничество

Вакансия опубликована 20.11.2024 в г. Москва.

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

#

Москва

Полный день

Подробное описание

31 октября

#

Москва

Красные ворота

и еще 2 станции

Полный день

Подробное описание

9 августа

#

Middle

Москва

Удаленная работа

Подробное описание

18 ноября