Как тимлиду поддерживать технические скилы

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

Я склонен утверждать, что тимлид без технических навыков выглядит крайне уныло. Любой технический руководитель должен быть техничен 🙂

Как я рассказал ранее, код я сейчас не пишу. Как же я удерживаю себя от превращения в “email менеджера”?

1. Я занимаюсь проработкой архитектуры. В PT на мне была функция проектирования архитектуры решения. Я прорабатывал сам или в команде большие архитектурные решения. Сейчас я сам проектировать не успеваю, но вхожу в пул архитектурных ревьюеров отдела и периодически провожу ревью решений, которые делают коллеги.

2. Участвую в code review. Код я не пишу, но периодически читаю его.

3. Провожу технические собесы. Собеседования позволяют поддерживать минимальный базовый уровень технологий: сложно проверять знания когда сам не знаешь. А еще можно изучить какие-то новые технологии или языки, чтобы проводить собесы по ним. Я веду собесы по C# и выучил Go, чтобы вести секции по нему.

4. Я постоянно читаю книги или статьи (что-то интересно приношу вам). Так я изучаю новые и незнакомые вещи. Стараюсь попробовать прочитанное на практике. Когда-то я изучал внутренности рантайма .net, перекопал его исходники и написал расширения для windbg. Сейчас я иногда решаю задачи по машинному обучению.

5. Делаю тулинг и прототипы. Иногда пишу внутренние инструменты для автоматизации рутинных задач. Так недавно сделал инструмент расчета статистики процессных метрик по процессам команды.

Что сам еще не делал, но тоже может помочь: проводить внутренние обучения, вести всякие клубы по интересам (книжные клубы, техновстречи), вести open source проектов.

А что делаете вы, чтобы поддерживать себя в форме?