Как передать должность технического директора Медузы

Наконец-то объяснение, чем, собственно занимается технический директор!

Важное замечание: я передавал дела Боре Горячеву — своему заместителю. Боря разбирается в некоторых технических аспектах Медузы лучше меня и хорошо знаком с командой. В случае нового человека, акценты были бы расставлены по-другому.

Передачу дел я рассматривал как ещё один проект, пусть и немного необычный. Участники: я, мой заместитель (новый техдир), разработка, руководство, редакция. Цель: перенести все «секретные знания» из моей головы в головы коллег и/или во внешние системы хранения; не нарушить никаких критичных рабочих процессов, особенно, затрагивающих внешние обязательства.

  1. Перечислить, какие зоны ответственности у меня были и что входит в каждую из них;
  2. Совместно с Борей решить, кому и как мы передаем каждый пункт из списка;
  3. Передача (profit).
  1. Техническая команда — отношения с каждым разработчиком, их мотивации, проблемы, ожидания и обещания. То, что обычно происходит между руководителем и подчиненным и часто не переносится в long term storage;
  2. Информационная безопасность: стратегия, архитектура, бэкапы, подрядчики, потенциальные атаки и слабые места, требующие внимания;
  3. Архитектура: этот пункт у нас занял меньше всего времени — Боря и так придумал большую её часть;
  4. Текущие задачи: проекты, не стоящие в общей agenda, идеи проектов, переговоры in progress или внешние дедлайны, которые не стоит пропускать;
  5. Digital assets и бюджет: чем владеет компания. Доменные имена, серверы-хостинги, сервисы и данные в этих сервисах.
  6. Контрагенты: этим корявым словом я обозначаю наших любимых партнеров и их «point of contact» для Медузы. Это люди, к которым мы обращаемся, если вдруг что-то идет не так в этом «переплетенном мире».

Одна из важных задач технического директора — повышение bus factor. Так называют число членов команды, которых может сбить автобус одновременно, без катастрофических последствий для бизнеса. Чем число выше — тем в большей безопасности компания. Если уход технического директора разрушает все процессы надолго — что-то в работе технического отдела было устроено не так.

Ну, довольно теории, давайте смотреть скриншоты, как это было.

Во первых, я рассказал о своем уходе технической команде максимально рано. Нас всего 10 человек и с каждым из разработчиков у меня были личные отношения. Уйти по-английски я считаю не взрослым поведением. Я попытался передать максимум допустимой информации Боре, чтобы ему было проще строить свои отношения.

Внутреннее письмо технической команде не отличалось принципиально от публичного объявления. Чуть больше эмоций и мыслей про внутреннюю кухню.

Административное: зп и логи её обсуждений хранятся папочке на компе техдира, отпуска отмечены в teamweek серым цветом (вот это не особо удобно).

Я не знаю, как у других технических директоров, у меня в голове всегда есть «катастрофический сценарий».

Катастрофический сценарий — то, что с моей компанией может сделать достаточно мотивированный хакер, обладающий моими знаниями о системе и не ограниченный во времени. Ответ — pretty much anything. Информационная безопасность — вопрос не только компетентности, но ещё двух важных факторов: какой уровень неудобства ради безопасности ты готов терпеть и то, сколько денег ты готов на неё потратить. Нужна идеальная безопасность — ложись в цинковый гроб и езжай в Fort Nox. Редко кто так делает. Тем не менее, в наших силах сделать атаку достаточно дорогой, чтобы не нашлось желающих тратить серьезные средства.

Я знаю слабые звенья в защите и постоянно думаю, как бы их улучшить. В этом пункте я попытался передать свои знания Борису. Вместо жирных технических подробностей (а то получится инструкция «как сломать Медузу»), ниже представлены все 3 архетипа, которым фоторедакторы планеты Земля иллюстрируют «информационную безопасность»:

Некоторое время назад мы с Борей составили вот такую схему

В правом нижнем углу — список того, в каких платформах можно читать, смотреть и слушать Медузу.

Наверху — список основных платформ и того, от каких систем Медузы они зависят.

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

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

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

Я вел свои текущие задачи в trello, в скрытой доске «техдир». Тут были и срочные штуки и долгосрочные обязательства, так что я просто расшарил её на Борю.

Конечно же, пришлось привести trello-board в порядок и пометить всё меточками, рассортировать по столбцам.

После этой подготовки мы с Борей сели и прошлись по каждой карточке. Я рассказал, что имел ввиду в каждой карточке, Боря позадавал вопросов. Это всё заняло часов 5 чистого времени (два дня с перерывами).

Тут меня сильно выручил любимый Airtable. Таблица «сервисы» содержит все сервисы, к которым у нас есть логин/пароль. Начиная от банального суперадминского доступа к gSuite (почта и календари) и заканчивая богом забытыми телеграм-ботами.

на скриншоте не видно, но там 91 строка

В столбце «critical», отмечены сервисы, критичные для работы Медузы. Есть столбец «категория», для того, чтобы можно было составить в голове ментальную модель. Примеры категорий: хостинг, backoffice, социальные сети, подкасты, статистика-аналитика, апсторы и почтовые рассылки.

Исходные коды у нас все в github и в bitbucket, так что их передача равнозначна суперадминскому доступу к нашим организациям в соответсвующих сервисах.

Бюджет. Технический бюджет верстается в google spreadsheet документе. Внутри документа есть 8 вкладок, разберем их по-отдельности:

почтовые рассылки — самый ад. Отдельно считаем «Вечернюю Медузу» — по количеству подписчиков, отдельно — продуктовую рассылку (оплата за факт отправки письма), у MC хитрая система рассчета стоимости, получается большая таблица
хостинг — самая большая строка расходов, отдельно считаются серверы для бэкендов и edge для CDN
лицензии! мы все любим лицензии на скетч и на adobe CC 👹
ну и наконец это всё сводится к 7 сухим строчкам и сумме💰

В таблице «сервисы» есть столбец «контактное лицо», связанная с отдельной таблицей «контрагентов». Получается аккуратная табличка из людей, контактных сведений и того, чем они могут быть полезны. В этой таблице добавился столбец «передал». Там ставится галочка, если я сделал intro Бориса. Много типовых писем и несколько сообщений во Вконтакте :)

Вывод

Как всегда, почти любая большая задача — это чеклисты (много чеклистов) в процессе и магия только в конечном результате.

CTO at RAWG.io, ex-CTO at Meduza.io

CTO at RAWG.io, ex-CTO at Meduza.io