В 2018 году я начал свою карьеру в Kinsta в качестве инженера поддержки. Тогда мы были небольшой компанией, всего около пятидесяти человек. Когда я впервые присоединился к команде и начал помогать клиентам, я помню, что меня очень впечатлил уровень детализации внутренней документации, которая была у нас в Kinsta. По сей день мы поддерживаем тот же уровень документации, чтобы помочь нашим клиентам.

Внутренняя документация

Хотя внутренняя документация была отличной, инструментов и средств автоматизации было не так много. И только после десятой установки Redis или, возможно, настройки Ioncube, я решил взять дело в свои руки.

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

Я начал писать Bash-скрипты для каждой задачи в рамках проекта, чтобы помочь мне улучшить собственную работу и позволить мне многократно и без ошибок выполнять эти методические задачи. Со временем другие члены команды увидели, что я делаю, и начали использовать скрипты. То, что раньше занимало 20 минут, теперь занимает считанные секунды, при этом вероятность человеческой ошибки снижается.

И только когда я обратился к Тому Сепперу, нашему тогдашнему директору по работе с клиентами и директору службы поддержки, с идеей превратить эти сценарии в более крупный инструмент, который был бы доступен каждому, все начало обретать форму.

Инструмент Кинста

Я переписал сценарии, написанные на Bash, преобразовав их в PHP, чтобы сделать их более универсальными, и таким образом был создан инструмент Kinsta. Инструмент Kinsta до сих пор используется нашей службой поддержки и имеет множество средств автоматизации для таких задач, как сканирование вредоносных программ, установка расширений PHP или настройка Redis.

Инструмент Kinsta остается ценным инструментом для нашей команды, поскольку он заполняет пробелы, когда функции могут отсутствовать на панели управления MyKinsta. Например, запрос, который мы часто получаем от клиентов, — вернуть сайт в состояние WordPress по умолчанию. Пока ты может сделайте это в MyKinsta, для этого потребуется удалить сайт и создать его заново.

Чтобы упростить этот процесс для клиентов, обратившихся за помощью, я добавил в инструмент Kinsta функцию, которая использует команды WP-CLI и MySQL для очистки базы данных, удаления файлов и переустановки последней версии WordPress с помощью одной команды. нажатие кнопки. Действие в общей сложности занимает менее 5 секунд. Если бы нам пришлось повторить шаги вручную, это могло бы занять от пяти до десяти минут, в зависимости от обстоятельств.

Расширение Chrome

Другие предприняли аналогичные реализации. До меня Торик Фирдаус, ныне член нашей команды по маркетинговым технологиям, но ранее работавший инженером службы поддержки, разработал расширение Chrome. Расширение использовалось внутри компании для отображения заголовков веб-сайта и определения того, размещено ли оно на Kinsta или нет.

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

Отличным примером этого является то, как расширение автоматически скрывает ненадежные URL-адреса, когда наша команда вводит ответы в Intercom. Это добавляет дополнительный уровень безопасности, гарантируя, что мы не отправим кому-либо вредоносную кликабельную ссылку.

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

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

Система маршрутизации чата

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

В ответ на это я написал собственный код маршрутизации на PHP, который напрямую взаимодействует с API Intercom и веб-перехватчиками для получения и ответа на действия, выполняемые непосредственно из Intercom. В результате нам удалось стабилизировать распределение разговоров между инженерами службы поддержки.

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

Например, обсуждение DNS обычно считается менее сложным, чем обсуждение обратного прокси. Следовательно, диалогу DNS присваивается меньший вес по сравнению с обсуждением обратного прокси.

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

Двигаться вперед

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

Каждая система нуждается в обновлении и обслуживании. Это продолжало отнимать больше времени, чем мы выделили. Все это время я занимал должность руководителя службы поддержки, а затем и директора службы технической поддержки, что является моей нынешней должностью.

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

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

Краткое содержание

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

Эффективность и упрощение работы были моими приоритетами во время моего пребывания в Kinsta, и я твердо верю, что многие команды могут извлечь выгоду из своих собственных форм инструментов и автоматизации.

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