Работа в Plesk

Product

Plesk — это панель управления хостингом, которая помогает пользователю в управлении системными службами. Plesk предназначен для обеспечения безопасности и автоматизации работы веб-серверов, сокращает время на обслуживание и позволяет веб-разработчикам, дизайнерам и системным администраторам сконцентрироваться на их задачах.

  • 6% мирового
    интернета
  • 32 языка
    в 140 странах
  • 380 тысяч
    серверов
  • 11 миллионов
    веб-сайтов
Саша Редикульцев про AWS Certified Solutions Architect Professional, саппорт и QA | Plesk

People

Создаем продукт, который упрощает работу инженерам по всему миру. Для этого команды разработки Plesk используют, внедряют и разрабатывают новые инструменты и технологии. Высокая вовлечённость и ответственность за результат позволяет реализовывать самые амбиционые цели и задачи.

Команды

Core

Работа в команде Core — это работа в самом сердце Plesk, создание основного продукта компании и тесное взаимодействие со всеми другими командами, это возможность принимать решения, оказывающие влияние на работу всего продукта. В команде занимаются фронтендом, бэкендом, разработкой API и SDK, DevOps’ят свои сервисы. Продукт большой и сложный, надо многое знать и уметь делать большие и сложные изменения — это является непрерывной точкой роста для инженеров.

Команда состоит из порядка 30 инженеров, разбитых на функциональные подкоманды, способные автономно выполнять полный цикл разработки по задачам. Среди инженеров есть различные специализации: QA-инженеры; разработчики с фокусом на PHP, JavaScript; инженеры с сильным background’ом в Linux или Windows; технические лидеры.

Большая часть продукта пишется на PHP и JavaScript. Для слоя взаимодействия с системными сервисами на Linux используется в основном C, C++, Python. В рамках пакетирования используются Bash, Buck, Packer. Взаимодействие с Windows-сервисами организуется через прослойки написанные на C++ и C#. При разработке множественных внешних и внутренних сервисов применяются и другие языки, фреймворки и технологии: Node.js, Go, Ruby, Docker, Kubernetes, AWS.

MetaCloud

Команда MetaCloud занимается разработкой web-сервисов (SaaS-сервисов), которые расширяют экосистему панели управления хостингом. Кроме разработки, команда обеспечивает бесперебойную работу этих сервисов, которые должны выдерживать высокую нагрузку, и связанные CI/CD-процессы.

В качестве примеров сервисов, над которыми работает команда можно привести следующие: сервис по созданию screenshot’ов, сервис по проведению A/B экспериментов, сервис по самообслуживанию клиентов и еще ряд других. В некоторых сервисах акцент делается на backend и предоставление API-для интеграции, в других — присутствует frontend и клиенты работают с полноценной панелью управления. Практически в каждом сервисе присутствуют вызовы для разработчиков в той или иной форме: сервис по созданию screenshot’ов должен создавать более 1 500 000 скриншотов в сутки, сервис по проведению A/B экспериментов в пиковые моменты может испытывать нагрузку в 5000 RPS, каждый сервис требует тщательной проработки аспектов безопасности и отказоустойчивости.

Языки и технологии: Node.js, TypeScript, React, Go, AWS, Docker, Terraform, Grafana

Modules

Работа в Modules — это возможность делать продукты, которые действительно нравятся пользователям. Помогают им достигать целей меньшими усилиями, устраняют препятствия и делают возможным то, что ранее казалось недоступным — в конечном счете, делают мир немногожечко лучше. Инженеры команды Modules, а это более 20 разработчиков и тестировщиков, используют Plesk — открытую и расширяемую платформу — для построения инструментов, решающих прикладные задачи: развертывание и обслуживание веб-сайтов, анализ производительности, мониторинг, защита от атак и многое, многое другое.

WordPress Toolkit — один из продуктов, разрабатываемых и поддерживаемых ребятами из Modules — начал свое существование как расширение Plesk, но сейчас шагнул за границы платформы, превратившись в самостоятельное решение наиболее востребованных задач WordPress хостинга. Согласно последним данным, более четырех с половиной миллионов WordPress сайтов, хостящихся на более чем 200 тысячах серверов Plesk и cPanel по всему миру, обслуживаются WordPress Toolkit. И мы верим, что эти цифры продолжат расти.

Мы выкладываемся на максимум в решении задач, стоящих перед нашими пользователями — экспериментируем, исследуем альтернативы, действуем итеративно, опираясь на обратную связь и данные телеметрии. Выстраиваем процесс доставки ценности таким образом, чтобы он работал без сбоев — эффективно, эффектно и комфортно для всех его участинков. А если сбои случается, мы, как команда, проводим ретроспективу и договариваемся о корректировках, если они необходимы. Мы стремимся к кроссфункциональсти и уважаем автономию, наделяя продуктовые команды возможностью принимать самостоятельные решения. Мы делаем работу видимой на досках Kanban и следуем лучшим практикам Lean, устраняя препятствия в создании действительно важных и полезных вещей — того, что ценят пользователи наших продуктов.

