Аналитика паралитиков (Владимир Сахарцев) / Стихи.ру

Аналитика паралитиков (Владимир Сахарцев) / Стихи.ру Аналитика

В целом я считаю, что совмещение ролей управленца и инженера зависит от трех вещей:

1) Стадии развития вашей команды

Если посмотреть на стадии развития группы по Такмену, все команды проходят несколько этапов: сначала идет этап формирования команды, в процессе люди начинают конфликтовать и начинается так называемый этап шторминга, конфликтная стадия – наиболее критичный этап.

Потом, когда люди поняли, кто есть кто, они начинают притираться друг к другу и наступает длительный этап норминга, на котором производительность медленно растет, доходит до пика на этапе перформинга и потихоньку падает.

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

Как только вы перейдете в режим норминга и перформинга, у вас освободится гораздо больше времени на программирование.

2) Уровня квалификации и мотивации ваших сотрудников

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

Обратная ситуация – у вас в команде толпа «выгоревших синьоров». Тогда время и энергию стоит вложить в поддержку ребят, чтобы они выскочили из ямы демотивации.

Если у вас команда немотивированных и неквалифицированных сотрудников, то, наверное, вы всё время будете заняты микроменеджментом и больше ничем.

Есть классическая табличка на эту тему:

Единственный возможный вариант освободить себе время на разработку – делегировать задачи достаточно мотивированной и квалифицированной команде.

3) Уровня коммуникации на проекте

Возможности тратить времени на разработку не будет, если есть проблемы в коммуникации на проекте.

Например, mushroom management (управление по принципу «меньше знаешь – крепче спишь), когда вы являетесь единой точкой коммуникации и никто больше не знает, что происходит.

Очевидно, что в таком случае у вас не будет времени на инженерную деятельность.

Tal education: инвесторы поставили всё на зеро и проиграли (снова)

История о том, как можно потерять весь капитал на рынке за 1 день!

Участники

Три крупнейших образовательных компании Китая: TAL Education, New Oriental Education и Gaotu Techedu. Все трое зарабатывают на платных курсах для школьников и студентов всех возрастов в трех форматах занятий: небольшие классы, персональное репетиторство и онлайн-курсы.

Что произошло?

В пятницу 23 июля в массмедиа появилась новость, что компартия Китая хочет сильно ограничить работу частных образовательных школ. Грубя говоря, будет запрет на коммерческое репетиторство по основным школьным предметам. Также будут запрещены иностранные инвестиции в сектор образования, а самим компаниям запрещено собирать деньги через листинг ценных бумаг на бирже или любым подобным образом. Переводя на язык инвестора – это значит “срочно бежим с тонущего корабля”!

Gaotu Techedu (GOTU)

New Oriental Education (EDU)

TAL Education (TAL)

Нас больше всего интересует TAL Education, т.к. только она одна доступна большинству российских инвесторов.

У компании феноменальные показатели: гигантские темпы роста выручки (средний за 5 лет 49% г/г), двузначная рентабельность, огромный рынок с потенциалом в десятки млрд USD. Продажи выросли с $37,4 млн в 2009 году до $4,496 млрд в 2020 году — за 12 лет рост в 120 раз или по 50% год к году. За последний год количество студентов выросло на 50% и в добавок на балансе лежит $4.2 млрд. Идеальная компания роста для инвестора, о которой трубили все брокеры на протяжении целого года!

В июне (всего лишь месяц назад) консенсус-прогноз аналитиков с Уолл-стрит для бумаг TAL составлял $78,98, что предполагает потенциал роста в размере почти в 200%. Из 30 аналитиков 25 — рекомендовали покупать акции, 4 — держать и всего лишь 1 — продавать. На секунду, это было мнение самых авторитетных аналитиков США. Ещё раз. Месяц назад всего лишь 1 аналитик рекомендовал продавать акции.

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

Всё что нужно знать о рекомендациях брокера:

Да, в пятницу 23 июля случился крах акций, НО (!) если капнуть чуть дальше, то мы увидим, что НИ У КОГО не было шанса выйти сухим из акций TAL.

Купили акции вчера? потеряли 69%

