В IT чудес не бывает
877 subscribers
142 photos
21 videos
1 file
379 links
Лайт-версия блога https://www.maxshulga.ru/ про менеджмент, качество и процессы в IT от доброго доктора АйТиболита @maxbeard12
Download Telegram
Ко вчерашнему посту про возраст, нарасхват и "бракованных" программистов.
ЗЫ хочу в понедельник что-то про возраст еще добавить :)
#it_memes
🔥9👍2
И еще немного про возраст
Is software development really a dead-end job after age 35-40?

А тут в тви байка, что после 50 уволили кого-то. За что - непонятно. Но многие цепляются за возраст, потому что это единственный факт.

Некоторые соглашаются, что после 45+ тяжело кодить, потом что медленно соображают. Я не знаю, в 45 я уже не кодил :)
Но знаю, что многие отличнейшим образом справляются.

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

Итого: Каким-то “молодым” тяжело с "возрастными", каким-то “возрастным” тяжело с "молодыми".
Что такое “молодой” и “возрастной”? Без контекста - вопрос без ответа. Многим людям просто с другими людьми тяжело работать в принципе, постоянно.

Когда-то давно написал бу-бу-бу про “как это работать с коллегами возраста твоих детей”, в чем его вывод - да фиг знает.
Кажется, что основное, что надо держать в голове - это то, что раньше или позже все там будут 🙂.
И к этому надо быть готовым.
#it_философия #байки
5👍1
Рассказали мне недавно, что ожил сайт Piter-United. А на днях было был 10-летний юбилей той встречи, где я в первый раз участвовал в IT Global Meetup (ITGM), в шикарном зале музея связи имени А.С. Попова.
Даже не знаю, живо ли по-настоящему хоть одно из тех IT-сообществ, которые принимали участие в ITGM (раньше их было около 20).
Интересная была инициатива, которая благодаря энтузиазму и драйву организаторов, в первую очередь Миши Рыжикова, собирала в максимуме до 1000 человек.
Благодаря "дневничку" можно снова вспомнить интересные моменты, знакомства. Кстати, на ITGM я в первый раз узнал про Semrush (тогда еще SEMrush). На одном из ITGM я и сам травил байку про технический долг.
Вообще раньше (ну лет 5-10 назад) можно было раз в неделю ходить на интересные митапы.

А потом, сначала, митапы подкосил ковид, потом другие всем известные события, некоторые компании уехав "забрали" с собой и все записи митапов, которые они организовывали, просто снеся все с ютуба.

А что сейчас с митапной движухой в принципе? Мимо меня только джуговские митапы разного профиля летают. Есть вообще жизнь? А что там в Европе с этим?

Может оно все живое и активно проходит, просто я уже не в теме? :)
#байки
3
В IT чудес не бывает
"...давать ошибаться..." Кстати, про ошибки. Все делают ошибки. Ошибка - это нормально, это в целом даже ожидаемо. Ненормально ничего не делать после того, как ошибка произошла, считая что "ошибка - это нормально". И под “делать” я тут понимаю не “кару небесную”…
"Жизнь становится лучше, когда ты постоянно предполагаешь, что можешь ошибаться.
Ты больше узнаешь, меньше обижаешься. И привлекаешь умных людей.
Ваша неправота ничего не говорит о вас, как о личности.
А вот невозможность ее признать - говорит." (с) чье-то из интырнетов #мысли_вслух
👍12💯1
Manage Your Capacity, Not Your Time
"...важно не количество времени, которым вы можете жонглировать, распределять и управлять, а качество времени, которое вы можете потратить на свои задачи..."
"...независимо от того, где вы работаете и насколько высокую позицию вы занимаете, ваши возможности ограничены: каждый день вы работаете только определенное количество часов, и только определенное количество этих часов вы можете провести в состоянии продуктивности и потока..."
#management
👍6
7 признаков звиздеца во взаимодействии PM и разработки (отсюда)
Можно "поиграть" в бинго, но не хочется.
#процессы
🔥11
На следующей неделе в отпуск.
Так что у меня "давайте после НГ" уже началось :)
#it_memes
👍6💯4🎉3
Про компромиссы или 256 оттенков серого.
Самое большое заблуждение в IT (и не только), с которым часто приходится сталкиваться, это то, что все вокруг черно-белое.
А на самом деле везде и всегда есть контекст. Всегда есть развилка, место для маневра и компромиссов. Потому что везде вокруг люди.
Попытка привести все к 0, или 1 ни к чему хорошему не приводит. Особенно если не пытаться сделать контекст ясным для всех. Но это сложно и не все умеют, поэтому и возникает история “делаем так и не иначе”.
При этом компромиссы и принимаемые в них решения опасная штука: не фиксируя плюсы/минусы и “план Б”, мы слепо доверяемся якобы истине, всем понятной и разделяемой.

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

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

