Разработчик Greenplum (со знанием GO)
Разработчик Greenplum на АУТСТАФ!
Команда DataServices отвечает за сервис управления аналитической базой данных GreenplumDB. Перед нами стоит амбициозная цель — построить production-grade инфраструктуру для полностью управляемого, отказоустойчивого и безопасного GreenplumDB в Kubernetes, с возможностью масштабирования, автоматического восстановления и обновления версий. Именно поэтому мы ищем Senior-инженера.
Задачи:
- Разрабатывать и поддерживать Kubernetes-оператор на Golang для полного жизненного цикла GreenplumDB: развертывание и управление, масштабирование, обновление, резервирование, восстановление, мониторинг. Внедрять новые фичи автоматизации, недоступные при on-prem установке: self-healing сегментов, automated rebalance, zero-downtime upgrades, csi-snapshots
- Строить интеграции с системами безопасности: хранилище для динамических кредов, OPA для политик, TLS для межнодового общения.
- Разрабатывать систему метрик и алертинга на базе Prometheus + Grafana + Greenplum gp_toolkit.
- Писать e2e-тесты, integration-тесты, chaos-эксперименты для проверки отказоустойчивости кластера, а также проводить нагрузочное и стресс-тестирование
Знания и навыки:
- Программирование: Знание Golang: concurrency, generics, profiling, error handling, dependency injection, clean architecture.
- Опыт промышленной разработки Kubernetes Operators с использованием operator-sdk, controller-runtime, kubebuilder, client-go.
- Умение писать идиоматичный, тестируемый, production-ready код с покрытием unit/integration/e2e-тестами (Ginkgo, Gomega, envtest).
- Понимание принципов CRD, reconciliation loop, finalizers, ownerReferences, status conditions. Опыт работы с gRPC, HTTP API, CLI-инструментами (cobra, viper). Понимание архитектуры GreenplumDB (MPP, сегменты, master, interconnect, resource queues and queries).
- Умение писать и оптимизировать аналитические SQL-запросы, понимание EXPLAIN ANALYZE, партиционирования, проекций, статистик.
- Понимание особенностей запуска GreenplumDB в Kubernets: StatefulSets, headless-сервисы, локальные PV, init-контейнеры, sidecar-паттерны.
- Опыт работы с RHEL/CentOS Понимание cgroups, namespaces, systemd, SELinux, network namespaces.
- Опыт работы с Docker, containerd, CRI-O Непрерывная разработка и интеграция (CI/CD): Понимание Git, GitOps, trunk-based development.
- Опыт работы с GitLab CI Дополнительно Умеете исследовать нетривиальные проблемы: от падения сегмента в K8s до дедлоков в распределённых транзакциях
- Понимаете принципы построения распределённых, отказоустойчивых систем. Будет плюсом, если вы:
- Имеете опыт работы с облаками (OpenStack)
- Знаете GreenplumDB Open Source / VMware Tanzu Greenplum / ArenadataDB версий 6+;
- имеете опыт эксплуатации MPP-системы
- Имеете опыт администрирования Greenplum в production: настройка, мониторинг, оптимизация, бэкап/восстановление (gpbackup, gprestore, WAL). Работали с системами мониторинга (Prometheus, Grafana, VictoriaMetrics, Zabbix) и логирования (Loki, ELK).
- Пишете bash-скрипты для автоматизации рутинных операций.
- Имеете опыт настройки Vault, cert-manager, внешних секретов.
Условия:
- Работа в крупной компании, сильная команда проекта.
- Удаленный формат работы, проектная работа, аутстаф
- Трудоустройство только как ИП или Самозанятый.
- Локация территория РФ.