К списку

Разработчик в команду PostgreSQL-совместимости YDB

Яндекс

ГибридМосква seniorYDBИнженер данныхC++

Наша команда разрабатывает слой совместимости с PostgreSQL для YDB. Он позволяет существующим PostgreSQL-приложениям работать с YDB без изменений на стороне клиента и при этом использовать возможности распределённой СУБД: горизонтальное масштабирование, отказоустойчивость и строгую согласованность.

Проект уже показал результаты на ряде приложений, работающих с PostgreSQL. Ближайшая задача — развивать производительность и обеспечивать полноту поддержки PostgreSQL-семантики в архитектуре YDB и в слое PostgreSQL-совместимости.

Мы ищем разработчика с опытом работы в ядре PostgreSQL, пониманием распределённых систем и уверенным владением C++.

Какие задачи вас ждут

Проектирование архитектуры расширения и слоя совместимости
Вы будете проектировать поддержку PostgreSQL-семантики поверх распределённого движка YDB через колбэки и хуки PostgreSQL (при необходимости — через патчи в сам PostgreSQL); определять зоны строгой совместимости и зоны допустимых расхождений.

Настройка производительности
Вам предстоит профилирование горячих путей, оптимизация выполнения запросов, работа с планировщиком. Цель — эффективное выполнение типовых OLTP-нагрузок и масштабируемая работа на больших данных и распределённых сценариях.

Реализация парсера и транзакционного механизма
Необходимо будет обеспечивать поддержку PostgreSQL-диалекта SQL (DDL, DML, CTE, оконные функции, рекурсивные запросы), а также минимизацию семантических расхождений в пределах технических возможностей. Цель — достичь поведения приложений, использующих распределённые транзакции YDB, неотличимого от поведения при работе с PostgreSQL.

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

Обеспечение совместимости с экосистемой
Вам предстоит обеспечивать корректную работу драйверов (libpq, JDBC, asyncpg, pgx) без модификаций на стороне клиента, поддержку ORM, миграционных инструментов и BI-систем.

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

Мы ждём, что вы

  • Уверенно владеете C++ и понимаете устройство высоконагруженных и распределённых систем
  • Готовы разбираться во внутренностях PostgreSQL, YDB и СУБД в целом, включая расширения, внутренние структуры, планировщик. Опыт СУБД-разработки не обязателен — важна способность работать со сложными чужими кодовыми базами на этом уровне
  • Умеете доводить архитектурные решения от идеи до согласованного дизайна и работающего кода

Будет плюсом, если вы

  • Разрабатывали расширения PostgreSQL или работали с его внутренними API (Hooks, FDW, Custom Scan, Background Workers)
  • Знаете внутренности PostgreSQL или родственные системы (Greenplum, Citus, CockroachDB, YugabyteDB)

Источник: yandex.ru (Яндекс) 29 августа 2026