Добавляем очередной if-чик в функцию 100500 строк - это быстро, решение уже на уровне “паттерна”, место принятия решения локализовано. Ну вроде так. Или не так?
После какого количества if-чиков мы перестаем понимать то, что делает код? Как часто при этом перестает работать то, что до этого работало года 3 и никто проблем не видел? Когда новый if станет той каплей, когда прорвет плотину накопленного дерьма технического долга? И снова дилемма…

Думайте, всегда думайте. Даже делая вещи на уровне автоматизма. И принимая решения оценивайте их плюсы и минусы, с фиксацией того момента, когда вы вернетесь к решению минусов.
И не бывает решений только с плюсами, всегда есть место тому, чем приходится поступиться до определенного момента.
Или, про это тоже иногда забывают, разгребать дерьмо придется не вам...
#it_философия
👍13💯2
Стадии развития программиста:
- Ваш код гавно.
- Мой код гавно.
- Любой код гавно.
- Жизнь гавно.
- Выступаешь на конференции с темой: Как структурировать гавно, так чтобы оно не растекалось. (c) Danil Pismenny (@pismenny)
#мысли_вслух
💯23😁2
Explorers are bad leaders
"Explorers are hard to follow. It’s better to let them wander alone, then hear their tales.

Explorers occasionally find a great place that would make a better home for many people. So that makes a job for a leader.

Leaders are easy to follow."
#management
👍21
"in most companies people are doing two jobs: their actual job and the job of managing others’ impressions of how they’re doing their job" (с) Ray Dalio, Principles: Life and Work

Или (если углубиться и расширить actual job)

People do 3 types of work within companies.
Produce:
Creating artifacts to serve the company’s external stakeholders.
Organize:
Creating the necessary structures & processes for Produce work.
Self-promote:
Creating a proxy for their own competence & impact.

Examples
Produce work: products, eng infra, sales deals, services, support, status updates,...
Organize work: internal processes, resource planning, status updates, re-orgs, hiring,...
Self-promote work: perf reviews, status updates, 1:1s with manager
(c) Shreyas Doshi @shreyas

#процессы #развитие #мысли_вслух
👍7
Всех читателей с наступающим Новым годом!
Я не верю в чудеса, просто потому что это всегда результат или чьего-то труда, или чьего-то продолба.
А вот в мозг и труд верю :)
Пусть в Новом году у вас все получается, и то, что запланировали, и то, что прилетит неожиданно.
Пусть чужие продолбы вас обойдут стороной, ну а собственные будут несильными, просто как сигнал того, что мозг нужно держать включенным и на ошибках надо учиться.
Спасибо, что читаете, оставайтесь на связи.
Будем вместе продолжать не верить, но делать чудо :)
#it_memes
🎉216👍6
Ну что, кто-то, я уверен, прошедшую неделю уже отработал, но большинство только настраивается на первую рабочую неделю. Вспоминает пароли от компов, имена коллег, какие-то там задачи, которые делались до каникул.
Входим в работу мягко, без форса.
Туда-сюда, а там, глядишь, уже и "после майских" наступит.
#it_memes
😁123
Когда ты становишься менеджером, возможности кодить у тебя становится сильно меньше. И чем выше позиция, тем меньше времени у тебя на это остается. А со временем еще и желание погружаться непосредственно в код притупляется (моя история).
При этом для многих именно возможность “писать код” и является самым важным, а может и единственным критерием “ты можешь быть техническим менеджером”.
Я не согласен. Самое важное - это сохранять способность понимать “язык” инженеров (разрабов, тестировщиков, devops-ов) и говорить с ними на этом языке.
Как это достигать?
1. Много читаем, слушаем, смотрим
2. Задаем инженерам вопросы (про особенности реализации, про возникающие сложности, про то, что они рекомендуют почитать/посмотреть)
2* попутно убеждаемся, что 80% проблем не меняется, потому что люди не склонны меняться, да и технологии/практики не так уж сильно меняются
3. Не ведемся на ловушку “ничего не меняется” и продолжаем пропускать информацию через мозг. Потому что изменения всегда есть, просто они редко революционные, а скорее эволюционные
4. Есть еще, спорный для меня вариант, “возвращаться обратно в инженеры, а потом снова в менеджеры”, но если это делать, то делать регулярно. Практическая реализация этого маятника у меня вызывает вопросы: опыт показывает, что нужно быть готовым к сложностям вида “странно, из менеджеров уходит… нам не нужны менеджеры, нам нужны инженеры” или “у него недостаточный менеджерский опыт, не рулил командой в N человек”. В общем, вариант “со звездочкой”.

