Мы в Skyeng меняем традиционное образование с помощью технологий. Сейчас в нашей IT-команде более 500 сотрудников, включая 200+ разработчиков. Наша разработка — это 49 независимых и быстрых продуктовых команд с опытными тимлидами и продактами.
Наши продукты — это онлайн-платформа Vimbox, Android и IOS-приложения, словари, браузерные расширения, внутренние CRM и финансовые системы. В 2020 году Skyeng вошел в топ 10 IT-компаний России.
За что отвечает Senior DBA в Skyeng:
-
За стабильную работу всех СУБД в production. У нас гибридная инфраструктура из облачных решения и on premise в нескольких ЦОДах.
Стек СУБД:
-
Postgresql 11, 9.6 (мало, почти все перевели на 11 версию);
-
MySQL 5/8;
-
Clickhouse + Kafka как шина данных для Clickhouse.
Для высокого uptime СУБД необходимо обеспечивать развитие следующих направлений:
-
Автоматизированная отказоустойчивость — мы умеем переносить нагрузку на реплики, проводим регулярные учения и есть Disaster Recovery планы, но хотим автоматизировать этот процесс для снижения времени простоя;
-
Мониторинг — у нас есть отличные дашборды с различными метриками производительности СУБД, но не хватает проактивного элемента, мы хотим узнавать о проблемах до того как они перейдут в аварию. Мониторинг на базе Prometheus + Alertmanager;
-
Резервное копирование — бекапы у нас есть, но не устраивает время восстановления, в планах его существенно снизить, да же крупных БД размером в 2-3 Tb;
-
IaC — мы используем Ansible для управления инфраструктурой и пользователями СУБД, есть самописные роли;
-
Анализ корректной работы проектов с СУБД — у нас есть понимание как себя должен вести хорошо написанный SQL запрос, мы хотим измерять насколько качественно проекты работают с СУБД и давать командам разработки обратную связь для исправления проблем до того как они приведут к аварии;
-
В перспективе перейти к модели работы DBaaS (Database as a Service), автоматическому предоставлению ресурсов СУБД с нужным SLA под проект в докеризированой среде, например в кластере Kubernetes.
Наша инфраструктура:
-
293 продуктивных сервера, как в облаках так и on premise;
-
179 баз данных на нескольких десятках серверов и RDS;
-
~232 сервиса в prod, из них 205 в Docker swarm кластере, и остальные в облаке или на on premise;
-
Backend всех сервисов написан на PHP, 85% на фреймворке Symfony.
Ближайшие планы:
-
Q2 — повысить стабильность работы баз данных, автоматизировать отказоустойчивость;
-
Q3 — MVP kuber: для тестового и prod окружения;
-
Q3 — MVP DBaaS для тестового и prod окружения;
-
Q4 — 100% kuber;
-
<неизвестно когда> выход на международный рынок: деплой на несколько площадок, распределенный мониторинг, синхронизация данных между площадками.
Для общения и документации у нас современные инструменты: Slack, Google Meet, JIRA, Confluence, Github
Мы не любим бюрократии: мы не боимся ошибаться, а если так происходит, то проводим post mortem, разбираем ошибки и работаем дальше
Задачи:
-
Реализация и развитие подхода DBaaS в компании;
-
Проектирование и реализация инфраструктуры СУБД в географически распределенной среде;
-
Обеспечение отказоустойчивости и доступности баз данных: PostgreSQL, MySQL, Clickhouse;
-
Обеспечение отказоустойчивости и доступности шины данных Kafka;
-
Автоматизация управления инфраструктурой СУБД на базе Ansible;
-
Реализация и поддержка инфраструктуры резервного копирования и восстановления БД, проведение учений по восстановлению данных;
-
Реализация мониторинга СУБД;
-
Оптимизация производительности БД;
-
Обеспечение информационной безопасности БД;
-
Взаимодействие со смежными командами;
Наши ожидания:
-
Опыт администрирования PostgreSQL, MySQL, Clickhouse от 3 лет;
-
Опыт работы с высоконагруженными базами данных PostgreSQL, MySQL, Clickhouse доступных в режиме 24х7;
-
Знания и опыт настройки репликации, резервирования, резервного копирования БД;
-
Опыт оптимизации работы СУБД, SQL запросов;
-
Опыт управления СУБД как IaC при помощи Ansible, Puppet или Chef;
-
Опыт работы с Grafana, Prometheus или Zabbix;
-
Знания ОС Linux на уровне администратора.
Будет плюсом:
-
Опыт поддержки работы БД в Docker окружении в production (Swarm, k8s);
-
Опыт разработки на PHP, Python;
Условия:
-
Меняем образование — это важная цель в глобальном масштабе, делать социально-важное нереально круто, попробуй!
-
Сильная команда. Средний уровень разработчиков в компании — senior. Есть чему поучиться, есть с кем обсудить то, что уже знаешь;
-
Уникальный опыт: действительно сложные проблемы, которые можно встретить только в нагруженных проектах и сильно растущих компаниях;
-
Учимся сами: регулярные доклады разработчиков внутри компании, участие и выступления на конференциях;
-
Хакатоны и командные сборы в разных уголках мира — каждая команда выезжает на 2 недели вместе работать и отдыхать, хакатон объединяет всю команду IT;
-
Скидка 50% на уроки английского каждому сотруднику и другу;
-
Конференции, профессиональные курсы, выбирай и учись с оплатой от компании;
-
Можно влиять на компанию и её процессы;
-
Оплачиваемые отпуск и больничный;
-
Стабильная заработная плата два раза в месяц;
-
Работа в большой и амбициозной IT-компании с процессами, но без бюрократии;
-
Можно расти вместе со школой. Skyeng растет в 3 раза каждый год, сотрудники растут быстрее;
-
Можно работать удаленно из любой точки мира, а также из нашего уютного офиса в Москве (м. Таганская). Выбор за тобой.