Москва
Метро: Библиотека им.ЛенинаИщем Разработчик C++ (Lead) на проект, связанный с расширением функциональности СУБД Jatoba.
Ищем разработчика на разработку СУБД PostgreSQL на уровне ядра.
Обязательные требования:
глубокое знание языка C (минимум C89/C99) и стандартной библиотеки C;
глубокое знание языка C++ (минимум C++11/C++14) и стандартной библиотеки C++;
опыт коммерческой разработки на языке С/С++ - от 5 лет;
понимание алгоритмов, архитектуры и базовых принципов работы СУБД;
опыт работы с СУБД PostgreSQL: общие знания основ баз данных, основ языка SQL, понимание базовых принципов работы СУБД PostgreSQL;
понимание архитектуры и принципов работы современных ОС на основе Windows/Linux: управление памятью (виртуальная/физическая/swap), управление процессами и потоками, службами и фоновыми задачами, межпроцессное взаимодействие, управление вводом/выводом (блочные устройства, файловые системы, файловый кэш);
уверенная работа со средствами виртуализации (VirtualBox, VmWare).
опыт работы с многопоточностью и сетью (процессы/потоки, методы синхронизации, TCP/UDP, сокеты);
опыт работы с основными системами сборки: GNU autotools, GNU make, cmake;
опыт работы с разными компиляторами (gcc, clang, mingw64);
опыт работы с инструментами отладки и анализа кода (отладчики, санитайзеры, профилировщики, статический и динамический анализ кода);
опыт работы с системами управления кодом (git), понимание принципов ведения веток и релизов в репозитории;
опыт чтения чужого кода (в том числе legacy-кода), навыки проведения code review;
опыт написания unit-тестов, правила оформления и документирования кода;
уровень английского языка, достаточный для чтения и понимания технической документации, статей по тематике СУБД.
Soft skills:
ответственность и умение работать в команде;
умение сформулировать и поставить задачу своему коллеге;
навык делиться своим опытом и знаниями с менее опытными коллегами (наставничество)
Будет плюсом:
опыт написания расширений, разработка на уровне ядра СУБД PostgreSQL;
глубокие знания устройства PostgreSQL: методов хранения и обработки данных, архитектуры памяти, методов хранения и построения индексов, знание принципов работы процессов и конвейера обработки запросов;
навыки анализировать и оптимизировать сложные SQL запросы/планы запросов;
базовый уровень знания одного или нескольких языков: Golang, Python, Perl, Shell (умение читать написанный код, умение писать небольшие скрипты);
основные знания о контейнерах и опыт работы с ними;
знание принципов построения и функционирования распределенных систем;
опыт разработки ПО под высокие нагрузки;
участие в конференциях и желание принимать участие в конференциях;
опыт разработки под ОС Windows;
опыт планирования в Agile, Scrum.
Условия:
Интересные задачи
Гибкое начало рабочего дня
Оформление в штат компании по ТК РФ (аккредитованная IT компания) или на контрактной основе.
Удаленный формат работы
Локация - РФ
Ждем ваш отклик, будем рады обсудить вакансию подробнее!
Онмун компани
Москва
от 300000 RUR
Москва
от 300000 RUR
Открытая мобильная платформа
Москва
до 300000 RUR
Москва
до 300000 RUR