Неделю назад? потеряли 68%

Месяц назад? потеряли 73%

Полгода назад? потеряли 92%

Год назад? потеряли 92%

Очень интересный беспроигрышный аттракцион) больше всего удивляют горе инвесторы, которые хотели заработать миллионы, но не фартануло. В пятницу у многих брокер автоматически закрыл убыточные позиции, потому что люди использовали заемные средства самого брокера. Это называется маржинколл – когда брокер даёт в долг, но если активы начинают резко падать, то брокер автоматически закрывает вашу позицию, чтобы вернуть свои деньги обратно. При этом сам инвестор в лучшем случае остаётся с нулем на балансе, в худшем вообще с минусом.

Вот одна из реальных историй инвестора тинькова, который потерял 2,5 миллиона:

Вот ещё один пример:

Самое ужасное, что такие истории ничему не учат молодых инвесторов. В данном случае “инвестор” хочет обратиться в прокуратуру для расследования ситуации, чтобы брокер и биржа были наказаны. Это абсурд. Человек сыграл в рулетку, проиграл и теперь винит в этом казино. Я вижу в этой ситуации отсутствие знаний, игнорирование рисков и абсолютное нежелание нести ответственность за свои действия.

Есть инвесторы, которые потеряли 5.5 млн руб, но при этом адекватно оценивают ситуацию. Таким ребятам я искренне хочу посочувствовать.

Но есть и позитивные инвесторы) которые потеряли около 2 млн и принимают это с улыбкой:

Факт 2:

Сейчас цена акций $6.23, значит капитализаций всей компании примерно $3,8 млрд. При этом на балансе сейчас $4.2 млрд. Получается, что теперь у компании денег больше, чем капитализация.

Факт 3:

На 18 мая 2021 года Morgan Stanley был крупнейшим индивидуальным акционер TAL Education Group с долей 27,7% компании (более $320 млн). На данный момент ещё неизвестно, успели ли они скинуть акции или все таки получили огромные убытки.

При этом точно известно, что их конкуренты JP Morgan успели продать акции Tal Education , New Oriental и Gaotu до минимума после сообщения о том, что Китай принимает жесткие меры.

Неужели Китай решил таким образом повлиять на США? Убили внутри страны весь сектор частного образования, но при этом наказали американских брокеров на $320 млн. Выглядит как выстрел себе в ногу.

Дополнительный анализ:  Работа аналитик дбо в Москве: Вакансии аналитик дбо в Москве -

Псевдо-факт 4:

Это уже из разряда конспирологии, может кто-то их крупных инвесторов захотел закупиться по минимальным ценам перед официальным разъяснением новых ограничений. Может быть само правительство Китая решило так получить выгодную позицию в переговорах с представителями рынка частного обучения.

Псевдо-факт 5:

Инсайт друга из Шанхая) работает в сфере образования, не воспринимайте серьёзно, выводы делайте сами, но ситуация интересная.

Аналитика паралитиков (владимир сахарцев) / стихи.ру

                Написано до переименования милиции в полицию!

Без забот, сочиняя лимерики,
Мы сидели с Валериком. В скверике.
Стресс снимая, в запале
В вытрезвитель попали.
Сразу видно: живём не в Америке.
А потом, без лишней риторики,
Мы искали сюжеты во дворике.
Ни банально, ни пошло
Вспоминали о прошлом…
И подумали люди: “Историки…”

Чуть позднее, как два паралитика,
Захотели писать о политике…
Взяв три “порции” “Гжелки”.
Мы попёрлись к Анжелке –
У шалавы любовь к аналитикам.

Чтобы чувства подруги проверить,
Не мешало бы выломать двери:
Несерьёзно стучаться,
Если хочешь общаться.
Мы не знали, что будут потери…

Может, это, природная глупость?
Или просто Анжелкина тупость?
Зря, хватаясь за вилы,
Та ментам заявила…
А в разборках не ценится скупость.

Выполняя подобие долга,
Злой ОМОН ковырялся не долго.
Наш дуэт, кроме шуток,
“Загремел” на пять суток:
Друг сержанта за челюсть “потрогал”.

