Много лет руковожу программистами, при этом продолжая писать код, придумывать архитектуру, управлять проектами и т.д. Короче, я как все, только ещё хожу на совещания.

Рядом много других команд программистов, и у них тоже есть свои начальники. И вот странное дело - сильно они разные получаются.

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

Вторая половина, ну это... Возьмите любой эпитет из предыдущего абзаца и добавьте НЕ.

Исходные условия у всех одинаковые - каждый когда-то был хорошим программистом, потом "выдвинулся" (все - по своей воле), ну и руководил, как мог.

Почему такая разница?

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

Половина начальников обычно эту возможность игнорируют. Именно Возможность - руководить умными, толковыми, амбициозными программистами, инженерами, дизайнерами и т.д. - это возможность, а не обязанность. Руководители исполняют роль координаторов и погонщиков (shaper по Белбину) – распределяют задачи, контролируют срок и бюджет, ну или какие там ещё у них параметры есть.

А в суть задачи не вникают. Проблем, возникающих в процессе выполнения, не знают. Способы решения, которые программист попробовал, не видели. Что в итоге сработало – не интересуются.

Задача для такого начальника остаётся чёрным ящиком. Сделали – и хорошо. Вовремя сделали – прекрасно. Но никакого прироста знаний у начальника не случилось. Программист – да, прокачался (если задача содержала в себе хоть что-то для него новое). Но полученные знания, отточенные навыки и освоенные технологии остались при нём.

А ведь там просто кладезь информации, особенно если задачи разнородные. И главное – затраты на погружение чертовски малы. Надо потратить 5-10 минут в начале, опционально - пару-тройку итераций в середине, и столько же в конце. Программист сам с радостью всё расскажет, если спросить – с чего начал, куда копал, где зашёл в тупик, у кого спрашивал, что посоветовали, что попробовал, как сработало, чего нового узнал.

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

Я эту теорию проверял на нескольких начальниках, в т.ч. на себе самом. Работает всегда.

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

Для примера. Я сам на прошлой неделе решал две большие задачи - проблемы с себестоимостью решал и производственное планирование программировал. Что ещё узнал, благодаря участию в задачах команды?

Чем учёт в НКО отличается от обычного. Что такое ФСБУ 6 и как оно запускается. Как работает выгрузка из Бухгалтерии в ERP и да, там есть детские ошибки. Как изнутри устроен механизм расчёта цен в транспортной логистике Раруса (да, там тоже есть ошибки). Как в ЖКХ распределяется оплата по начислениям. Удивительно, но в соседнем отделе "пишут компоненты интеграции", скопировав пример с "Hello World" внутри. Для отражения подарков сотрудникам есть специальный инструмент, и там начисляется НДФЛ. Как устроено разузлование спецификаций в ERP (увы, чуть хуже, чем хотелось бы). Как устроена система прав доступа на регистры в ERP. Как за несколько минут ускорить работу 1С на сервере в 2.5 раза, если там был плохой админ. Как в ERP отследить, из какого плана продаж создан план производства, а потом заказ.

Ещё кучу времени помогал продавцам и руководителям проектов. Но это к делу не относится.

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

А широту можно получить почти на халяву.