Языки и технологии: PHP, JavaScript, React, Python, Go, Ruby.

DevOps

Команда DevOps ни в коем случае не выступает более модным названием для админов. Вместо этого команда помогает проводить DevOps трансформацию для всех остальных команд — создает лучшие практики и приемы по запуску и эксплуатации сервисов в облачной инфраструктуре, улучшению CI/CD процесса, помогает создавать новые наиболее сложные сервисы.

Языки и технологии: AWS, Azure, Terraform, Kubernetes, Jenkins, Grafana, Ansible и многое другое.

Security

Если продукт достаточно популярен, то желающих его взломать будет достаточно. Этому активно противодействует команда безопасности — отслеживает и анализирует уязвимости в используемых библиотеках и внешних компонентах, следит за их своевременным обновлением, анализирует код, обучает разработчиков безопасным практикам, а также работает с «этичными хакерами» для обнаружения уязвимостей и слабых мест раньше, чем злоумышленники.

Licensing & Partner Services

Команда отвечает за лицензирование всех продуктов Plesk и расширений к ним. Мы готовим данные для биллинга и ловим за руку пиратов. Мы собираем телеметрию с наших продуктов во всем мире и строим отчеты для принятия стратегических решений топ-менеджментом. Мы предоставляем данные аналитикам, которые строят гипотезы и находят способы сделать продукты Plesk еще лучше и интереснее.

Для компания важна бесперебойная работа этой системы и это заложено в ее архитектуру. Иногда можно допускать down time даже для продукта Plesk, но наша система должна работать 24/7. Мы сами отвечаем за свои сервисы и сами определяем оптимальный путь их развития. Нам чужд подход «берем больше, кидаем дальше». Мы принимаем взвешенные решения, за которые будем благодарны сами себе в будущем и сами определяем процессы, по которым работаем, потому что ценим качество и работу в спокойной, сосредоточенной обстановке.

Мы используем микросервисный подход в архитектуре. Большое внимание уделяем автоматизации и тестированию. Как и в других командах, QA вовлечены в работу уже с этапа постановки задачи, помогают продумать требования и тест-кейсы, работают в паре с разработчиком по мере реализации фичи.

UI/UX Design

Отдел UI/UX дизайна занимается проектированием взаимодействия пользователей с продуктами и сервисами, разрабатываемыми в нашей компании

Основные направления работы отдела:

  • Дизайн графических пользовательских интерфейсов
  • Исследование пользователей, расположенных по всему миру
  • Юзабилити тестирование предлагаемых решений
  • Составление спецификаций и требований на разработку

Удобный, функциональный и привлекательный интерфейс уже давно стал неотъемлемой частью любого успешного продукта и может стать определяющим при его выборе. Поэтому результат работы команды дизайна особенно важен для того, чтобы наши пользователи получали пользу и удовольствие от использования наших продуктов.

В настоящее время у нас открыта вакансия на позицию UX дизайнера — присоединяйся к нашей команде!

Solus

Продукты нашей команды упрощают управление виртуальными серверами, позволяют его клиентам продавать виртуальные сервера. Продукты присоединились к семейству Plesk относительно недавно, поэтому команда очень молодая и динамичная, активно пробует новые практики и технологии.

Языки и технологии: PHP, Golang, JavaScript, TypeScript, ReactJS

Technical writing & Localization

Технические писатели отвечают за все текстовые коммуникации компании с пользователями: документацию, release notes, тексты интерфейса. Вся документация пишется сразу на английском языке, потому что английский понимает бóльшая часть наших пользователей. Хорошая документация и хорошие тексты в интерфейсе помогают пользователям быстрее осваивать наши продукты и самим решать свои задачи, а компании это позволяет тратить меньше денег на техническую поддержку.

Применяем подходы DocOps и Docs as Code. Работаем в Agile в параллели с разработкой, собираем аналитику и обратную связь от пользователей, выделяем время на обновление и улучшение существующей документации. Исходники в формате reStructuredText хранятся в Git, ревью документов происходит через пулл-реквесты в Bitbucket, сборка происходит автоматически по merge.

Переводом документации и интерфейса на остальные языки занимается отдельная команда переводчиков из штатных сотрудников и контракторов из разных стран. Мы переводим документацию на 10 языков, а интерфейс на 32 языка.

Program Managers

Plesk Program Manager — в нашем случае это Technical Product Manager в Plesk.

