Ключевые требования и обязанности
1. Администрирование и конфигурация СУБД
Развёртывание и настройка PostgreSQL (версии 14+) на физических и виртуальных серверах.
- Управление параметрами конфигурации (postgresql.conf, pg_hba.conf), настройка пулов соединений (PgBouncer);
- Планирование и масштабирование ресурсов (RAM, CPU, диск), управление tablespaces;
- Миграции данных с Oracle 11g на PostgreSQL;
- Управление расширениями: первоначальное конфигурирование, добавление по запросу;
- Выполнение миграций с Oracle11g в части адаптации прикладного кода (пользовательских процедур/функций).
2. Обеспечение доступности и восстановления
Настройка репликации:
- Физическая (streaming replication, synchronous/async);
- Логическая (публикации/подписки, декодирование WAL);
- Организация резервного копирования:
полные/инкрементальные бэкапы (pg_basebackup, WAL-архивация); - Восстановление из бэкапов (PITR — Point-in-Time Recovery).
Мониторинг и устранение сбоев:
- Анализ логов (настройка log_min_duration_statement, log_checkpoints);
- Помощь devops в настройке автоматических оповещений о критических событиях;
- Ликвидация блокировок (deadlocks, long-running transactions).
3. Оптимизация производительности
Выявление "тяжелых" запросов:
- Анализ планов выполнения (EXPLAIN, EXPLAIN ANALYZE);
- Использование pg_stat_statements, auto_explain;
- Помощь DevOps в настройке POWA/Percona MM;
- Оптимизация индексов (B-tree, GiST, GIN), перестройка/реиндексация;
- Работа с секционированием таблиц;
- Анализ прикладного кода (функции, триггеры, процедуры):
- Поиск узких мест (например, избыточные циклы в PL/pgSQL);
- Формирование рекомендаций для разработчиков (рефакторинг запросов, выбор типов данных);
- Тюнинг/подбор параметров СУБД PostgreSQL (work_mem, shared_buffers, autovacuum).
4. Взаимодействие с командами
- Консультирование разработчиков по оптимизации SQL-запросов/функций;
- Консультирование и помощь в реализация скриптов автоматического мониторинга для zabbix7, собственный bot, сценарии в N8N;
- Участие в инцидент-менеджменте (расследование причин деградации производительности);
- Документирование процессов развертывания и адаптации (инструкции по восстановлению, чек-листы для деплоя).
5. Инструменты и автоматизация
- Мониторинг: Zabbix, PMM/POWA;
- Настройка автоматического обслуживания (vacuum, analyze);
- Автоматизация рутинных задач (скрипты на Bash/Python);
- Интеграция с CI/CD (например, развёртывание копий прод баз в локальном пространстве разработки).
При отклике просим рассказать о практическом опыте в рамках описания вакансии.
Например, можно привести примеры участия в проектах.
Создание и поддержка отказоустойчивого кластера из трёх баз:
- мастер (транзакционная);
- replica уровня блочная (синхронная) на случай замены мастера;
- физическая (холодная копия) для использования низкоприоритетных запросов.
Приложить примеры конфигураций, указав размер БД, вычислительные ресурсы, среднее кол-во клиентов и транзакций.
Для наших любимых teammates:
Комфортное рабочее место, дружеская атмосфера в крутой локации.
Дополнительные плюшки в виде СберЗдоровья и такси.
Задачи, меняющие мир вокруг к лучшему и помогающие узнавать много нового!
Условия для карьерного и личностного роста!
Приглашаем в команду DIGITAL