Администратор баз данных/DBA (PostgreSQL)
Прямой работодатель EMEX ( emex.ru )
Опыт работы от 3 до 5 лет
Привет! Меня зовут Вадим, я тимлид DBA в группе компаний EMEX и ищу PostgreSQL DBA в свою команду.
EMEX — международный холдинг, который включает торговый, доставочный и информационный бизнесы: торговая площадка EMEX.DWC в ОАЭ, логистический оператор HWC и EMEX — первый профессиональный маркетплейс автозапчастей в России.
За 20+ лет мы не просто развиваем бизнесы, позволяющие покупать, продавать и доставлять товары: мы создаем ценность для всех пользователей: обеспечиваем автовладельцам свободу передвижения; помогаем продавцам увеличивать продажи, а сотрудникам — раскрывать потенциал.
- Мы доставляем заказы из разных точек планеты, несмотря на ограничения. Во время пандемии и закрытых границ нам удалось сохранить логистические цепочки, поэтому в сегодняшнем дне мы продолжаем предлагать эффективные доставочные решения.
- Наша цель — экспансия на новые рынки: мы работаем над созданием глобальной доставочной и информационной сетью. Мы представлены на рынках Ближнего Востока и СНГ, и исследуем, куда выходить дальше: мы рассматриваем как развивающиеся рынки, например, в африканских странах. Так и развитые — в европейских странах.
- Мы активно обновляем технологии, на которых работаем. Часть наших продуктов переходит на более новый стек, а часть — пишется на нем с нуля. Например, в бэкенде мы переходим на .NET 6, а фронтенд переписываем на React.
О команде
Команда состоит из 3 человек — Teamlead и 2 DBA. Мы занимаемся администрированием и обслуживанием СУБД продуктов компании, проектированием БД и разработкой хранимой логики, а также реализацией аналитических процессов, включая разработку ETL.
О технологиях и процессах в разработке
Новые продукты мы разрабатываем в стеке React JS + C# .NET LTS + PostgreSQL.
В качестве хранения данных новых продуктов используем PostgreSQL. Исторические системы-монолиты базируются на MS SQL Server.
- Серверную часть разрабатываем на C# .NET LTS. Придерживаемся микросервисного подхода при разработке, хостим сервисы в docker. Для сбора логов и анализа используем elastic и posthog. Для межсервисного взаимодействия используем Kafka или RabbitMQ.
- Задачи команда ведет на доске в Azure DevOps Server (TFS). В качестве системы контроля версий используем Git в Azure DevOps Server. CI/CD настраивается там же. Организацией, развертывания сервисов, сайтов и организацией тестовых стендов занимается команда Dev/Ops.
- Документацию ведем в Notion и в репозитории.
Как мы работаем над продуктами?
- Задачи ставятся владельцем продукта и проходят архитектурную экспертизу, где конкретизируются функциональные и системные требования.
- Далее задача прорабатывается вместе с владельцами, архитекторами и лидами других команд. В проработку задачи входит - закрытие белых пятен в требованиях от владельца и архитекторов. В результате появляется оценка длительности, трудоемкости и стоимости задачи.
- Команда DBA работает недельными итерациями: понедельник - планирование, вторник-пятница - митинги.
- До выпуска в “бой”, проводится тестирование в тестовых средах.
- Команда работает удаленно из разных регионов РФ и стран, но в московском часовом поясе.
При разработке новых продуктов используем современный стэк — выделяем время для работы с техдолгом, перехода на новые версии или прототипировании новых подходов.
Кого и зачем мы ищем
Я ищу DBA, который будет отвечать за PostgreSQL-сервера компании и осуществлять DBA-сопровождение соответствующих продуктов, а также заложит и технологический, и идеологический фундамент для использования PostgreSQL в качестве enterprise-решения.
Итак, тебе предстоит:
- Планово поддерживать существующие и создавать новые процессы администрирования и мониторинга серверов PostgreSQL;
- Заниматься плановым обслуживанием серверов, траблшутингом проблем производительности, устранением сбоев;
- Покрывать сервисы отказоустойчивыми кластерами
- Производить апдейт СУБД серверов;
- Настраивать тестовые окружения;
- Готовить регламенты работы с СУБД для разработчиков, выполнять аудит кода;
- Совместно с командой аналитики проектировать хранилища данных и ETL-процессы (если ты раньше не сталкивался с такими задачами, мы поможем тебе научиться).
Цели, которые будут стоять перед тобой в ближайшие 3-6 месяцев
3 месяца:
- Выполнить миграцию исторических сервисов PostgreSQL Win → Linux;
- Внедрить HA cluster на одном из производственных серверов PostgreSQL; отладить его работу, мониторинг и восстановление.
6 месяцев:
- Выполнить аудит и рефакторинг существующих тестовых сред и процессов их инициализации;
- Решить существующие проблемы производительности и DBA-мониторинга основных производственных серверов;
- Кластеризировать основные производственные сервера;
- Подготовить основные sql-гайдлайны для разработчиков, инструкции и регламенты для DBA и DevOps;
- Проработать и запланировать апгрейды устаревших версий СУБД.
Как понять, что ты подойдешь
- Отлично знаешь принципы работы и механизмов функционирования PostgreSQL;
- Имеешь большой опыт администрирования high-load систем на PostgreSQL (в нашем случае, это система, которая способна обслуживать 5 000 - 10 000 одновременных пользователей);
- Владеешь PL/pgSQL, имеешь развитые навыки оптимизации запросов и производительности СУБД;
- Имеешь опыт работы с Linux (bash, docker);
- Знаком с CI/CD-практиками;
- Будет круто, если ты знаешь, как писать понятную и подробную документацию;
- Будет здорово, если ты знаешь, как проектировать хранилища данных и работал с ELK стеком.
Что мы можем предложить
- У тебя будет возможность решать задачи так, как ты посчитаешь эффективным. Если твои решения целесообразны, мы предоставим тебе все необходимые ресурсы.
- Мы сторонники горизонтальных коммуникаций: каждый в нашей команде, начиная с фаундеров, открыт к общению, готов ответить на возникающие вопросы и поделиться тем, что знает сам; любой специалист может обратиться к руководителю напрямую.
- Забота о сотрудниках. Мы внимательно относимся друг к другу и готовы помочь решить проблему. Например, если обстоятельства вынуждают сотрудника переехать в другой город или страну — мы всегда открыты к диалогу. Если ты работаешь в РФ, мы сможем обеспечить тебя ДМС и предоставить всю необходимую технику для работы.
- Сотрудники EMEX самостоятельно выбирают где работать: уже много лет мы поддерживаем удаленный формат работы (по времени ориентируемся на московский часовой пояс). Во-первых, мы не контролируем рабочие часы — для нас важен результат. Во-вторых, ты можешь работать, находясь за пределами России, оформив договор с офисом нашей компании в Дубае.