Помните, ваши основные менеджерские хард-скилы - это умение работать с людьми, приоритетами и задавать правильные вопросы.

Что еще посоветуете? Писать код по ночам/выходным не предлагать, для этого времени есть масса других, более приятных, активностей :)
Что для вас "хороший технический менеджер"? Особенно интересно мнение инженеров.

Что еще почитать по теме?
Is there a path back from CTO to engineer?
What Makes a Great Manager of Software Engineers?

#management #развитие #байки
👍14
У меня часто бывает, что инфолента подсовывает что-то связанное с тем, что у меня сейчас в голове "основным тредом" работает.
Так вот ко вчерашнему про "мало что меняется" подлезла статья 91 Ways to become the Coolest Developer in the World (2011 год)
Верю, что до конца даже доскролить тяжело, а уж если пройти глянуть по кросс-ссылкам, так вообще работа на неделю минимум.
Но там практически все применимо до сих пор. Возможно какие-то моменты требуется привести к реалиям современности, но по-прежнему вполне юзабельно.

Из того же времени мой творческий "перевод" "Простые правила хорошего разработчика". Там покороче, да и советы такие, лайтовые, от КО. Но самый главный и важный - "Внимание к деталям и уважение", никогда про него не забывайте.
#байки #it_философия #развитие
👍5
Эмоции на работе добро и зло одновременно. Они поддерживают твои мысли и они же не дают донести мысли ясно и доходчиво, если эмоций через край.
От чего у меня частенько "перегорает" эмоциональный предохранитель и эмоции начинают мешать?
Фразы-триггеры:
• "за качество отвечают тестировщики"
• "это зона ответственности команды Б" (любимое - "это к девопсам")
• "это копеечная фича" (речь про стоимость реализации, но что забавно, часто это же означает, что фича еще и бесполезная. И "реализация" в оценке заканчивается только оценкой кол-ва изменений в коде, без тестирования и поддержки)
• "а мы думали, что все на вашей стороне и ждали вашего ответа"
• "завтра все будет готово" (уже неделю как)
 • теоретические выкладки, вместо ответа на заданный вопрос

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

Полезно, когда к тебе потом с этим приходят и подсвечивают. Даже если ты и сам все прекрасно понимаешь.
#байки #мысли_вслух
👍12
Performance Review
Одна из тех областей из сферы работы со своими сотрудниками, с которой у меня было меньше всего опыта: так как-то получалось, что или этот процесс был скорее формальностью, или его вообще не было. Особенно по отношению ко мне: обычно оно появлялось в той или иной форме в тот момент, когда я уже был на позиции для которой это вообще не проводилось, или для которой оно малополезно (так как быть “выше” - это уже только в рамках другой компании, а мое саморевью всегда было “жестче” того, что мне “отдавали”).
Но вот для сотрудников должно быть полезно, хотя зависит от формата проведения, затрачиваемого времени и в целом выстроенного процесса взаимодействия. Если обратная связь дается, а развитие обсуждается, только в рамках годового PerfReview - то хрень это, а не правильная работа с сотрудником.

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

Особенно в контексте смещения в сторону “внутренней big data” как входных артефактов PerfReview. Кстати, есть много вопросов и про индивидуальные ревью, потому что в основном результаты достигаются командной работой.

#management #процессы #развитие
4
Закроем финишным лаком историю Performance Review.
Вчера копал тему с метриками, которые можно попробовать "натянуть" на индивидуальную работу.
Ничего нового интересного, кроме давно известного и уже тут обсуждавшегося SPACE (+ ссылка на комменты) не нашел.

Зато нашел шпаргалки красивых формулировок для ревью :)
"45 Time Management Performance Review Phrases To Use"
И вопросы для самооценки "33 Self-Evaluation Questions (Plus How To Make Your Self-Evaluation Meaningful)"

#management #процессы #развитие
👍74
Интересное из комментов про шпаргалки для самооценки.
"люди, которые саморазвиваются - большую часть из этого делают неосознанно"
Согласен.
Но также они же:
"да я ничего такого и не сделал, все по работе"
"Ничего выдающегося"
"Все в рамках ожидаемого"
Именно поэтому такие шпаргалки полезны: они помогают взглянуть на свою работу с другого ракурса. Ну и в этом месте задача менеджера тоже подсвечивать эти моменты.
5👍4💯1
Микросервисы: очередной пример "256 оттенков серого".
Все по-настоящему "микросервисно" сложно, в какой-то степени дорого. Монолит (а скорее его экстремум в виде "Big Ball of Mud") - аналогично.
Всегда нужно искать середину и понимать что и для чего ты делаешь.
PS никто еще, вслед за AWS, не начал "монолитизировать" микросервисы, леча проблемы "микроминиатюризации"?

The False Dichotomy of Monolith vs. Microservices


#tech_read