В каталажке, уже без рюмашки,
Мы клеймили позором милашку,
А она, прости…пома,
Куролесила дома
У дешёвого фраера Сашки.

(Не хотелось жить в своей квартире без двери)

…”Отдохнув”, мы решили с Валериком
Позабыть, что такое лимерики.
Чтоб не знать аморалку,
Пьём одну минералку.
Баб не любим – боимся истерики…

Анти-паттерны программирования

  • Жёсткий код, от англ. hard code — про него ещё говорят «прибито гвоздями». Код настолько привязан к конкретной аппаратной конфигурации и/или системному окружению, что оторвать его для переноса в другое место можно только гвоздодёром.
  • Мягкий код, от англ. soft code — почти то же, что мягкий стул, или, техническим языком, код, конфигурируемый настолько гибко (и запутано), что хочется, чтобы лучше уж это был hard code. Возникает вследствие выноса в файлы конфигурации программной логики, что в разумных количествах, к слову, бывает иногда оправданно.
  • Магические числа, от англ. magic numbers — то, на чём нередко строится hard code. Всяческие константы в программе без пояснения их физического (или любого иного) смысла. Как правило, при изменении магического числа или его удалении код магически перестаёт работать вовсе. Типичные примеры — 17 и 54.
  • Магические строки, от англ. magic strings — как магические числа, но только это строки.
  • Магическая кнопка, от англ. magic button — весь код написан в обработчике нажатия кнопки. Этим страдают на всех языках с графическим редактором гуя — C#, делфи.
  • Гонки, англ. race condition, race hazard — начинаются тогда, когда программист попадает в чудный мир параллельного программирования с его нитями, потоками и семафорами.
  • Ненужная сложность, от англ. accidental complexity — делать сложно то, что можно сделать просто. Как правило, программисту хочется побыстрее применить всё, что он изучил (и воон ту новую библиотеку для обмена данными по протоколу XXX), а ещё заполучить по результатам проекта сразу много новых строчек в резюме. Если это желание побеждает доводы рассудка, то в проекте появляется accidental complexity. Также см. статьи Индусский код и KISS.
  • Спагетти (рус. солянка) из кода, от англ. code spaghetti — это тот самый код, который вам однажды дают сопровождать и после пяти минут
  • причёсывания вставших дыбом волос просмотра которого вы молча закрываете редактор и открываете броузер на хуехантере.ру в поисках вакансии в более другой фирме, где не практикуют такого жестокого обращения с программистами. Характеризуется тем, что в одном куске кода описывается куча перемешанных до полного непонимания сущностей, которые по-хорошему необходимо разделять. Например, HTML теги в PHP коде вместо выноса всей верстки в шаблоны.

  • Катамари — внедрение новых возможностей исключительно в виде внешних костылей и подпорок вместо периодического пересмотра базового функционала. В итоге со временем код превращается в тугой комок какого-то нечта, в чём даже сами разработчики отказываются ковыряться. В итоге получаем следующую порцию костылей и подпорок. Может применяться как в отдельно взятом фрагменте кода, так и глобально во всём проекте.
  • Божественный Объект, от англ. God Object — небольшая часть кода, где сконцентрировано всё. Буквально всё. Возможно, там даже прячется немаленьких размеров галактика. Весь прочий код программы — исключительно декорация вокруг Божественного Объекта.
  • Детонатор, от англ. detonator — очень распространён, но редко обнаруживаем. Наглядный пример: использование в вычислениях с датами поля из двух цифр. Бомба заложена, и детонатор рано или поздно сработает
  • Не-виноватая-я, англ. absolver — паттерн встречается в коде, написанном бывшими сотрудниками компании. В таком коде заключено столько старых проблем, что теперешние сотрудники могут защитить свои наработки от обвинений, утверждая, что именно чужой код — причина всех возникающих ошибок. Также известен под именем Это-Не-Моя-Правка.
  • Исторический вклад, от англ. stake — паттерн имеет место в программе, написанной сотрудником, который впоследствии получил продвижение по службе. Несмотря на изобилие ошибок в программе, вклад этого сотрудника слишком велик, чтобы позволить кому-либо начать переписывать код, поскольку он является апофеозом технических достижений этого товарища.
  • Паблик Морозов (сугубо русская идиома, нет английского эквивалента) — класс, который по запросу выдаёт доступ ко всем, даже приватным, свойствам класса-родителя. Не столько плохо само по себе, сколько означает, что в коде что-то не так.
  • Спасти рядового Райана, от англ. Private Ryan — паттерн, в котором доступ к полю получить в принципе можно, но для этого надо снаряжать экспедицию, сопряженную со множеством опасностей.

