Всем привет! Меня зовут Роман, я iOS-разработчик. Я начинал свой путь в ИТ с курсов. Помню, как собрал для одногруппников чат в Дискорде. Да, мы были конкурентами, но те, кто присоединились, в итоге выиграли, шеря знания и вместе разбирая сложные моменты из лекций. Тогда я понял: лучше кооперироваться, чем нет.
Разработчики часто жалуются, что не понимают, чем занят их коллега за соседним столом. Иногда они боятся задавать вопросы лиду. Иногда не знают никого в команде. Иногда не согласны с тем, что в команде приняли новые правила код-стайла.
Техтолк закрывает все эти вопросы. В статье я расскажу, что такое техтолк, зачем мы их запустили и какие проблемы смогли решить.
Начнём с кухни
Прежде чем перейти к техтолкам, хочу обсудить деталь, которую я часто замечал в ИТ-вакансиях. Это аналогия, на которой легко объяснить, что такое техтолки и зачем они нужны.
Кухня есть почти в каждой вакансии на любую платформу и грейд. О техтолках пишут так же часто, как про печеньки. Почему компании с завидной регулярностью упоминают кухню с кофемашиной и ништяками? Это работающий способ привлечь сотрудников?
А что, если кухня в офисе — это нечто большее?
Я понял, что кухня играет особую роль. Это место силы и социальный хаб. На кухне:
новички не стесняются задавать вопросы, а опытные сотрудники делятся знаниями и тонкостями работы;
разработчики решают проблемы и выбирают технологии для будущих проектов;
обсуждают хобби, события в жизни и свежие новости.
Всё это формирует уникальную корпоративную культуру.
Мы поняли, что нам не хватает виртуальной кухни с печеньками. Так мы решили сделать неформальный созвон команд, те самые внутренние техтолки — iOS-Talks.
Как проходят наши встречи
Техтолки появились в Альфе летом 2019 года. Конечно, в те времена они были в офлайне. Первые встречи закидывали по личкам, стараясь подстроиться под планы большинства.
Сейчас команда разрослась, распределилась по разным городам, да и тренд на всеобщую удалёнку прижился. В созвонах теперь участвуют 150+ мобильных разработчиков. По времени решили так:
Один и тот же день и час — четверг с 12 до 13.
Привычный всем слот — встреча всегда есть в календаре, но мы чередуем: одну неделю проводим ретро всех iOS-разработчиков, другую — iOS-Talks.
Программа техтолков разнообразная. Порой мы обсуждаем код-стайл или слушаем доклады про внутрибанковские или продуктовые фичи. А иногда разбиваемся на группы и просто болтаем о всяком.
Я третий ведущий iOS-Talks за 5 лет. Сейчас вся ответственность на мне: я модерирую доклады, ко мне приходят ребята с желанием выступить. Я управляю страницей в базе знаний iOS-Talks.
Случалось так, что темы не набирались. Тогда я провёл на техтолке алгоритмическую секцию. Мы вместе решали задачи и чилово провели час. На продукте крайне редко нужны сложные алгоритмы, так что это ещё один способ получать эндорфины.
Чего нет на наших техтолках
Обязаловки с включением камер. Если заставлять, люди разбегутся, так как встреча необязательная. На камерном формате Random Coffee мы говорим, что будет здорово общаться с видео, чтобы познакомиться с коллегами. Практика показала, что если кто-то с камерой, другие ребята тоже включаются.
Встреч в нерабочие часы, иначе разработчики перестанут приходить два раза в месяц. Вечером иногда можно выбраться на внешний митап, но это другой формат.
Большого количества рассылок. Например, мы не выкладываем итоги встречи. Устоялось правило — все материалы лежат в базе знаний. Правда у меня есть идея — делать публичный пост с благодарностью. Пока я благодарю спикеров в личке.
Форматы для техтолков
На техтолках каждый разработчик может свободно попробовать свои силы в публичных выступлениях, оставаясь внутри лояльного лампового комьюнити. Перечислю наши самые популярные форматы за 5 лет.
Доклады
У нас бывали очень разные темы — от «Как тупить» до доклада о взломе изолированных компьютеров. Часто мы выступаем с докладами про внутренние фичи и про то, как ими пользоваться. Видеозаписи сохраняем и формируем базу знаний, чтобы новички могли быстрее разобраться в наших технологиях.
Рабочий лайфхак — писать в личку разработчикам с вопросом, что они сделали за последнюю неделю, и предлагать выступить с этой темой на техтолке.
Дебаты разработчиков
Кто наблюдал жаркие споры в комментариях к пулл-реквесту или даже сам обсуждал постановку скобочки или отступов? Мы перенесли эти дебаты на техтолки. Теперь команды «за» и «против» приводят аргументы по своей позиции, а затем мы делаем общее голосование.
Предложения, которые одобрила команда на iOS-Talks, мы вносим в гайды, а разработчики знают об этих изменениях, так как идею мы приняли сообща. После созвона эти изменения, как и материалы с докладов, можно посмотреть в базе знаний техтолков.
Random Coffee
Иногда хочется просто пообщаться, познакомиться с командой и задать вопросы старшим коллегам. В такие моменты мы проводим Random Coffee.
Как это происходит: создаём переговорные комнаты в Zoom и запускаем рандомайзер, который распределяет по три участника в каждую комнату. Перед распределением ведущий предлагает несколько тем для старта общения, но многие не останавливаются на этом и в комнатах находят, о чём ещё поболтать.
Не всегда это рабочие вопросы, иногда что-то совсем далёкое от разработки. На последнем созвоне мы, помимо основных тем, обсудили с ребятами процессы влития кода в наши репозитории и поговорили про классные кафе национальной кухни в Москве. Так мы лучше узнаём друг друга, делимся впечатлениями и интересными местами, получаем ответы на вопросы, которые стеснялись задать лиду.
Код-ревью шоу
В этой рубрике разработчик выбирает случайный (или неслучайный) пулл-реквест и проводит ревью, объясняя свои действия. Для выступления необязательно обладать большим опытом, достаточно только желания. В остальном помогут другие разработчики.
У нас довольно ламповое комьюнити. Даже если ревьюер сделает что-то не так или о чём-то забудет, его мягко скорректируют во время ответов на вопросы.
Чтобы рубрика не превращалась в полифонию голосов, мы ввели регламент, похожий на дебаты. Есть блок ревью и отдельный блок ответов на вопросы. Блоки чередуются и повторяются. Так у нас получается код-ревью шоу, с которым мы улучшаем навык код-ревью и показываем, что ревьюить не так уж страшно.
Квиз «Своя игра»
Мы придумываем вопросы для около-ИТ викторины. Однажды участникам приходилось вспоминать ведущих синков и ретро, которые были накануне. Получилось довольно забавно. Сам ведущий ретро тоже проходил игру и чуть призадумался, прежде чем вспомнить, что его имя и есть правильный ответ.
Также мы угадывали мемы и освежали в памяти редкие ситуации из наших гайдов — вместе посмеялись и заодно прокачали знание рабочих материалов.
Коллаборация с соседней командой
iOS-Talks иногда выходил за пределы iOS и превращался в Mobile-Talks. Мы объединялись с Андроидом в большую встречу, где были общие для обеих платформ темы. Был доклад про инструменты доступности для слабовидящих и софтовая тема о том, что мы испытываем, когда сталкиваемся с новой задачей и как оцениваем себя.
Мини-презентация проектов
В огромном приложении банка используется масса технологий, в которых разработчик вряд ли сможет разобраться в одиночку, к тому же у нас есть самописный софт. Например, целых четыре фреймворка, чтобы подстраивать экраны под изменения бэкенда.
Несколько команд, помимо продуктовых задач, развивают внутренние технологии, технические компетенции — как мы их называем. Разработчику, который недавно в банке, непросто сориентироваться в этих компетенциях.
На iOS-Talks приходят техлиды с мини-презентациями о том, чем они занимаются и какие у них дальше планы. Новичок может осмотреться и выбрать подходящую ему компетенцию, а техлиды дополнительно пиарятся и привлекают дополнительные «руки» на проект.
Что хорошего (и не очень) в техтолках
Поговорим о плюсах таких встреч:
Техтолки — это и есть iOS-комьюнити. Мы часто упоминаем о них на собеседованиях. Да, работу у нас вряд ли выбирают из-за техтолков, но это многое говорит об отношении к сотрудникам и об атмосфере в компании.
Внутренние выступления в дальнейшем могут оформляться в статьи на Хабре и доклады на митапах.
Созвоны команды — это стартовая площадка для выступлений.
Если поискать ложку дёгтя, то:
У техтолков есть стандартные боли сообществ: нужен лидер и ядро, правила, по которым живут встречи, нужно расширять сообщество: предлагать новые форматы, вовлекать участников и спикеров. Запуститься один раз и забыть нельзя.
Дополнительная занятость разработчиков: 2 часа в месяц мы все уделяем время созвону. Несколько спикеров будут готовить слайды, репетировать и улучшать доклад. На длинной дистанции это развитие инженерной культуры, но на короткой — минус время в спринте.
Лидер должен постоянно уделять время техтолкам, как и любому долгоиграющему проекту. В месяц у меня уходит от 1 рабочего дня чистого времени. Если готовить код-ревью шоу или алгоритмическую секцию, нужно больше часов.
Вы запускаете техтолки у себя: что учесть
Вот что я бы рекомендовал тем, кто хочет сделать такой же формат встреч:
Задаться вопросом — зачем техтолки именно вашей команде? Что болит у участников, кого вы хотите вовлечь и что именно обсуждать?
Найти ведущего, подумать, как сформировать ядро сообщества из техлидов или просто активных ребят. Мемы и шутки в чате техтолка очень поднимают дух, проверено.
Собрать адженду на первые 2–3 встречи. Обязательно добавить фан к хардовым темам.
Вспомнить чаты и каналы, где общаются разработчики. Мы агитируем искренне, думаем, чем привлечь ребят, у которых и так много созвонов.
Постоянно развивать встречи — приглашать гостей, продумывать коллаборации с соседними командами, тематические созвоны, приглядываться к новым форматам на Ютубе и митапах.
Возможно, стоит вводить метрики. Если на встречи ходит 2–3 человека из 20, нужно что-то менять.
Так выглядит наша онлайн-кухня, где мы знакомимся, сближаемся и обсуждаем наболевшее с разработчиками. Делитесь, есть ли техтолки в вашей компании. Также буду благодарен, если подкинете идеи форматов для наших встреч.