Tutu (Туту) — сервис путешествий №1 в России (данные кросс-медийной панели GfK Rus, дек. 2018 и Симиларвеб 2020), где можно купить билеты на поезда, самолеты и автобусы, посмотреть расписание пригородных поездов, найти туристические путевки, забронировать отели и экскурсии, почитать отзывы на вагоны и самолёты, посмотреть, где там розетки и пеленальные столики, увидеть фото и пропасть на полжизни. В компании около 600 человек. Из них 220 — контакт-центр с 24-часовой поддержкой, 250 — ИТ-специалисты, 90 — разработчики.Блог на Хабре вот: https://habr.com/ru/company/tuturu/ Мы уже больше 20 лет пристально наблюдаем расписания — скорее всего, вы пользовались нашим расписанием электричек ещё на заре Рунета. По данным SimilarWeb мы входим в топ-50 самых популярных сайтов в мире в категории Travel, это 850 тысяч человек на сайте ежедневно. Сессий больше, у нас ещё есть приложения с миллионами инсталлов. Основной стек — GO + старый PHP в контейнерах. Дальше всё зависит от команды, стараемся брать лучшее из самых новых игрушек.
ПодробнееПривет! Меня зовут Вадим, я руковожу одной из команд админов в Туту. Нас в команде 9 человек, и мы поддерживаем значительную часть инфраструктуры компании – базы данных, очереди, сервера приложений, фронтпрокси, сервисы мониторинга и многое другое. Всего в компании более 600 сотрудников, из них более 200 в IT. Команда Туту занимается путешествиями, у нас есть электрички, самолёты, поезда, автобусы, отели и вообще всё, что нужно для того, чтобы куда-то уехать и вернуться.
У нас нет совсем уж bleeding edge технологий, но достаточно много свежих и не сильно распространенных в стране. Мы прекрасно понимаем, что им, да и тому, как мы их готовим, всё равно придётся учиться, поэтому самое главное для нас – не знание конкретных технологий, а выраженная ответственность за системы и умение нормально договориться в команде. Будет и достаточно много рутины, и регулярные сложные задачи, которыми можно будет гордиться в профессиональном смысле.
Кого мы ищем?
Сейчас активно растет разработка внутри компании и это повышает нагрузку на инфраструктуру. Поэтому мы ищем сотрудника, который заберет на сопровождение часть из наших сервисов: будет реагировать на алерты и сбои, дорабатывать мониторинг.
Немного про стек:
-
lvs – ключевой элемент нашей HA;
-
ansible, terraform – инструменты внутренней автоматизации;
-
стек мониторинга: prometheus, grafana, promgen, alertmanager;
-
стек логов: fuentbit – kafka – fluentd – elastic (в процессе адаптации vector и clichouse для аудит логов)
-
стек трейсинга: open telemetry collectors, kafka, jaeger, clickhouse
-
сбор ошибок приложения – Sentry, continuous profiling – Pyroscope
-
kafka – стандарт очередей в компании, порядка 15 кластеров
-
S3-compatible object storage – minio
-
еnvoy – в роли frontproxy и внутреннего балансировщика для http/grpc
-
БД – скорее всего в них лезть не придется, но:
-
mariadb – основная реляционная БД для продуктовой разработки. HA конфигурация с использованием proxysql и orchestrator, всего несколько десятков инсталляций с разными топологиями;
-
mongodb – replicaset вариант с небольшой обвязкой для HA – порядка 20 репликасетов;
-
postgres. HA кластера под продуктовую разработку и сторонние продукты. Пока в стадии принятия и накопления экспертизы
-
redis – кластера на базе sentinel.
-
clickhouse – в основном в составе сторонних продуктов
-
Основные задачи:
-
Развивать текущие сервисы (mino, kafka, envoy, части пайплайна сбора логов – EFK – и элементы инфраструктуры мониторинга/трейсинга/сбора ошибок): оптимизировать под увеличивающиеся нагрузки или меняющиеся паттерны использования, добавлять отказоустойчивость, повышать observability, упрощать использование сервисов в коде приложений, заниматься закрытием уязвимостей, обновлением;
-
Разворачивать и в дальнейшем развивать еще не используемые в компании сервисы – по запросам разработки или в рамках внутренних проектов команды – и на виртуалках и на базе платформы Openshift;
-
Чинить проблемы на продакшне – реагировать на алерты конкретных сервисов и на комплексные сбои;
-
Поддерживать продуктовую разработку в режиме HelpDesk – типовые не автоматизированные операции, консультации, отладка сложных багов;
-
Автоматизировать то, до чего еще не дошли руки.
Не придётся:
-
Трогать железо;
-
Настраивать сети;
-
Глубоко погружаться в базы данных;
-
Поддерживать кластера OpenShift;
Все это в компании есть, но занимаются другие команды и подкоманды.
От вас нужно:
-
Опыт работы Linux-администратором (хотя можете называть себя и девопсом и SRE инженером). Для нас это подразумевает умение развернуть и настроить с нуля новый софт – на нескольких серверах и не вручную – и дальше сопровождать его.
-
Опыт работы на реальных проектах, желательно именно в вебе, больше года.
-
Желание помогать разработчикам, умение их услышать, разобраться и придумать варианты. Нам на самом деле не пофиг, и разработка ценит это. Они делают продукт, мы помогаем с инфраструктурой настолько, насколько это возможно.
-
Способность спокойно, быстро и четко реагировать в случае сбоев – они бывают.
-
Навык разобраться в чем-то новом и/или странном с помощью логики и google’а (англоязычного).
-
Умение работать в команде. Придется много общаться, а это значит – и аргументировать свою точку зрения, и слушать и понимать других. Мы признаем свои косяки и не наказываем за них, поэтому ожидаем этого и от вас – главное делать из ошибок правильные выводы. Если для вас важны искренность и открытость, то у нас вам будет хорошо.
-
Готовность работать не только с новым, но и с легаси. За почти 20 лет существования компании его накопилось в достатке, поэтому важно уметь оценивать: где лучше оставить, где чуть пошевелить, а где – переделать с нуля.
-
Отсутствие страха перед написанием скриптов и знание или желание изучить python.
-
Готовность работать в "Котиках" – команда называется именно так.
Про команду и рабочие процессы:
У нас нет большого кол-ва встреч: 1-1 со мной раз в неделю первое время, в дальнейшем, возможно, реже, общекомандный созвон-синхрон раз в неделю.
Кто уже моей в команде?:
Яша придумал и внедрил центральный элемент нашего видения HA — балансировщики на базе lvs и эникаст-адресов. Развернул новую систему централизованного мониторинга на базе prometheus (вместо graphite) и пайплайн сбора логов fluentbit-kafka-fluent вместо rsyslog-logstash. Основной эксперт по minio.
Антон внедрил в компании kafka, главный эксперт по этому сервису. Сейчас занимается развитием инструментов управления облаками – главный по terraform’у (мы живём в 5 ЦОДах https://habr.com/ru/company/tuturu/blog/508872/). Развивает envoy (о внедрении можно почитать тут https://habr.com/ru/company/tuturu/blog/544128/)
Леонид. Специализируется на инструментах observability. Развернул Pyroscope в Openshift для непрерывной профилировки продуктовых сервисов на go, внедряет отдельный пайплайн для логов аудита (kafka-vector-clickhouse).
Виталий. Чуть больше полугода в команде, развивает envoy (с элементами разработки на python и lua) и terraform.
Леха. Ведущий DBA с опытом более 15 лет. Сделал отказоустойчивым весь наш парк mariadb, с использованием proxysql, github orchestrator и самописного «клея» на питоне. Придумал и внедрил HA redis на основе sentinel. Сейчас занимается внедрением postgresql и техлидит подкоманду ДБА
Элина. Самый первый админ в Туту – уже больше 11 лет в компании. Сейчас DBA и основной специалист по mongodb, последний большой проект – удобное управление правилами сетевых доступов (в контексте баз данных) на основе iptables.
Слава. Новичок в команде ДБА, полгода в компании. Помогает Лехе и Элине со всем многообразием наших БД, сейчас занимается обновлением всего парка mongodb.
Саша – разработчик, раньше занималась эксплуатацией монолитного приложения, а сейчас развивает инструменты внутренней автоматизации.
Вадим (я) – бывший разработчик, а сейчас главный зануда команды. Помимо руководства помогаю ребятам с кодом обвязок и скриптов, архитектурой и диагностикой сложных сбоев.
График работы:
Возможна полная удаленка, но лучше гибрид – можно ездить в офис каждый день, можно появляться раз в неделю или даже реже, но быть готовым приезжать по необходимости.
Весь положенный набор плюшек: ДМС со стоматологией, кухня в офисе, страховка на путешествия, ноутбук, премии по результатам работы, оплата больничных, регулярная переиндексация зарплаты, а также обучение, премия за прочитанные книги и обмен опытом.
Структура собеседований:
-
Первая встреча-знакомство с HR менеджером и Вадимом;
-
Техническое собеседование с кем-то из команды. Можно понять, достаточно ли профессиональна наша команда и комфортно ли вам с ней будет. Мы, в свою очередь, проверим ваши профессиональные знания и навыки);
-
Финальная встреча с заместителем CTO по эксплуатации.
Сфера деятельности:
Интернет-компания (поисковики, платежные системы, соц.сети, информационно-познавательные и развлекательные ресурсы, продвижение сайтов и прочее)
Чтобы откликнуться на эту работу, пожалуйста, посетите hh.ru.