Product Manager — потому что занимается созданием ценности продукта, продумывает, как сделать так, чтобы пользователям было удобно, чтобы пользователей было больше. Доводилось видеть продукты, сделанные неудобно? Так вот именно Program Manager отвечает за то, чтобы продукт решал задачи пользователей наилучшим образом. Изучает потребности, формулирует решения, проверяет результат.

А Technical — потому что наша аудитория — это разработчики сайтов и системные администраторы. PM должен отлично их понимать и говорить с ними на одном языке. Nginx / PHP-FPM / MySQL / производительность / безопасность / обновления / мониторинг — вот в каких терминах видят ценность продукта наши клиенты.

Здесь слушают и спрашивают клиентов, генерируют и проверяют гипотезы, делают выводы из метрик, ищут точки роста и планируют роадмапы.

Здесь важно быть самостоятельным, иметь системное мышление, умение критически смотреть на идеи и решения, откидывать то что не работает и оставлять только то что работает.

Support

Команда Plesk Support — это, без преувеличения, лицо компании. 24 часа в сутки, 7 дней в неделю, 365 дней в году инженеры решают различные задачи связанные с работой продукта и всех сервисов, которыми управляет Plesk, гарантируя устойчивую и бесперебойную работу серверов клиентов.

Мы очень плотно взаимодействуем с департаментом разработки, выступая «голосом» клиентов, помогая улучшать и развивать продукт.

В команде более 50 инженеров, находящихся по всему миру и обеспечивающих поддержку на 6 языках: Английском, Немецком, Испанском, Португальском, Японском и Русском.

Индустрия хостинга и веб разработок постоянно развивается. Plesk предоставляет большой стек современных технологий. Решая сложные и разнообразные задачи клиентов каждый день, инженеры команды очень быстро осваивают его, становясь настоящими экспертами в области администрирования веб-серверов.

Наши традиции

  • 5 ежегодных корпоративных ивентов
  • Дни рождения сотрудников
  • Дни рождения детей и детский новый год
  • День Матери
  • Программа материальной помощи сотрудникам
Саша Редикульцев про AWS Certified Solutions Architect Professional, саппорт и QA | Plesk

Обучение и развитие

Обучение 
проф. направлений

  • Лидерство
  • Управление командой
  • Публичные выступления
  • Сертификации LPIC, 
    RedHat, Microsoft, 
    ISTQB etc.

Внутреннее 
и внешнее обучение

  • Внутренние
  • research дни
  • техтолки по пятницам
  • Внешние
  • конференции
  • митапы

Английский язык 
для решения бизнес-задач

  • Специальный проект 
    Perfectum school
  • Программа SkyEng

Бенефиты

Забота о вашем здоровье

  • Расширенная программа ДМС
  • Персональный доктор в офисе
  • Специальные программы страхования членов семей сотрудников

Поддержка активного образа жизни

  • Программа компенсаций любых занятий спортом
  • Корпоративный бассейн
  • Корпоративный футбол
  • Специальные скидки для Plesk по программе здоровья

Process

Процесс разработки Plesk основан на адаптации Agile практик. Команды широко используют Scrum подход для инкрементальной разработки и Kanban-подход для непрерывного совершенствования.

Как мы 
работаем

  • Формируем желаемый беклог релиза
  • Делаем грубую оценку (sizing)
  • Разрабатываем итерациями от 1-й до 6-ти недель*
  • Стабилизируем и тестируем продукт во всех возможных конфигурациях
  • Выпускаем публичную preview-версию продукта
  • Собираем обратную связь
  • Обеспечиваем максимальное качество и выпускаем релиз

Как обеспечиваем качество

  • Проводим ревью кода, перед попаданием в основной бранч коммит получает одобрение как минимум ещё одного разработчика
  • Осуществляем статическую проверку кода через SonarQube
  • Запускаем функциональные и юнит-тесты. Их реализует отдельная команда и собственный внутренний датацентр с пулом серверов для обслуживания инфраструктуры запуска тестов
  • Проверяем QA-инженерами

Какие инструменты используем

  • Для ведения задач и bug report’ов используем JIRA
  • В качестве системы версионирования кода используем Git
  • Внутренняя документация ведется в Confluence
  • Для коммуникаций в реальном времени используем Slack
  • Каждая команда использует свой стек технологий, подробнее здесь

* релиз-циклы отличаются между продуктами и командами — месяц, неделю, а иногда и меньше. Это определяется балансом пользовательской потребности и технической возможности. «Тяжелые» продукты требуют тщательного тестирования и пользователи не готовы часто обновляться. «Легкие» продукты существенно проще в разработке и тестировании, а также пользователи проще относятся к их обновлению.