Анти-паттерны системного администрирования

Специально для сисадминов есть два антипаттерна, в которые они попадают в зависимости от своей специализации.

Антихитрожопость

Как говорил рядовой программист Э. Дейкстра: «Компетентный программист полностью осознает строго ограниченные возможности своего черепа, поэтому подходит к задачам программирования со всей возможной скромностью».

Заблуждения по поводу потенциала мозга руководителя или программиста являются перманентным источником антипаттернов.

  • Раскрытие потенциала технологии на 110%. Быстрое развитие платформ, средств разработки и их зарастание возможностями туманит мозги рядовому кодеру, который предполагает, что если он не будет писать код с десятью операторами на строку, использовать все возможные варианты генераторов, шаблонов, тегов, тонкие нюансы работы интерпретатора и низкосистемные хаки, то коллеги сочтут его полным junior‘ом. Но, как правило, все получается ровно таки наоборот и каждая хитрожопость в коде с лихвой аукается при дальнейшей поддержке продукта, не говоря про то, что бедные разработчики платформ, сред и библиотек кучу фич включают просто для галочки, уделяя им соответствующее внимание. При этом простых и понятных дедушкиных подходов, которые не обязательно означают квадратно-гнездовой подход, обычно с лихвой хватает для решения подавляющего большинства задач.
  • Манипулирование сроками. Любому эффективному руководителю рано или поздно приходит в голову мысль, а не стоит ли назвать разработчикам срок в 3,14 раз меньше оценочного, чтобы пошевеливались, хотя, если инвестиции затуманили его мозг, то в 3,14 раза больше, чтобы в этот раз ну точно успеть к дедлайну. Мысль о том, что все будет относительно хорошо, только если план работ соотносится с оценкой объема работ, считается слишком банальной и не достойной настоящего гуру руководства. Как следствие — множество проектов заканчивается феерически.
  • Экономия. Так как заказчик часто желает получить золотой замок за ведро пожухлого говна, то встает вопрос об экономии. Истинная хитрожопость диктует, что вместо того, чтобы сократить слой позолоты в два раза (обрезать фичи и требования), лучше сократить проектирование, прототипирование, внутренние конвенции, тесты, автотесты, команду разработчиков и прочие вещи, которые все равно не получается делать по-человечески. Разумеется, ответ на ключевой вопросочевиден, так как на заводе для производства денатурата никак не удастся изготовить бочонок шотландского виски, что все вроде как головой понимают, но в душе все равно хотят.
  • Раскрытие кадрового потенциала на 110%. В голову среднестатистического эффективного проджект-менеджера никак не укладывается, что программиста, написавшего в день десять строк, вполне можно назвать нормально поработавшим, а сто годных, отлаженных и протестированных строк — поработавшим отменно. Это приводит его к мысли, что в качестве программиста можно посадить секретаршу, так как у нее скорость набора выше, но так как секретарша отказывается, менеджерская логика подсказывает, что пора нагнетать панику, бегать со страпоном и всячески стимулировать процесс, дабы поиметь отдачу на 110%. В результате проект дохнет под собственным технологическом долгом (неудачные решения, неправильные оценки и тупо баги), не успев толком начаться. Правда, сам менеджер, как правило, двигает кони в первых рядах, а команда разработчиков, поправив резюме, на следующий же день переползает в какие-то другие конторы в надежде на лучшее.
Дополнительный анализ:  Постоянный портфель Гарри Брауна / Permanent Portfolio

Давайте теперь подумаем, как бороться с отвлечением и управлять вниманием