Комментарии (26)


  1. Elpi
    20.12.2021 21:28
    +5

    Понравилась мысль о черном ящике: " Задача для такого начальника остаётся чёрным ящиком. Сделали – и хорошо." Это очень точное наблюдение, сам много раз это замечал.

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

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

    Главное "делать грозное лицо" и не допускать нормального общения. Отрывистые команды или "разборки" с маской бесконечно занятого важное начальника.


    1. it2manager
      21.12.2021 14:20
      +3

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

      Это я к тому, что у каждого своя работа и свои скилы. Быть везде - невозможно. Точнее можно, но это как утка - умеет плавать,нырять, летать, ходить, но все делает хреново.


      1. Jammarra
        22.12.2021 15:53

        Потом когда речь пошла про планы, бюджеты и т.д. сами понимаете...

        Проблема не в том что тех спец ответить не сможет. Проблема обычно в том что если он ответит то он и будет крайним. А оно ему нужно? Кто больше денег получает тот пусть и огребает если в заявленные бюджеты и сроки не уложились.


      1. OldCold
        22.12.2021 16:16

        Как мне кажется "руководитель" - это состояние души, а "тех.спец" - профессия. Т.е. то, про что говорится в посте - это (на мой взгляд) про начальников (как профессия), которые не руководители.

        К чему я вам ответил? К тому, что если бы этот тех.спец был руководителем, то он, МОЖЕТ БЫТЬ, не смог бы ответить на вопросы про планы, бюджеты и т.д., но он смог бы быстро найти на кого перенаправить вопрос, с кем проконсультироваться и т.д. и в конечном счёте дал бы ответ достаточно оперативно.


      1. Kekoc
        22.12.2021 16:16

        Т.е. тех. спец неспособный, а не просто не погружен во все планы, бюджеты и т.д.

        У вас акцент, что именно начальник, а другой тех. специалист, значит начальник не технический специалист, а менеджер? И проблема технического специалиста, что он не компетентен в менеджерских вопросах? Он в принципе неспособен или просто не занимался этими вопросами? Лучше бы конечно заверил все планы и бюджеты да.


  1. it2manager
    20.12.2021 22:33
    +24

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

    И второй -сколько часов в день вы работаете ?


    1. LARII
      20.12.2021 23:26
      +3

      Тонко.


    1. TimsTims
      21.12.2021 01:16
      +6

      Это же nmivan , 250+ статей на Хабре. Может показаться, что его работа - это писать статьи на хабре. Большинство статей вызывают много противоречивых мнений о выводах в статье. Впрочем, он и сам признается, что использует это для влияния на людей, а большая часть статей - выдумка, что впрочем автор и не скрывает.

      Статьи интересные, спорные и кликбейтные. За это его и любят и ненавидят :)


      1. LARII
        21.12.2021 09:58
        +2

        Не только на Хабре. Инфостарт, Проза.ру и ещё вроде что-то.


      1. aegoroff
        21.12.2021 09:59
        -3

        Может не стоит переходить на личности? Между прочим очень правильная статья написана. Ну а то что человек продуктивен - честь ему и хвала.

        По поводу противоречивых мнений - а всем никогда не угодишь, всегда будут противники.


        1. TimsTims
          21.12.2021 10:51

          Когда человек - звезда Хабра, то он уже личность и его обсуждают, как @alizar в каждой его статье :). Ну и я очень уважительно отношусь к @nmivan , это можно было заметить в моем комментарии. Все суждения - только по его статьям, ни больше ни меньше. Хоть его рассказы и перекручены, но в них есть доля истины в человеческих взаимоотношениях.

          а всем никогда не угодишь, всегда будут противники

          Я согласен, но его статьи именно, что вызывают много противоречивых мнений, гораздо больше чем другие статьи.


          1. aegoroff
            21.12.2021 13:50
            -6

            Я вас понял, но неважно кто человек - звезда. или нет, чисто по человечески некрасиво переходить на личности - это не делает вам чести.

            PS: Смотрю местные хомячки уже начали фигачить мне минусы за мнение отличное от их собственного


    1. nmivan Автор
      21.12.2021 05:41
      +2

      15 подчинённых, работаю по 9 часов в день.


  1. funca
    20.12.2021 23:49
    +3

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

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

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


  1. DenisSel
    21.12.2021 01:51

    Звучит это хорошо, а если посмотреть со стороны сотрудника? Вот я фронтенд разработчик объясняю своему реководителю который начинал на С++ и из фронтенда знает только PHP почему я вынес логику в кастомные хуки на ReactJS, а вариацию кнопок через БЕМ модификатор обновил в npm пакете самописной библиотеки компонентов. И я благодарен ему, что он не старается делать вид что понимает о том что я ему говорю, а спрашивает нужно ли мне ещё время чтобы подстраховать если я об.делаюсь по срокам или помощь со стороны параллельной команды, если я сам не буду понимать как у них работают карты с которыми мне нужно интегрироватся


    1. Kazehay
      22.12.2021 12:51

      Это и есть понимание. Ведь можно было просто в озвученный срок спросить за результат и без отговорок.


  1. haviras
    21.12.2021 05:42
    +4

    Курица - не птица

    1с - не программист


    1. OneMike
      22.12.2021 02:13

      Конечно, 1C - платформа)


  1. panzerfaust
    21.12.2021 08:17
    +1

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


  1. svr_91
    21.12.2021 09:39

    А результат-то, результат-то какой? Кто более эффективен, как начальник? Тема не раскрыта


  1. Hafmaer
    21.12.2021 09:59

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

    В противном случае, программист устанет от такого внимания к себе.

    На счет "черных ящиков" - хорошо сказано. У техлида не должно оставаться черных ящиков на проекте.


    1. it2manager
      21.12.2021 14:16

      Так кто он все таки: Техлид, Тимлид или начальник более высокого ранга ? ))))


  1. heli
    21.12.2021 13:23

    Как за несколько минут ускорить работу 1С на сервере в 2.5 раза, если там был плохой админ.

    Интригует, поделитесь


    1. nmivan Автор
      21.12.2021 13:25

      если там был плохой админ

      это ключевое. Элементарная реиндексация SQL даёт вау-эффект.


  1. Macmep_007
    22.12.2021 04:47

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

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

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

    Вообще документирование как бы must have. Нет документирования, нет видения бизнес процессов. В итоге наш автор тонет в рутине, попутно бегая на все совещания, пытаясь успеть везде. Хотя, если руководить двумя подчиненными, то может еще не все так плохо? Но я сомневаюсь.


  1. enree
    23.12.2021 09:21

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