Ходите в отпуск - точите свой топор!
Спасибо моему бывшему руководителю, который познакомил меня с притчей о двух дровосеках. Мысль, заложенная в притче, звучит супербанально, и сначала я думал поискать какие-то научные статьи и/или исследования с понятными метриками, описывающими эффективность периодического отдыха для последующей работы, но потом вспомнил про книжку Дорофеева про мыслетопливо. Книжка не новая, читается легко. После её прочтения я, например, взял за привычку регулярно использовать технику пустого инбокса и стараюсь разгребать почту два раза в день.
Субъективно, на мой взгляд, это всё это имеет смысл для руководящих позиций, так как когда ты просто линейный инженер, пишешь код по 3-4 часа в день и периодически ходишь на разные agile-церемонии, то это не столь актуально, но актуально. Когда же твой контекст требует вмещения разных тем, вопросов и болей, превышающих число Миллера, то мыслетопливо стремительно заканчивается, и периодический поход в отпуск может быть единственным источником его восполнения.
Если лень читать, то вот выступление Дорофеева на HighLoad.
Спасибо моему бывшему руководителю, который познакомил меня с притчей о двух дровосеках. Мысль, заложенная в притче, звучит супербанально, и сначала я думал поискать какие-то научные статьи и/или исследования с понятными метриками, описывающими эффективность периодического отдыха для последующей работы, но потом вспомнил про книжку Дорофеева про мыслетопливо. Книжка не новая, читается легко. После её прочтения я, например, взял за привычку регулярно использовать технику пустого инбокса и стараюсь разгребать почту два раза в день.
Субъективно, на мой взгляд, это всё это имеет смысл для руководящих позиций, так как когда ты просто линейный инженер, пишешь код по 3-4 часа в день и периодически ходишь на разные agile-церемонии, то это не столь актуально, но актуально. Когда же твой контекст требует вмещения разных тем, вопросов и болей, превышающих число Миллера, то мыслетопливо стремительно заканчивается, и периодический поход в отпуск может быть единственным источником его восполнения.
Если лень читать, то вот выступление Дорофеева на HighLoad.
🔥9👍7❤4🤓1
Пост про вторичность инструмента (нет)
Фраза "инструмент вторичен" относится к философии или идеологии, согласно которой основной фокус должен быть на концепции, идее или конечной цели, а не исключительно на средствах или инструментах, используемых для достижения этой цели.
Ранее, как и сейчас, категорически не могу согласиться с данной концепцией. Можно сколько угодно утверждать, что инструмент не важен, но когда тебе надо вырыть яму, а в качестве инструмента ты выбираешь молоток, а не лопату, то хочется лишь пожелать тебе удачи.
Можно ли сказать, что инструмент первичен? Тоже нет. Я бы сказал, что инструмент не первичен и не вторичен. Выбор инструмента идет параллельно с постановкой цели. Возможно, надо определиться с некой этапностью, где этапом номер 0 будет стоять задача выбора правильного инструмента для достижения следующей цели. Иными словами, прежде чем начать копать яму, надо понять, чем и как вы будете ее копать: руками, лопатой, экскаватором.
Фраза "инструмент вторичен" относится к философии или идеологии, согласно которой основной фокус должен быть на концепции, идее или конечной цели, а не исключительно на средствах или инструментах, используемых для достижения этой цели.
Ранее, как и сейчас, категорически не могу согласиться с данной концепцией. Можно сколько угодно утверждать, что инструмент не важен, но когда тебе надо вырыть яму, а в качестве инструмента ты выбираешь молоток, а не лопату, то хочется лишь пожелать тебе удачи.
Можно ли сказать, что инструмент первичен? Тоже нет. Я бы сказал, что инструмент не первичен и не вторичен. Выбор инструмента идет параллельно с постановкой цели. Возможно, надо определиться с некой этапностью, где этапом номер 0 будет стоять задача выбора правильного инструмента для достижения следующей цели. Иными словами, прежде чем начать копать яму, надо понять, чем и как вы будете ее копать: руками, лопатой, экскаватором.
👍9🔥3👏2
Бомбящий программист
SaintTeamleadConf2024, это было круто.
Выложили запись моего доклада.
YouTube
Инженерная культура. Что это и почему она важна? / Антон Огородников (Mаgnit.Tech)
Приглашаем на конференцию Saint TeamLead Conf 2025, которая пройдет 26 и 27 июня 2025 в Санкт-Петербурге.
https://teamleadconf.ru/spb/2025
Подать доклад: https://tlconf.info/
________
Единственная профессиональная конференция только для тимлидов Saint…
https://teamleadconf.ru/spb/2025
Подать доклад: https://tlconf.info/
________
Единственная профессиональная конференция только для тимлидов Saint…
🔥11👍5❤1👏1
Про платформенные команды.
За 2 года, пока я был руководителем платформы в Магнит, у меня 3 раза менялось представление о том, чем должна и не должна заниматься платформа в большой компании. Понятно, что есть TeamTopologies, и в ней все написано, но, как часто бывает, применение каких-то академических знаний разбивается о суровые реалии конкретной компании и её процессов.
Итог. Добавил в playbook описание того, как я вижу платформенные команды, ее виды и задачи.
#playbook
За 2 года, пока я был руководителем платформы в Магнит, у меня 3 раза менялось представление о том, чем должна и не должна заниматься платформа в большой компании. Понятно, что есть TeamTopologies, и в ней все написано, но, как часто бывает, применение каких-то академических знаний разбивается о суровые реалии конкретной компании и её процессов.
Итог. Добавил в playbook описание того, как я вижу платформенные команды, ее виды и задачи.
#playbook
👍5🔥5❤3🤔1
Про парадокс opensource vs innersource.
На прошлом и текущем месте работы, да и на собственном опыте, заметил интересный парадокс. Как правило, все инженеры знают и понимают общую пользу и благо от практики opensource. Многие крупные проекты живут исключительно благодаря сообществу, которое готово принимать свежие идеи и новых людей. Я думаю, что многие из нас, может, и не контрибьютили в opensource, но очень хотели этого и были к этому готовы. Но почему же, когда речь идет про innersource внутри компании, то все переворачивается с ног на голову, начинается дележка "мое" vs "чужое" и т.д., и т.п. Даже когда идет речь про две команды, которые работают очень плотно друг с другом, речь про innersource встает в самый последний момент, когда других вариантов уже нет, а сделать очень надо. Откуда это? Почему написать код в чужом внешнем репозитории ментально проще, чем в соседнем репозитории соседней команды, с тимлидом которой ты ходишь ежедневно на обед?
У меня нет однозначного ответа на этот вопрос, но есть одна история. Когда я работал разработчиком в компании "Островок", мой домен партнерских интеграций был исторически разбит на два куска. Первый был сервисом партнеров, а вторым была логика реализованная внутри сервиса заказов. За этот сервис отвечала другая команда, но мне иногда приходилось вносить туда изменения, так как логика партнерских заказов была реализована именно там. Я думаю, что в то время термин "innersource" или не существовал, или о нем никто не знал, но фактически это был он самый.Однажды я вмерджил нерабочий код в этот сервис заказов и ушел домой, в результате чего у команды заказов оказался сломанный мастер. В целом это обычная рабочая ситуация, но, думаю, именно поэтому многие опасаются innersource: никто не хочет выглядеть стыдно в глазах своих коллег.
Я был и остаюсь ярым амбассадором данной практики. В свое время в Магните нам, как мне кажется, удалось ее хорошо описать. Делюсь этим документом с вами.
На прошлом и текущем месте работы, да и на собственном опыте, заметил интересный парадокс. Как правило, все инженеры знают и понимают общую пользу и благо от практики opensource. Многие крупные проекты живут исключительно благодаря сообществу, которое готово принимать свежие идеи и новых людей. Я думаю, что многие из нас, может, и не контрибьютили в opensource, но очень хотели этого и были к этому готовы. Но почему же, когда речь идет про innersource внутри компании, то все переворачивается с ног на голову, начинается дележка "мое" vs "чужое" и т.д., и т.п. Даже когда идет речь про две команды, которые работают очень плотно друг с другом, речь про innersource встает в самый последний момент, когда других вариантов уже нет, а сделать очень надо. Откуда это? Почему написать код в чужом внешнем репозитории ментально проще, чем в соседнем репозитории соседней команды, с тимлидом которой ты ходишь ежедневно на обед?
У меня нет однозначного ответа на этот вопрос, но есть одна история. Когда я работал разработчиком в компании "Островок", мой домен партнерских интеграций был исторически разбит на два куска. Первый был сервисом партнеров, а вторым была логика реализованная внутри сервиса заказов. За этот сервис отвечала другая команда, но мне иногда приходилось вносить туда изменения, так как логика партнерских заказов была реализована именно там. Я думаю, что в то время термин "innersource" или не существовал, или о нем никто не знал, но фактически это был он самый.Однажды я вмерджил нерабочий код в этот сервис заказов и ушел домой, в результате чего у команды заказов оказался сломанный мастер. В целом это обычная рабочая ситуация, но, думаю, именно поэтому многие опасаются innersource: никто не хочет выглядеть стыдно в глазах своих коллег.
Я был и остаюсь ярым амбассадором данной практики. В свое время в Магните нам, как мне кажется, удалось ее хорошо описать. Делюсь этим документом с вами.
👍9🔥3
Ностальгический пост о прошлом и мысли о будущем.
10 лет назад я, будучи обычным разработчиком, пришел в "Островок" делать backend для B2B-направления. Тогда еще особо никто не умел в скрам, а все просто писали код, роль тимлида только зарождалась, а в продукте шли споры о том, как правильно называть владельца продукта: Product Owner или Product Manager. Это были дикие времена, и мы выживали как могли.
Но было классно! Можно было просто подойти к кому угодно в офисе и что-то у него спросить. Можно было после работы пойти с командой в бар, а все встречи проходили в переговорках или рядом с чьим-то рабочим столом, и не нужно было беспокоиться о камере, качестве микрофона, шаринге экрана и актуализации своего календаря. Сейчас, после ковида и геополитических изменений, это звучит как какой-то "каменный век", но это был чертовски приятный "век". Никто не заботился о метриках эффективности, так как их никто не умел считать. Никто не думал об импортозамещении, так как не было повода и смысла об этом думать. Никто не спорил, какой корпоративный мессенджер лучше, потому что ни Slack, ни MS Teams еще не вышли в свет. Никто не ломал голову о выборе облачного провайдера, так как из нормальных был только AWS.
Что будет еще через 10 лет? Все перейдут с Jira на какой-нибудь TeamStorm? gitverse заменит GitHub? А backend будем писать на Rust? Или же профессия разработчика вообще умрет и останутся операторы AI? Поглядим!
Кстати, частично эту тему затронули на последнем TechLeadConf в рамках доклада Как техлиду выжать максимум из ChatGPT.
10 лет назад я, будучи обычным разработчиком, пришел в "Островок" делать backend для B2B-направления. Тогда еще особо никто не умел в скрам, а все просто писали код, роль тимлида только зарождалась, а в продукте шли споры о том, как правильно называть владельца продукта: Product Owner или Product Manager. Это были дикие времена, и мы выживали как могли.
Но было классно! Можно было просто подойти к кому угодно в офисе и что-то у него спросить. Можно было после работы пойти с командой в бар, а все встречи проходили в переговорках или рядом с чьим-то рабочим столом, и не нужно было беспокоиться о камере, качестве микрофона, шаринге экрана и актуализации своего календаря. Сейчас, после ковида и геополитических изменений, это звучит как какой-то "каменный век", но это был чертовски приятный "век". Никто не заботился о метриках эффективности, так как их никто не умел считать. Никто не думал об импортозамещении, так как не было повода и смысла об этом думать. Никто не спорил, какой корпоративный мессенджер лучше, потому что ни Slack, ни MS Teams еще не вышли в свет. Никто не ломал голову о выборе облачного провайдера, так как из нормальных был только AWS.
Что будет еще через 10 лет? Все перейдут с Jira на какой-нибудь TeamStorm? gitverse заменит GitHub? А backend будем писать на Rust? Или же профессия разработчика вообще умрет и останутся операторы AI? Поглядим!
Кстати, частично эту тему затронули на последнем TechLeadConf в рамках доклада Как техлиду выжать максимум из ChatGPT.
🔥12❤5👍5
Пост размышления о лидерстве.
Лидерство — это когда где-то внутри есть большое НАДО и яркое ХОЧУ.
НАДО — это тактика. НАДО говорит тебе, что ещё нужно сделать вот это, это и это, чтобы тактически решить проблему, исправить ситуацию, получить краткосрочную победу.
ХОЧУ — это стратегия. ХОЧУ смотрит гораздо дальше и шире, чем НАДО. ХОЧУ знает, когда что-то нужно захотеть, чтобы либо быстро сконвертировать ХОЧУ в НАДО, либо наоборот, погасить одно из текущих НАДО ради какого-то другого НАДО.
Пример.
Я знаю, что мне сейчас НАДО инвестировать своё время в подготовку к высокому сезону. Моё НАДО говорит мне: «Антон, иди разберись, как обстоят дела в командах по подготовке к сезону, проверь, что все всё сделали. Проконтролируй! Проверь! Помикроменеджь!»
При этом есть ХОЧУ. ХОЧУ хочет, чтобы я выстраивал культуру, процессы и роли в командах, чтобы достичь такого уровня зрелости и осознанности, при котором о подготовке к сезону не нужно было бы говорить, чтобы это было базовой гигиеной.
Лидер умеет отличать ХОЧУ от НАДО и НАДО от ХОЧУ. Лидер умеет приоритизировать два и более НАДО между собой. Лидер умеет прогнозировать, когда каким ХОЧУ пора начинать заниматься. Лидер готов инвестировать своё личное время в реализацию своих ХОЧУ.
P.S.: данный пост написан под влиянием яркого ХОЧУ =)
Лидерство — это когда где-то внутри есть большое НАДО и яркое ХОЧУ.
НАДО — это тактика. НАДО говорит тебе, что ещё нужно сделать вот это, это и это, чтобы тактически решить проблему, исправить ситуацию, получить краткосрочную победу.
ХОЧУ — это стратегия. ХОЧУ смотрит гораздо дальше и шире, чем НАДО. ХОЧУ знает, когда что-то нужно захотеть, чтобы либо быстро сконвертировать ХОЧУ в НАДО, либо наоборот, погасить одно из текущих НАДО ради какого-то другого НАДО.
Пример.
Я знаю, что мне сейчас НАДО инвестировать своё время в подготовку к высокому сезону. Моё НАДО говорит мне: «Антон, иди разберись, как обстоят дела в командах по подготовке к сезону, проверь, что все всё сделали. Проконтролируй! Проверь! Помикроменеджь!»
При этом есть ХОЧУ. ХОЧУ хочет, чтобы я выстраивал культуру, процессы и роли в командах, чтобы достичь такого уровня зрелости и осознанности, при котором о подготовке к сезону не нужно было бы говорить, чтобы это было базовой гигиеной.
Лидер умеет отличать ХОЧУ от НАДО и НАДО от ХОЧУ. Лидер умеет приоритизировать два и более НАДО между собой. Лидер умеет прогнозировать, когда каким ХОЧУ пора начинать заниматься. Лидер готов инвестировать своё личное время в реализацию своих ХОЧУ.
P.S.: данный пост написан под влиянием яркого ХОЧУ =)
👍8❤6🔥5👏3
Я к своему стыду, даже когда был разработчиком, не мог похвастаться высоким уровнем знаний в Git.
Не потому что мне было лень это изучать, я просто искренне не понимал, зачем нужны все эти rebase, revoke и прочие непонятные команды, когда фактически все, что мне нужно, это:
- git checkout -b
- git push
- git pull
- влить изменения (merge в интерфейсе gitlab)
Крайне-крайне редко я мог воспользоваться cherry-pick и diff/apply.
Всё. Я никогда не понимал, зачем нужны dev-ветки, если всё, что мне нужно, — это отвести ветку от master, а потом вмержить её в master.
Только спустя время я понял, что на старте своей карьеры более опытный разработчик, который менторил меня, сразу заложил в мою голову принципы TBD, а не GitFlow. Я и по сей день являюсь большим фанатом принципов TBD и не понимаю, зачем современные разработчики используют GitFlow, кроме мобильной разработки.
На последнем TLConf был, на мой взгляд, эталонный доклад про TBD. Ничего аналогичного на просторах Рунета в видеоформате нет. Автору респект. Максимально рекомендую всем!
P.S.: этот доклад получил самую высокую оценку среди докладов ветки TechLead
Не потому что мне было лень это изучать, я просто искренне не понимал, зачем нужны все эти rebase, revoke и прочие непонятные команды, когда фактически все, что мне нужно, это:
- git checkout -b
- git push
- git pull
- влить изменения (merge в интерфейсе gitlab)
Крайне-крайне редко я мог воспользоваться cherry-pick и diff/apply.
Всё. Я никогда не понимал, зачем нужны dev-ветки, если всё, что мне нужно, — это отвести ветку от master, а потом вмержить её в master.
Только спустя время я понял, что на старте своей карьеры более опытный разработчик, который менторил меня, сразу заложил в мою голову принципы TBD, а не GitFlow. Я и по сей день являюсь большим фанатом принципов TBD и не понимаю, зачем современные разработчики используют GitFlow, кроме мобильной разработки.
На последнем TLConf был, на мой взгляд, эталонный доклад про TBD. Ничего аналогичного на просторах Рунета в видеоформате нет. Автору респект. Максимально рекомендую всем!
P.S.: этот доклад получил самую высокую оценку среди докладов ветки TechLead
👍10❤2🔥1👏1
Пост про использование консоли.
Я четко помню тот момент, когда я, еще будучи в вузе, перешел с Windows на Ubuntu. Момент я помню, но что послужило причиной этому - уже нет. То ли потому, что мне надо было что-то запускать из-под Unix, то ли просто потому, что все окружение вокруг работало под Unix-системами. Не суть. Суть в том, что я четко помню тот восторг, который я ощутил, когда смог пользоваться нормальной консолью. А tiling window manager типа awesome, ммм, сказка. Конечно, уже потом я перешел на Mac, так как консоль - это, конечно, хорошо, но вот собирать драйвера и разбираться с прочими приколами дистрибутивов Linux желания не было.
К чему это я? К тому, что удивлен, насколько современное молодое поколение разработчиков то ли не умеет пользоваться консолью, то ли она им просто не нужна. Вокруг одни интерфейсы типа продуктов JetBrains, а я как дурачок радуюсь тому, что открыл для себя консоль нового поколения Warp, которая собрала в себе уже из коробки все нужные мне плагины.
Раньше, при собеседовании разработчиков, я приятно удивлялся, что оставались еще те, кто умеет работать с vim. Видимо, через какое-то время можно будет удивляться тем, кто все еще умеет в grep / awk / cat в командной строке.
Кстати. Как выйти из vim? =)
Я четко помню тот момент, когда я, еще будучи в вузе, перешел с Windows на Ubuntu. Момент я помню, но что послужило причиной этому - уже нет. То ли потому, что мне надо было что-то запускать из-под Unix, то ли просто потому, что все окружение вокруг работало под Unix-системами. Не суть. Суть в том, что я четко помню тот восторг, который я ощутил, когда смог пользоваться нормальной консолью. А tiling window manager типа awesome, ммм, сказка. Конечно, уже потом я перешел на Mac, так как консоль - это, конечно, хорошо, но вот собирать драйвера и разбираться с прочими приколами дистрибутивов Linux желания не было.
К чему это я? К тому, что удивлен, насколько современное молодое поколение разработчиков то ли не умеет пользоваться консолью, то ли она им просто не нужна. Вокруг одни интерфейсы типа продуктов JetBrains, а я как дурачок радуюсь тому, что открыл для себя консоль нового поколения Warp, которая собрала в себе уже из коробки все нужные мне плагины.
Раньше, при собеседовании разработчиков, я приятно удивлялся, что оставались еще те, кто умеет работать с vim. Видимо, через какое-то время можно будет удивляться тем, кто все еще умеет в grep / awk / cat в командной строке.
Кстати. Как выйти из vim? =)
🔥4👍3👏2
Про визуализацию графиков отпусков.
За все время работы в разных компаниях я нигде не видел удобного и наглядного инструмента для визуализации отпусков и dayoff'ов сотрудников команды/отдела/департамента. Никакие внутренние самописные интранеты, ни СБИС, ни VKDoc не могут предоставить мне простейшую возможность увидеть график отпусков разных сотрудников в виде календаря с разбивкой по дням, неделям и месяцам, чтобы найти какие-либо пересечения.
Например, мы запускаем крупный проект, в котором участвуют 5 и более команд, и я хочу иметь возможность увидеть, кто когда в этих командах на текущий момент запланировал отпуска, как они пересекаются между собой, и вывести это в условную Grafan'у, где я могу под разными углами и интервалами времени посмотреть пересечения отпусков разных сотрудников этих команд в разрезе стеков разработки, тестирования, менеджмента и т.д. и т.п.
Вроде бы простейшая задача, но никакой инструмент на рынке сейчас такую проблему не решает. Или я такого пока не видел.
За все время работы в разных компаниях я нигде не видел удобного и наглядного инструмента для визуализации отпусков и dayoff'ов сотрудников команды/отдела/департамента. Никакие внутренние самописные интранеты, ни СБИС, ни VKDoc не могут предоставить мне простейшую возможность увидеть график отпусков разных сотрудников в виде календаря с разбивкой по дням, неделям и месяцам, чтобы найти какие-либо пересечения.
Например, мы запускаем крупный проект, в котором участвуют 5 и более команд, и я хочу иметь возможность увидеть, кто когда в этих командах на текущий момент запланировал отпуска, как они пересекаются между собой, и вывести это в условную Grafan'у, где я могу под разными углами и интервалами времени посмотреть пересечения отпусков разных сотрудников этих команд в разрезе стеков разработки, тестирования, менеджмента и т.д. и т.п.
Вроде бы простейшая задача, но никакой инструмент на рынке сейчас такую проблему не решает. Или я такого пока не видел.
👍4😢2
Пост про важность проведения демо.
Когда я был тимлидом B2B-направления в Ostrovok, я с нетерпением ждал каждого демо. Почему? Потому что в какой-то момент я понял, что это абсолютно законный и честный способ похвалить самого себя и свою команду за проделанную работу, а также показать другим тимлидам, что твоя команда самая классная. Как? Почему? Зачем? Да просто потому, что если ты зрелый тимлид, то ты можешь вывести свою команду в топ-перформеры и на фоне остальных команд в большой компании выглядеть гораздо успешнее, показывая реальные результаты на цифрах и запусках каждые две недели.
Демо рождает здоровую и честную конкуренцию между командами за похвалу и общее признание как со стороны бизнеса/продукта, так и среди инженеров IT. Потому что если ты, как тимлид, выступаешь на демо раз в квартал, а в соседней команде условный Петя выступает каждый раз и показывает реальные результаты, то если ты нормальный, то должен задаться вопросом: почему у Пети все так классно, а у меня нет? Может, я что-то делаю не так? Или у меня в команде что-то не так? Хочу, чтобы у меня было как у Пети в команде. Все аргументы в духе «все команды разные и у всех есть свои особенности» идут лесом, потому что "признание специфичности смерти подобно". Все мы особенные, а когда все особенные, то никто не особенный.
Понятно, что само демо надо уметь проводить, чтобы оно было в радость, а не в тягость, но это тема отдельного поста.
P.S.: Еще я обожал в каждое демо прятать "пасхалку", нахождение которой всегда было интересным и веселым челленджем для слушателей.
Когда я был тимлидом B2B-направления в Ostrovok, я с нетерпением ждал каждого демо. Почему? Потому что в какой-то момент я понял, что это абсолютно законный и честный способ похвалить самого себя и свою команду за проделанную работу, а также показать другим тимлидам, что твоя команда самая классная. Как? Почему? Зачем? Да просто потому, что если ты зрелый тимлид, то ты можешь вывести свою команду в топ-перформеры и на фоне остальных команд в большой компании выглядеть гораздо успешнее, показывая реальные результаты на цифрах и запусках каждые две недели.
Демо рождает здоровую и честную конкуренцию между командами за похвалу и общее признание как со стороны бизнеса/продукта, так и среди инженеров IT. Потому что если ты, как тимлид, выступаешь на демо раз в квартал, а в соседней команде условный Петя выступает каждый раз и показывает реальные результаты, то если ты нормальный, то должен задаться вопросом: почему у Пети все так классно, а у меня нет? Может, я что-то делаю не так? Или у меня в команде что-то не так? Хочу, чтобы у меня было как у Пети в команде. Все аргументы в духе «все команды разные и у всех есть свои особенности» идут лесом, потому что "признание специфичности смерти подобно". Все мы особенные, а когда все особенные, то никто не особенный.
Понятно, что само демо надо уметь проводить, чтобы оно было в радость, а не в тягость, но это тема отдельного поста.
P.S.: Еще я обожал в каждое демо прятать "пасхалку", нахождение которой всегда было интересным и веселым челленджем для слушателей.
👍6🔥4❤2👏2
Трудности перевода.
Есть достаточно старый, но не менее смешной стикер-пак CTO in Rage. Я никогда себе не позволял использовать оттуда стикеры, хотя очень хотелось. В какой-то момент я поймал себя на мысли, что фразы оттуда можно заменить вполне грамотной русской речью. Привожу свою интерпретацию перевода. Мат есть в оригинале, простите.
- Бля, реши вопрос -Слушай, я сейчас занят, разберись, пожалуйста, сам.
- Хули вы тут мусолите в этом чате -Диалог идет не в том направлении, вернитесь пожалуйста к сути.
- Прием блять -Привет, получилось что-то выяснить?
- Блять, как же вы меня заебали -Ох, я что-то подустал.
- У меня сейчас 0 доверия к тех команде -Я сомневаюсь, что мы сможем решить эту проблему самостоятельно.
- Штрафуйте -Кто-то может остаться без бонусов.
- Кто проебал? -Кто упустил?
- Вы реально не отбиваете -Я вижу, что у вас нет понимания.
- Вся разработка и куа у нас хуйня -Я считаю, что нам нужно больше инвестировать в зрелость наших инженеров.
- Какого хуя не откатили релиз? -Можно же было просто откатить, забыли?
- Ты со мной поспорить решил? -Давай обсудим, я готов привести свои аргументы.
- Меня это ебланство заебало -Ой, кажется, у нас есть общая проблема с ответственностью за свою работу.
- Я щас нахуй опять вас всех оштрафую -Видимо мы снова останемся без бонусов.
- Не ебите мне мозги -Разберитесь, пожалуйста. сами с проблемой.
- Та мне похуй -Я не в контексте.
- Нахуй ты мне это пишешь? -Ты хочешь чтобы я тебе чем-то помог?
- Нихуя не игрушки -Внимательнее, пожалуйста.
- В пизду такой мониторинг вообще -У меня есть вопросы к качеству нашего мониторинга.
- Позор -Я вижу тут точки роста.
Есть достаточно старый, но не менее смешной стикер-пак CTO in Rage. Я никогда себе не позволял использовать оттуда стикеры, хотя очень хотелось. В какой-то момент я поймал себя на мысли, что фразы оттуда можно заменить вполне грамотной русской речью. Привожу свою интерпретацию перевода. Мат есть в оригинале, простите.
- Бля, реши вопрос -
- Хули вы тут мусолите в этом чате -
- Прием блять -
- Блять, как же вы меня заебали -
- У меня сейчас 0 доверия к тех команде -
- Штрафуйте -
- Кто проебал? -
- Вы реально не отбиваете -
- Вся разработка и куа у нас хуйня -
- Какого хуя не откатили релиз? -
- Ты со мной поспорить решил? -
- Меня это ебланство заебало -
- Я щас нахуй опять вас всех оштрафую -
- Не ебите мне мозги -
- Та мне похуй -
- Нахуй ты мне это пишешь? -
- Нихуя не игрушки -
- В пизду такой мониторинг вообще -
- Позор -
😁17🔥6👏2
Про выбор между двумя плохими вариантами.
Всегда когда передо мной стоит выбор между двумя плохими вариантами я вспоминаю эту уже классическую серию Южного парка.
Когда вас нанимают руководителем, одной из ваших основных задач становится принятие правильных решений в ситуациях, когда все варианты плохие. Выбор между плохим и хорошим или между двумя хорошими вариантами не требует большого ума. Правильного алгоритма выбора между плохими вариантами не существует. Вероятность полностью избежать таких ситуаций стремится к нулю. Это нужно просто принять и быть готовым принимать тяжелые и непопулярные решения.
Серию можно посмотреть здесь.
Всегда когда передо мной стоит выбор между двумя плохими вариантами я вспоминаю эту уже классическую серию Южного парка.
«Клизма и дерьмо» (англ. Douche and Turd) — эпизод 808 (№ 119) сериала «Южный Парк», его премьера состоялась 27 октября 2004 года. Эпизод вышел накануне выборов Президента США и является их сатирическим отображением — выборы президента сравниваются с «выбором талисмана школы, между гигантской клизмой (Джон Керри) и сэндвичем с дерьмом (Джордж Буш-младший)»
Когда вас нанимают руководителем, одной из ваших основных задач становится принятие правильных решений в ситуациях, когда все варианты плохие. Выбор между плохим и хорошим или между двумя хорошими вариантами не требует большого ума. Правильного алгоритма выбора между плохими вариантами не существует. Вероятность полностью избежать таких ситуаций стремится к нулю. Это нужно просто принять и быть готовым принимать тяжелые и непопулярные решения.
Серию можно посмотреть здесь.
👍5😁2🤝2
Команда разработки как болид ралли.
Команда болида ралли состоит из двух человек: пилота и штурмана. Значимость этих ролей равнозначна для общего успеха болида и команды. Ошибка любого из них приводит к тому, что автомобиль на каком-нибудь повороте улетает в кювет. Например, как в Крыша мягенькая, но я обосрался. Среди них нет главного, они напарники, которые вместе ведут болид к первому месту.
То же самое и в разработке: есть тимлид, который отвечает за delivery, и есть продукт-овнер, который отвечает за discovery. Они оба ведут команду к успеху, они напарники, и ошибка любого из них ведет к тому, что фича будет либо сделана неправильно, либо не вовремя. Их ключевая задача — найти общий язык друг с другом, чтобы не тянуть одеяло на себя, а двигаться вместе в одном направлении. Идеально, когда продукт-овнер разбирается в том, как устроена разработка, а тимлид понимает продуктовый подход и продуктовые метрики. В этом случае это действительно команда мечты.
Команда болида ралли состоит из двух человек: пилота и штурмана. Значимость этих ролей равнозначна для общего успеха болида и команды. Ошибка любого из них приводит к тому, что автомобиль на каком-нибудь повороте улетает в кювет. Например, как в Крыша мягенькая, но я обосрался. Среди них нет главного, они напарники, которые вместе ведут болид к первому месту.
То же самое и в разработке: есть тимлид, который отвечает за delivery, и есть продукт-овнер, который отвечает за discovery. Они оба ведут команду к успеху, они напарники, и ошибка любого из них ведет к тому, что фича будет либо сделана неправильно, либо не вовремя. Их ключевая задача — найти общий язык друг с другом, чтобы не тянуть одеяло на себя, а двигаться вместе в одном направлении. Идеально, когда продукт-овнер разбирается в том, как устроена разработка, а тимлид понимает продуктовый подход и продуктовые метрики. В этом случае это действительно команда мечты.
🔥6
Пост про размер команды.
Видимо, как-то так получилось, на небе сошлись звезды, и на меня с разных сторон посыпались статьи в медиа про размер команды. Первой была статья Шароватова про social loafing, а вот недавно вышла просто шикарная статья на vc - Почему большие коллективы хуже работают. Эффект Рингельмана.
Я и раньше считал, что большие команды — это скорее плохо, чем хорошо, но я отталкивался скорее от Кошелька Миллера. А теперь вот узнал, что, оказывается, этому есть вполне себе научное объяснение за плечами которое стоят различные социальные эксперименты.
Размер команды зависит от числа инженеров, выполняющих конкретную часть работы. Если речь идет о кросс-функциональной команде, то минимальный состав включает: TeamLead, Backend, iOS, Android, web и QA — всего 6 человек, что оптимально для управления. При этом если мы хотим сократить риски (автобусное число >= 2), то команда уже может состоять из 11 человек, что превышает "Число Миллера". Можно попробовать использовать общий стек технологий, тогда команда наверное станет меньше, а "автобусное число" может достигнуть 3. Например, всё на JS (React/Node.js/React Native), или Kotlin Multiplatform на мобилках, или вообще весь фронтенд на Flutter. Однако, кажется, что так никто не делает, и, видимо, на это есть свои причины.
Эффект Рингельмана — это явление, которое показывает, что чем больше людей работает над одной задачей, тем меньше усилий каждый из них прикладывает.
Видимо, как-то так получилось, на небе сошлись звезды, и на меня с разных сторон посыпались статьи в медиа про размер команды. Первой была статья Шароватова про social loafing, а вот недавно вышла просто шикарная статья на vc - Почему большие коллективы хуже работают. Эффект Рингельмана.
Я и раньше считал, что большие команды — это скорее плохо, чем хорошо, но я отталкивался скорее от Кошелька Миллера. А теперь вот узнал, что, оказывается, этому есть вполне себе научное объяснение за плечами которое стоят различные социальные эксперименты.
Размер команды зависит от числа инженеров, выполняющих конкретную часть работы. Если речь идет о кросс-функциональной команде, то минимальный состав включает: TeamLead, Backend, iOS, Android, web и QA — всего 6 человек, что оптимально для управления. При этом если мы хотим сократить риски (автобусное число >= 2), то команда уже может состоять из 11 человек, что превышает "Число Миллера". Можно попробовать использовать общий стек технологий, тогда команда наверное станет меньше, а "автобусное число" может достигнуть 3. Например, всё на JS (React/Node.js/React Native), или Kotlin Multiplatform на мобилках, или вообще весь фронтенд на Flutter. Однако, кажется, что так никто не делает, и, видимо, на это есть свои причины.
👍5🔥2
Мы, ITшники, привыкли к высокому уровню удобства продуктов и сервисов, которые мы сами и наши коллеги разрабатывают.
- Хочешь заказать еду? Скачай приложение и нажми кнопку!
- Нужно записаться к врачу? Скачай приложение и нажми кнопку!
- Надо купить или забронировать отель или билет? Скачай приложение и нажми кнопку!
- Надо продать авто? Скачай приложение и нажми кнопку! Да, сейчас так можно!
Авторизация в один клик! Оформи заказ сейчас, плати потом! Мы делаем всё, чтобы наши клиенты были довольны и ничто не мешало им быстро пройти всю воронку — от захода на сайт/приложение до финального действия.
А теперь я расскажу вам о моей (суровой и современной реальности) покупки автомобиля.
- Февраль–март: исследование, как можно купить автомобиль, не переплачивая в 1.5 или 2 раза.
- Апрель–май: осознание необходимости поиска автомобиля на аукционах Южной Кореи и выбор модели и марки, которые мне подходят.
- Июнь–июль: поиск провайдера, который сможет купить автомобиль в Южной Корее и доставить его в РФ.
- Июль: поиск конкретного автомобиля, уточнение его состояния, переписка с подборщиком, оформление договора и передача денег.
- Август: ожидание ... и наблюдение за перемещением автомобиля в контейнере из Владивостока в Москву.
- Сентябрь: ожидание прибытия автомобиля в Москву, перегон в Беларусь на растаможку и обратно в Москву, после чего — детейлинг и окончательные процедуры оформления и получения номеров.
Для меня это всё кажется полной дикостью, тк даже чисто ITшный опыт поиска авто на южнокорейском сайте был крайне ужасным. С нашим auto.ru не сравнится (не реклама). Я сам бы это все не осилил, мне помогал отец, тк, видимо, его поколение к такому привыкло, а наше (мое) ещё (уже) нет.
К чему я это всё? К сожалению, не везде можно просто скачать приложение и нажать кнопку!
- Хочешь заказать еду? Скачай приложение и нажми кнопку!
- Нужно записаться к врачу? Скачай приложение и нажми кнопку!
- Надо купить или забронировать отель или билет? Скачай приложение и нажми кнопку!
- Надо продать авто? Скачай приложение и нажми кнопку! Да, сейчас так можно!
Авторизация в один клик! Оформи заказ сейчас, плати потом! Мы делаем всё, чтобы наши клиенты были довольны и ничто не мешало им быстро пройти всю воронку — от захода на сайт/приложение до финального действия.
А теперь я расскажу вам о моей (суровой и современной реальности) покупки автомобиля.
- Февраль–март: исследование, как можно купить автомобиль, не переплачивая в 1.5 или 2 раза.
- Апрель–май: осознание необходимости поиска автомобиля на аукционах Южной Кореи и выбор модели и марки, которые мне подходят.
- Июнь–июль: поиск провайдера, который сможет купить автомобиль в Южной Корее и доставить его в РФ.
- Июль: поиск конкретного автомобиля, уточнение его состояния, переписка с подборщиком, оформление договора и передача денег.
- Август: ожидание ... и наблюдение за перемещением автомобиля в контейнере из Владивостока в Москву.
- Сентябрь: ожидание прибытия автомобиля в Москву, перегон в Беларусь на растаможку и обратно в Москву, после чего — детейлинг и окончательные процедуры оформления и получения номеров.
Для меня это всё кажется полной дикостью, тк даже чисто ITшный опыт поиска авто на южнокорейском сайте был крайне ужасным. С нашим auto.ru не сравнится (не реклама). Я сам бы это все не осилил, мне помогал отец, тк, видимо, его поколение к такому привыкло, а наше (мое) ещё (уже) нет.
К чему я это всё? К сожалению, не везде можно просто скачать приложение и нажать кнопку!
👍14❤1🔥1😢1
Про проклятие знания.
Где-то последний месяц я жутко расстраивался из-за того, что приходится объяснять людям простейшие и, по моему мнению, понятные вещи. С одной стороны, это, наверное, часть моей работы, с другой стороны, возникает ряд вопросов: как всё это работало и существовало раньше. Покаравшись в инете открыл для себя бложик Тимлид Очевидность.
Мысль ясна, но как сделать так, чтобы и они также обладали этим "проклятием", чтобы мы все "страдали" вместе? Ответ прост — обучать и повторять. Подход называется "Правило трех повторений". Согласно ему, чтобы запомнить информацию, её нужно повторить трижды в разных контекстах или формах. Повторение необходимо, потому что забывать — это нормально. Помню, еще в вузе или школе мне говорили, что чтобы что-то запомнить, это нужно услышать, написать и прочитать. Видимо, это оно и есть.
Проклятие знания (англ. curse of knowledge) — одно из когнитивных искажений в мышлении человека (см. их список); термин, предложенный психологом Робином Хогартом для обозначения психологического феномена, заключающегося в том, что более информированным людям чрезвычайно сложно рассматривать какую-либо проблему с точки зрения менее информированных людей[1].
Где-то последний месяц я жутко расстраивался из-за того, что приходится объяснять людям простейшие и, по моему мнению, понятные вещи. С одной стороны, это, наверное, часть моей работы, с другой стороны, возникает ряд вопросов: как всё это работало и существовало раньше. Покаравшись в инете открыл для себя бложик Тимлид Очевидность.
мысль о том, что всё, что очевидно для тебя, может быть неочевидно для кого-то другого – всё это ведет к минимизации негативного эффекта проклятия знания, устранению лишней пустой работы и вопросов
Мысль ясна, но как сделать так, чтобы и они также обладали этим "проклятием", чтобы мы все "страдали" вместе? Ответ прост — обучать и повторять. Подход называется "Правило трех повторений". Согласно ему, чтобы запомнить информацию, её нужно повторить трижды в разных контекстах или формах. Повторение необходимо, потому что забывать — это нормально. Помню, еще в вузе или школе мне говорили, что чтобы что-то запомнить, это нужно услышать, написать и прочитать. Видимо, это оно и есть.
👍7🔥2
Учить — лечить — мочить
Был у меня один сотрудник, с которым я прошёл сложный путь совместного взаимодействия. Нанял я его сам, и при найме у меня были некоторые сомнения, но почему-то я не обратил на них внимания. В результате полгода мучений и множество попыток сначала решить проблемные вопросы, а потом обучить тому, что мне изначально было нужно. В итоге — рабочий конфликт на фоне полного несоответствия на культурном уровне и, в последствии, его заявление по собственному желанию, чтобы перестать страдать обеим сторонам.
Внимательный читатель поймёт, что последовательность моих действий с данным сотрудником отличается от заголовка. Учить всегда-всегда-всегда проще, чем лечить. Если "лечение" не помогает, то можно пробовать "мочить". Начать можно с низкой оценки на ревью, которая будет сигналом для изменений.
Татуировка «УЧИТЬ — ЛЕЧИТЬ — МОЧИТЬ» должна занимать достойное место на вашем туловище. Действуйте всегда исключительно в таком порядке, и все у вас в вашей менеджерской жизни будет прекрасно!
Был у меня один сотрудник, с которым я прошёл сложный путь совместного взаимодействия. Нанял я его сам, и при найме у меня были некоторые сомнения, но почему-то я не обратил на них внимания. В результате полгода мучений и множество попыток сначала решить проблемные вопросы, а потом обучить тому, что мне изначально было нужно. В итоге — рабочий конфликт на фоне полного несоответствия на культурном уровне и, в последствии, его заявление по собственному желанию, чтобы перестать страдать обеим сторонам.
Внимательный читатель поймёт, что последовательность моих действий с данным сотрудником отличается от заголовка. Учить всегда-всегда-всегда проще, чем лечить. Если "лечение" не помогает, то можно пробовать "мочить". Начать можно с низкой оценки на ревью, которая будет сигналом для изменений.
👍4🔥1🤝1
Про запас прочности.
Какой ключевой показатель можно выделить у хорошего руководителя? На мой взгляд, это самостоятельность команды в случае его потери.
История.
В декабре 2023 года один из моих тимлидов сообщил, что покидает компанию через две недели. Ничего необычного, подумал я, бывает. Моё беспокойство было связано не с его уходом, а с тем, что мне придётся искать нового тимлида, и какое-то время команда будет без руководителя. Через месяц, уже в январе 2024 года, я пришёл в команду узнать, как дела, и всё было хорошо: бэклог на квартал сформирован, команда понимала, что, когда и зачем ей нужно делать, осознавала свои обязательства перед всеми стейкхолдерами. Команда самостоятельно ставила себе цели на спринт и вела все скрам-процессы. Спустя ещё месяц ситуация радикально не изменилась, команда продолжала самостоятельно функционировать. Только спустя третий месяц начали проявляться первые проблемы, видимо, запас прочности, заложенный ушедшим руководителем, начал иссякать. В разговоре с членами команды стало ясно, что ушедший тимлид изначально закладывал принципы самостоятельности и ответственности. В команде не было такого: "я тут делаю только что-то одно, а что делает мой сосед, меня не волнует." В каждом сотруднике чувствовались проактивность, не было безразличия, а было общее желание показывать результаты.
Мудрость.
Если вы уходите в отпуск, а ваша команда успела потерять в эффективности за это короткий срок, то "хьюстон, у нас проблемы".
В целом это актуально для любого руководителя, независимо от уровня и позиции. Руководитель команды, отдела, сектора, направления, управления или департамента. Разница лишь в запасе прочности, который вы оставляете после себя.
Хорошо известна история, когда Генри Форд внезапно отправил руководителей всех отделов своих заводов в двухнедельный круиз по Карибам. По возвращении половину он уволил, а другую половину повысил, те руководители, чьи отделы в их отсутствии не потеряли эффективности, заслужили награду, ведь они, по мысли Форда, сумели грамотно организовать работу своих сотрудников. Те, чьи отделы начали «проседать», закономерно показали себя плохими управленцами.
Какой ключевой показатель можно выделить у хорошего руководителя? На мой взгляд, это самостоятельность команды в случае его потери.
История.
В декабре 2023 года один из моих тимлидов сообщил, что покидает компанию через две недели. Ничего необычного, подумал я, бывает. Моё беспокойство было связано не с его уходом, а с тем, что мне придётся искать нового тимлида, и какое-то время команда будет без руководителя. Через месяц, уже в январе 2024 года, я пришёл в команду узнать, как дела, и всё было хорошо: бэклог на квартал сформирован, команда понимала, что, когда и зачем ей нужно делать, осознавала свои обязательства перед всеми стейкхолдерами. Команда самостоятельно ставила себе цели на спринт и вела все скрам-процессы. Спустя ещё месяц ситуация радикально не изменилась, команда продолжала самостоятельно функционировать. Только спустя третий месяц начали проявляться первые проблемы, видимо, запас прочности, заложенный ушедшим руководителем, начал иссякать. В разговоре с членами команды стало ясно, что ушедший тимлид изначально закладывал принципы самостоятельности и ответственности. В команде не было такого: "я тут делаю только что-то одно, а что делает мой сосед, меня не волнует." В каждом сотруднике чувствовались проактивность, не было безразличия, а было общее желание показывать результаты.
Мудрость.
Если вы уходите в отпуск, а ваша команда успела потерять в эффективности за это короткий срок, то "хьюстон, у нас проблемы".
В целом это актуально для любого руководителя, независимо от уровня и позиции. Руководитель команды, отдела, сектора, направления, управления или департамента. Разница лишь в запасе прочности, который вы оставляете после себя.
👍12❤4🔥4