В чем проблема борьбы с отвлечением для тимлидов? В том, что классические подходы к тайм-менеджменту – focus time, помидорка, скалирование времени и другие – не работают, если сотрудники не уважают ваше время.

Но что делать с вопросами коллег? Важно отвечать на них хотя бы в течение получаса.

Я предпочитаю способ переноса времени: если вам написали, а вы программируете, то вы отвечаете через пятнадцать минут. Крайне важно не забывать ответить.

Для тимлидов отметим важный момент: пишем «через 15 минут» правильно.

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

Рассмотрим еще одну проблему – возврат в контекст.

Вы программируете, у вас в голове: «Задача-метод-класс». Вас отвлекли, контекст пропал. Вы ответили сотруднику, нужно вернуться в контекст.

Одно из самых эффективных решений – микродекомпозиция. Это когда вы берете листочек/one note, где можно сделать древовидную структуру и декомпозировать свою задачу вплоть до псевдокода или формулировки «сделай вот это».

Мультитаскинг – большая проблема тимлида, и здесь могут помочь виртуальные рабочие столы.

На виртуальном рабочем столе программирования у вас может быть открыт IDE, браузер, требования.

На виртуальном столе, где у вас релиз в продакшен, Jenkins/TeamCity, Splunk/Kibana, чат с DevOps. То же самое с обсуждением требований: Skype/Teams, Jira, Confluence.

Легче перескакивать между виртуальными рабочими столами, чтобы менять контекст.

Как настроить коммуникацию?

Вариант: если я единая точка коммуникации, я возьму и самоустранюсь.

Главная проблема будет в том, что появится неформальный лидер. Понятие «неформальный лидер» неприятное, потому что часто неформальные и формальные лидеры – не одно лицо. Это становится проблемой для формального лидера.

В идеале нам нужно соблюдать баланс в коммуникации: вы управляете командой, но не всё не завязано на вас – команда тоже общается с заказчиком и может решать проблемы.

Как перестать быть единой точкой коммуникации?

Если «всех всё устраивает», один из самых приятных вариантов – натравить на команду SCRUM-мастера, чтобы контролировать и оптимизировать рабочий процесс. К сожалению, это не всегда срабатывает.

Тогда можно пойти по классическому пути: уходите в отпуск – оставляете своего заместителя. Никакой заказчик не будет против, чтобы временно пообщаться с вашим сотрудником (кроме редких исключений). Но это не помогает познакомить заказчика со всей командой. Поэтому я бы хотел рассмотреть более общий способ того, как «подружить» заказчика с командой:

  • Познакомьте заказчика с командой через task manager.

  • Организуйте встречу с командой в привычном для заказчика месте и времени. Не приводите сразу всех.

  • Ведите первые митинги как обычно, тет-а-тет с заказчиком, но с командой «на фоне».

  • Передавайте часть инициативы коллегам, например: «Вот Евгений знает эту систему лучше всех, пусть расскажет».

  • Поднимайте на встречах вопросы, которые можно адресовать команде. Пусть на них отвечают, не ожидая вас.

  • Позвольте вашим коллегам вести митинги и переписки напрямую с заказчиком, но в первое время будьте рядом.

  • Всегда будьте в копии и на связи с заказчиком.

  • Это было про коммуникацию, теперь про то, как делегировать.

Делегирование – процесс передачи функции руководителя. Но наши функции не всегда очевидны другим. Например, наша обязанность – деплой на продакшен в рамках фичи деплоя. Для нас может быть очевидно, что нужно прогнать тесты, кто ж не знает? Никто не знает, эта информация в вашей голове. Необходимо донести её до человека, который будет выполнять задачу.

Делегирование – это отдельная тема, сейчас я остановлюсь только на нескольких моментах.

Не забывать, чтоваши функции не очевидны другим.

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

Делегирование должно развивать сотрудников. Помните, что чем больше вы делегируете человеку, тем лучше он справляется со своими полномочиями. Поэтому, если первый раз произошло полное фиаско и человек не справился с функциями, которые вы делегировали, лучше дать ему возможность еще раз попробовать эту задачу, возможно, он чему-то научился. Как это понять? Важная часть делегирования – контроль. Еженедельный контроль, ежедневные митинги и прочее.

