- Страна
- Россия
Software Engineer (C++) / Database Systems
Интересная позиция для системных программистов с возможностью работы над сложным технологическим стеком (DuckDB, ClickHouse). Удаленный формат и работа с Open Source компонентами делают вакансию привлекательной для Senior-специалистов.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Улучшите резюме под эту вакансию
Возьмём требования и создадим новую версию резюме с акцентом на нужный опыт
Сложность вакансии
Высокая сложность обусловлена требованиями к глубоким знаниям системного программирования, архитектуры СУБД и поисковых движков. Кандидату необходимо разбираться в низкоуровневой оптимизации, многопоточности и сложных алгоритмах поиска.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Анализ зарплаты
Зарплата в вакансии не указана, однако для Senior C++ разработчика в области системного ПО и СУБД рыночные предложения в России и СНГ обычно начинаются от 350 000 рублей. В международных компаниях или при работе на глобальный рынок цифры могут быть значительно выше.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Описание вакансии
MIND Software
Software Engineer (C++) / Database Systems
Формат работы: гибрид/удалённо
*☑️* Чем предстоит заниматься
-Глубоко разбираться в кодовой базе: storage, query engine, поисковый слой. Reverse engineering архитектуры, поиск узких мест, документирование ключевых компонентов
-Развивать слой на DuckDB: планирование и исполнение запросов, хранение, catalog/store, апстрим-бампы и расширения
-Развивать свой поисковый движок: инвертированный индекс и columnstore, скоринг (BM25, WAND/MaxScore), векторные индексы (IVF, квантизация), токенизаторы, компрессия постинг-листов
-Развивать протоколы и коннекторы: foreign servers, форматы и источники (Parquet, Iceberg, CSV, JSON на S3/HDFS), совместимость с ClickHouse/Elasticsearch
-Профилировать CPU/память/диск, оптимизировать критические участки, гонять бенчмарки (ClickBench, ann-benchmarks, FTS)
-Писать модульные, интеграционные и нагрузочные тесты, участвовать в SQL-фаззинге и код-ревью
*☑️* Наши пожелания к кандидатам
-Уверенно владеете современным C++
-От 3 лет системного программирования
-Сильные алгоритмы, структуры данных, многопоточность и concurrency
-Есть опыт с высоконагруженными системами
-Умеете разбираться в сложном чужом коде
-Понимаете, как работает ОС: память, диск, сеть
-Будет плюсом:
-DuckDB, ClickHouse, Elasticsearch/Lucene
-Разработка баз данных, поисковых систем или query engines
-Полнотекстовый поиск / IR (инвертированный индекс, BM25)
-Векторный поиск / ANN (IVF, HNSW, квантизация)
-Колоночное хранение, векторизованное исполнение, query planning
Контакты: Откликнуться
Больше похожих вакансий + автоотклики с ИИ
Умный подбор, сопроводительные письма, советы по отказам — больше приглашений.

Навыки
- C++
- DuckDB
- ClickHouse
- ElasticSearch
- Lucene
- SQL
- S3
- HDFS
- Parquet
- Iceberg
- JSON
- CSV
- BM25
- HNSW
- Concurrency
- Algorithms
- Data Structures
Возможные вопросы на собеседовании
Проверка понимания внутреннего устройства СУБД и работы с DuckDB.
Расскажите о механизмах векторизованного исполнения запросов. Какие преимущества это дает по сравнению с моделью итератора (Volcano)?
Оценка навыков в области поисковых систем.
Как работают алгоритмы WAND и MaxScore для оптимизации поиска? В каких случаях один эффективнее другого?
Проверка знаний в области векторного поиска.
В чем разница между методами индексации IVF и HNSW для поиска ближайших соседей (ANN)? Какие компромиссы существуют между скоростью и точностью?
Оценка навыков системной оптимизации.
С какими инструментами профилирования CPU и памяти вы работали? Приведите пример сложного бага, связанного с concurrency, который вы успешно отладили.
Проверка знаний структур данных и хранения.
Как устроено колоночное хранение данных и какие методы сжатия (например, для постинг-листов) наиболее эффективны для различных типов данных?
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.