Не забывайте, что делегирование – это не безучастность. Вы должны быть в курсе событий, слушать митинги.

Мы поняли, когда можно браться за разработку: команда не находится на этапе шторминга, мы умеем делегировать.

Материал из lurkmore

Анти-паттерн (от англ. anti-pattern; он же ловушка, англ. pitfall) — это то, как поступать не надо, но как всё равно все, всегда и повсюду поступают. Сколько ни предупреждают. Потому как дедлайны. Потому как бизнес. Потому как долбоёбы.

Термин пришел из информатики, из книги «Банда четырёх» Шаблоны проектирования, которая заложила примеры практики хорошего программирования. Авторы назвали эти хорошие методы «шаблонами (паттернами) проектирования», а антиподами им и являются, соответственно, «анти-паттерны». В принципе, анти-паттерны применимы не только в ИТ, но и в любой другой области человеческой деятельности.

Дополнительный анализ:  Форум по акциям Bayerische Motoren Werke AG (BMWG) —

Напоследок хотелось бы поговорить про выбор «программерской роли», когда вы тимлид

Давайте рассмотрим основные роли:

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

Если ваша большая команда, времени на это может не быть. Стоит вовремя отдать эту роль, когда команда растет, иначе вы можете превратиться в прототипщика (человек, который пилит прототипы, а доведение проекта до ума оставляет на откуп команде).

«Затыкатель дыр» – человек, который приходит, когда нам чего-то не хватает для полного счастья.

Это человек с широким кругозором, который может компенсировать слабые стороны команды. В современном мире тимлид работает на компенсацию слабых сторон команды, а не наоборот. Такая роль идеальна в небольшой команде. Важно не только «затыкать дыры», но и заполнять пробелы новыми сотрудниками.

«Еще одни руки» – еще один программист, который просто еще что-то делает – фиксит баги, например.

Этот подход работает, потому что тимлид с такой ролью хорошо знает систему. Тут важно не стать кодерским балластом.

И мое любимое – кодерский балласт. Человек, которого лучше бы не было.

Кодерский балласт – менеджер, который когда-то был разработчиком, но навык программирования уже утерян. Использует устаревшие подходы, но он начальник, поэтому неостановим. Важно признать свою низкую квалификацию и не быть кодерским балластом.

Организационные анти-паттерны

Есть такое искусство — «пасти котов», или, скучно выражаясь, управление программистами. Рисование всяких там диаграммок Ганта и прочей псевдонаучной лабуды, которую потом все дружно игнорируют. Этим занимаются менеджеры. Не секрет, что в менеджеры уходят те, кто в ИТ пришёл к своему финишу, постарел и отупел, чтобы писать код и ваять вечное, а может быть, и вовсе кроме ворда и аутлука ничем не пользовался и потому подался сразу

в управдомы

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

  • Управление грибами, от англ. mushroom management — метод управления подчиненными по принципу: вы все муравьи, а я муравейник! Английский лозунг грибного менеджера — «we keep them in the dark and feed them a steady diet of manure» (Richard Henderson). Менеджер всячески
  • окучивает грибы убеждает подчинённых в том, что кроме их непосредственных заданий, им не надо ничего знать, а утруждать мозги думами о проекте в целом — исключительно манагерский удел. Для внедрения данного метода следует разбить проект на несобираемые кусочки паззла, чтобы никто не понимал, что из них можно собрать вообще и затем выдавать каждому эти кусочки в достаточных количествах, чтобы грибы перманентно были заняты работой и не отвлекались на раздумья «а на уя вообще мы делаем именно так?». Как правило, грибной менеджмент приводит к полностью провальным финалам, поскольку менеджер сам забывает (либо изначально не понимает), к чему и зачем идёт проект. Что любопытно, грибной менеджмент практикуют не только менеджеры, но и отдельные программисты, очутившись на ролях старших в проекте. Как правило, это индикатор неквалифицированных программистов, боящихся раскрывать коллегам те немногие знания, которыми они обладают — чтобы не обнаружилось, насколько эти знания малы. Та же причина справедлива и для менеджеров.

  • Чайка-менеджер, от англ. seagull management или corporate seagull — распространённый подкласс менеджеров, действующих в следующей последовательности: прилетел, поорал и улетел, оставив за собой кучки проектного дерьма, которые потом, матерясь, подчищают подчинённые. По поведению напоминают
  • морских ворон чаек, парящих гордо между тучами и морем и прилетающих на берег с целью быстро пожрать и попутно опорожнить кишечники, за что они (менеджеры) и переняли данное наименование. Самый бестолковый для проектной деятельности тип, но начальство их любит, так как корпоративные чайки умеют громко хлопать крыльями заявлять о себе, выдавая копеечную деятельность за великие свершения. Живучи, их сложно поймать на ошибках, так как ошибок они не совершают (поскольку, как известно, для этого нужно хоть что-то делать).

  • Разработка комитетом, от англ. design by commitee — аналог пословицы «у семи нянек дитя без глазу» применительно к ИТ. Раздувается в гигантские нежизнеспособные стандарты и спецификации с over 9000 уровней абстракции, которые потом всё равно никто не реализует. Примеры — модель OSI[ЩИТО?] и CORBA.
  • Аналитики-паралитики, от англ. analysis paralysis — проект застревает на стадии анализа задачи, в бесконечных спорах «как делать лучше». В результате получается вообще никак.
  • Рыцарь на белом коне (РНБК), от англ. Knight in shining armor (KISA) — непогрешимая личность, с ЧСВ, равным как минимум квадрату собственной технической квалификации. Появляется на сцене в кризисный момент и начинает чинить всё подряд, как правило — чинит успешно, только без сообщений о том, какие изменения он сделал, и почему. Так что при очередном обновлении системы ничего не подозревающим сисадмином старые ошибки возвращаются на свои места, что даёт повод РНБК заявлять о тупости и некомпетентности окружающих, что ещё более увеличивает его ауру непогрешимости.
  • Аврал!, от англ. Tempest Method — применяется не ранее, чем за несколько дней до сдачи проекта. При этом пограммисты начинают в срочном порядке генерировать код без комментариев и содержащий в себе связки бомб с детонаторами.
  • Охота на ведьм, от англ. witch hunt — попытки отыскать козла отпущения после успешного внедрения анти-паттернов выше, но поскольку проблем это не решает, результатом будет являться отстрел всё новых и новых козлов отпущения. В финале игры должен оставаться только один —
  • Duncan McLeod менеджер на белом коне, с подтверждениями некомпетентности предыдущей команды и уверениями руководства фирмы в том, что новая команда под его руководством достигнет небывалых проектных успехов.

Пора программировать

Мы настроили время, коммуникацию, справились с отвлекающими факторами, налили чаёк… И мы парализованы.

У нас антипаттерн – аналитики-паралитики.

Представим ситуацию: мы архитекторы нефтекомплекса. Мы в голове держим весь этот нефтекомплекс: как он работает, почему он все еще не взорвался. Допустим, все рабочие ушли в отпуск и надо починить трубу. Мы единственные, кто может это сделать.

Как вы думаете, о чём будет думать архитектор нефтекомплекса, когда ему надо чинить трубу? «Пройдет ли этот биметалл эконормы? А как на давление повлияет в сжигателе?» В данном случае архитектор просто не сможет починить эту трубу, потому что не справится с такой когнитивной нагрузкой.

У нас то же самое. Разработка ПО – это комплексная задача. Бизнес-контекст, архитектура, код и прочее. От нас как от тимлидов требуют думать глобально.

Чтобы решить задачу, я использую подход вокализации действия. У меня над рабочим столом висят карточки, где написаны разные роли – архитектор, аналитик, программист. И я себе говорю, например: «Сейчас я аналитик, мой фокус внимания – не код, а бизнес-контекст» или «Сейчас я программист, я не думаю, как перекрутить требования». Упрощаем себе жизнь, переключаем фокусы внимания.

Резюмируя: как быть тимлидом и продолжать программировать.

Когда?

Как?

Рекомендации

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

Оцените статью
Аналитик-эксперт
Добавить комментарий