Что может быть лучше в жизни, чем найти своё призвание и следовать ему? Толя закончил факультет прикладной математики в далёком 1981 году, это был всего второй выпуск нового факультета. Инженер-программист считался необычной и перспективной профессией будущего (так оно и вышло). Но он пришёл не за модной специальностью, как девушки в его группе. Он пришёл туда, куда позвало сердце.

За свою карьеру Толя сменил десяток работ. Советские НИИ, НПО, потом кооперативы, несколько банков, торговые предприятия. Он написал бухгалтерию и склад для местного универсама в FoxPro под DOS задолго до того, как такая идея пришла в голову Борису Нуралиеву. Он написал программу, которая диагностировала хронические болезни просто по скану сетчатки, за что получил государственную премию. Но Толю никогда не интересовал бизнес. Деньги нужны были только для того, чтобы отдать их жене. Всегда его интересовало лишь решение интересных задач.

Есть разработчики, у которых такое призвание — писать код. Программисты от Бога. Толю невозможно представить в роли менеджера. Ему самому неприятно командовать коллегами, да и вообще не очень комфортно в коллективе, со всеми этими разговорами на посторонние темы, которые отвлекают от главного. Просто не такой склад души. Абсолютный профессионал, который любит и хочет решать сложные технические задачи, больше ничего. Он в этом лучший. И не желает заниматься ничем другим.

И таких много вокруг. Не только в программировании, но и в других специальностях. Механик с «золотыми руками», плиточник, шофёр, плотник, учитель. Специалист высочайшего уровня, который счастлив в том, что он делает лучше всех. И это абсолютный, высочайший уровень счастья.

Пока к нему не придёт эйчар.

Карьерные пути


Говорят, что карьера — изобретение 20 века. Это верно в некотором смысле. Само слово существовало и раньше, но его значение действительно сильно изменилось.

В прежние века оно означало «направление публичной или профессиональной жизни человека». Но только в 20 веке с распространением профессионального образования, появлением большого количества профессий стало возможным «планировать» и «проектировать» карьеру.

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

У человека есть призвание, профессия, жизненный путь. Он идёт по нему. Делает то, что умеет лучше всего. То, что должен делать. Это было нормально. По крайней мере, это казалось нормальным. Пока не появились «эйчары» с профессиональным подходом к построению карьеры и проектированию карьерного пути.

На их «профессиональный» взгляд существует стандартный карьерный путь, по которому якобы должен идти разработчик: от джуниору, миддла, сеньора к архитектору, тимлиду. А затем — в менеджмент, то есть в руководство, или в бизнес. Основать успешный стартап, пробиться в FAANG или заработать миллиард — якобы это высшее достижение.

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

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

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

  • умение договариваться;
  • избегать конфликтов;
  • находить компромиссы;
  • сглаживать углы;
  • учитывать все мнения и советы;
  • говорить обтекаемо, чтобы никого не обидеть

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

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

Это же абсолютно разные вещи.

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

Вот почему некоторые успешные программисты никогда не станут менеджерами. Им просто это неприятно. Это противоестественно самой природе технического специалиста.

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

Другие варианты


Уход в менеджеры — далеко не единственный путь для разработчика. И не самый выгодный. Есть другие варианты:

  • Специализация. Углубление в узкую нишу, где можно стать лучшим. Обычно уникальным специалистам платят больше, чем менеджерам.
  • Супер-разработчик (10х). Прокачка профессионализма до такого уровня, что можно работать на нескольких работах как подрядчик (ИП), брать самые сложные и интересные задачи, с которыми не справляются другие, и зарабатывать на порядок больше среднего программиста. Такие люди развиваются профессионально, изучают новые языки, некоторые ездят на конференции и заводят широкие связи в индустрии.
  • Разработчик легаси. То же самое, что супер-разработчик, но здесь отсутствует постоянное саморазвитие, то есть это спокойный вариант для тех, кто не хочет отдавать работе ни одной лишней минуты, ценит баланс, семейную жизнь, многочисленные хобби.
  • Смена карьер. Есть много интересных профессий вокруг программирования: наука, преподавание, финансы, технический маркетинг и др.



Екатерина Фролова, руководитель департамента внутренних коммуникаций и бренда работодателя Группы МВидео-Эльдорадо:
— Далеко не все люди готовы быть руководителями, и это совершенно нормально. В МВидео-Эльдорадо мы стремимся построить сотруднику индивидуальный профессиональный трек. Это может быть горизонтальный рост, повышение квалификации, развитие каких-то специфических профессиональных навыков и умений. У нас практикуются горизонтальные перемещения, постоянно проводится обучение персонала, предлагаются возможности для управления проектами компании через специальную биржу.

Супергерои


Знакомьтесь, Чак Норрис от программирования, супер-разработчик (пункт 2) по классификации выше.

Джефф Дин


Джефф Дин (на фото справа и на КДПВ в начале статьи) — легендарный программист Google, которого в шутку сравнивают с Чаком Норрисом, сочиняя про него добрые мемы.

«Джефф Дин компилирует и запускает свой код перед коммитом, но только чтобы проверить на баги компилятор и CPU».

Ещё в школе Дин написал программу для обработки больших объёмов эпидемиологических данных, которая была, по его словам, в 26 раз быстрее любого профессионального софта в данной области. Позднее его школьную разработку Epi Info стали массово использовать в центрах контроля заболеваний по всему миру.

«Когда Джефф Дин разрабатывает программу, то сначала создаёт бинарник, а потом пишет исходный код как документацию».

В студенческие годы Джефф работал над компиляторами. Ему всегда нравилось создавать программы, которые нацелены на максимальную производительность. В один из ведущих программистов Google считается соавтором ключевых инфраструктурных систем этой компании. Сначала он написал фреймворк MapReduce, который сейчас считается стандартом в обработке больших объёмов информации в кластерах.

«Джефф Дин родился 31 декабря 1969 года в 23:48. Ему потребовалось 12 минут, чтобы запустить свой первый счётчик времени».

Затем была высокопроизводительная БД BigTable на базе Google File System и феноменальная система Spanner, база данных, которая глобально распределена по множеству дата-центров Google на разных континентах — и при этом обеспечивает целостность и синхронизацию данных. До создания Spanner почти никто не верил, что такое вообще возможно сделать.

Примерно с этого момента биография Джеффа Дина начала превращаться в сборник легенд.

«Однажды в 2002 году, когда поисковый бэкенд отключился, Джефф Дин два часа вручную отвечал на вопросы пользователей. В этот период качество поисковой выдачи существенно возросло».

«На клавиатуре Джеффа Дина две клавиши: 1 и 0».

«Когда Грэм Белл изобрёл телефон, то увидел пропущенный вызов от Джеффа Дина».

«Джефф Дин всё ещё ждёт, когда математики найдут шутку, которую он спрятал в разрядах числа Пи».

«На собеседовании в Google Джеффа спросили, что следовало бы из равенства P=NP. Он ответил: «P = 0 или N = 1». Затем, пока собеседующий ещё не перестал смеяться, Джефф присмотрелся к публичному сертификату Google и выписал приватный ключ на доску».

Таких немало в индустрии. Как наш Толя, они держатся в тени, избегают известности и находят удовлетворение только в одном: решение технических задач. Чем сложнее — тем интереснее. Их профессиональное развитие — это решение всё более и более сложных головоломок.

Справедливости ради нужно упомянуть, что Джефф Дин сейчас руководит подразделением Google AI, так что он тоже шагнул в менеджеры и по факту управляет командой разработки ИИ.

P. S. Кстати, нам по-прежнему нужны талантливые программисты. Список актуальных вакансий по ссылке.

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


  1. crea7or
    25.01.2022 13:47
    +4

    натырили чужих постов себе? https://habr.com/ru/company/itsumma/news/t/510258/


    1. mvideo Автор
      25.01.2022 13:52
      +3

      Привет! Спасибо. Нет. Убрали биографический повтор.


  1. ilmarinnen
    25.01.2022 14:03
    +2

    Написано неплохо. Я со своим цейтнотом до конца дочитал.


  1. Sklott
    25.01.2022 15:39
    +10

    «На собеседовании в Google Джеффа спросили, что следовало бы из равенства P=NP. Он ответил: «P = 0 или N = 1». Затем, пока собеседующий ещё не перестал смеяться, Джефф присмотрелся к публичному сертификату Google и выписал приватный ключ на доску»

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


    1. Alexandroppolus
      25.01.2022 16:10
      +10

      Полагаю, в айтишной среде всем известно, что подобрать приватный ключ - это NP


      1. Ru6aKa
        25.01.2022 18:45
        +3

        No Problem? :)


        1. AlexWoodblock
          25.01.2022 18:57
          +2

          Если это будут так легко подбирать, то это уже Nam Piz**ts :)


  1. mwf
    25.01.2022 16:07
    +4

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

    ...
    - игнорировать мнения и советы от некомпетентных коллег;
    - действовать смело и решительно.

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

    Можно сказать, что в современном мире, особенно на удалёнке, коммуникативные навыки должны быть адекватно развиты. И они постепенно переходят в hard-skills, особенно при росте грейда, и особенно при работе в команде.

    Нормальная коммуникация сэкономит много времени и сил всех и каждого.

    И не стоит забывать, что все люди и все ошибаются. И надменное "да я лучше знаю, да у меня Х лет опыта!" как мысленный ответ джуну может выйти боком.
    И джуны бывают правы :)

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

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

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


    1. RoykerZen
      25.01.2022 16:36
      +6

      И не стоит забывать, что все люди и все ошибаются. И надменное "да я лучше знаю, да у меня Х лет опыта!" как мысленный ответ джуну может выйти боком.
      И джуны бывают правы :)

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


      1. tommyangelo27
        25.01.2022 17:32
        +3

        Уже писал в другом топике — лет 6-7 назад я себя уверенно называл Senior (на тот момент 4 года опыта работы было).

        Потом подучился ещё, поработал с разными людьми, и теперь сильно не уверен, что могу себя так называть =)


    1. ermadmi78
      25.01.2022 21:04

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

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

      Альтернативы следующие:

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

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

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

      Мы не сделали скандала —
      Нам вождя недоставало:
      Настоящих буйных мало —
      Вот и нету вожаков.


      1. ermadmi78
        25.01.2022 21:24
        +4

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


        1. MegaMANGO
          27.01.2022 14:42

          Альфа самец? Симбиоз с технарём? Человеческое стадо?


      1. ermadmi78
        25.01.2022 21:40

        Еще такой парадоксальный момент. Для бизнеса пункт 2 обычно выгоднее, чем пункт 1. Во втором случае фейл происходит гораздо быстрее и "нагляднее", чем в первом. Соответственно бизнес раньше принимает решение о закрытии неудачного проекта, и теряет меньше денег :)


      1. Bigata
        27.01.2022 07:20

        Браво!!!


  1. PkXwmpgN
    25.01.2022 16:51
    +6

    P. S. Кстати, нам по-прежнему нужны талантливые программисты. Список актуальных вакансий по ссылке. (https://hh.ru/employer/2523?dpt=2523-2523-mvideo#it)

    Вакансии

    Видимо вы ищите талантливых "тыжпрограммистов".


    1. kirichenec
      27.01.2022 09:23

      Просто им нужны хард-скилы в прямом их понимании)


  1. MentalBlood
    25.01.2022 16:58
    -2

    Про софт и хард скиллы прям очень хорошо: и просто, и содержательно


  1. vba
    25.01.2022 17:24
    +4

    игнорировать мнения и советы от некомпетентных коллег

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

    Скромнее нужно быть, один в поле не воин.


    1. MentalBlood
      25.01.2022 17:49
      +3

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


      1. vba
        25.01.2022 19:05
        +2

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


  1. Mijka64
    25.01.2022 18:43

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

    Прокачать целый пласт новых навыков - довольно интересный челлендж, интересней, чем освоить новый фреймворк. Ну и что уж, опцион - штука хорошая.


  1. AndyPike
    25.01.2022 21:04
    +12

    Скажите, пожалуйста, вот вы в конце выкатываете список вакансий.
    Пошёл посмотреть IT.

    Есть ожидаемый уровень (это хорошо и понятно).
    Есть города (зачем это в IT?).
    Вилка зарплат - ну, у вас действительно почти нигде нет представления о том, сколько вы готовы платить кандидату определённого уровня?

    Не знаю, кого это может привлечь, только отталкивает. Всякие загадочные фразы от рекрутёра, типа, "по результатом собеседования" не принимаются. А потом вопрос "вы нам понравились, но какие ваши зарплатные ожидания?".

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


    1. Politura
      25.01.2022 22:46
      -1

      У FAANG, да и вообще у 99% вакансий в силиконовой долине в вакансиях нет вилки ЗП, приходится прикидывать по всяким посторонним сайтам, стоит ли подаваться на какую-то вакансию, или нет. Вилка чаще всего бывает у всяких мелких стартапов, ну или у рекрутера при первом созвоне можно иногда выпытать, если скилла хватит.


      1. 2ANikulin
        26.01.2022 01:40
        +4

        Где Амазон и где М.Видео? Это риторический вопрос


        1. Politura
          26.01.2022 09:29

          https://www.linkedin.com/jobs/search/?currentJobId=2892217375&geoId=90000084&keywords=senior software engineer&location=San Francisco Bay Area&start=25

          Зарплатных вилок нет и у компаний на 1-10 человек. Очень редко кто-нибудь пишет пишет сумму.


  1. akurilov
    25.01.2022 22:10
    +2

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

    Звучит как диалог из первого терминатора


  1. vgogolin
    26.01.2022 04:03

    Джефф Дин сделал мой день!

    «Когда Джефф Дин разрабатывает программу, то сначала создаёт бинарник, а потом пишет исходный код как документацию».

    «На клавиатуре Джеффа Дина две клавиши: 1 и 0».

    Исходный код нулями-единицами писать это вам не мелочь... )


  1. KvanTTT
    26.01.2022 04:26

    Вообще-то программисту тоже нужно "договариваться" с памятью и процессором, смотря что где важнее, идти на компромиссы.


  1. insighter
    26.01.2022 09:43
    +1

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

    .. они начинают управлять командой


  1. ysadyev
    26.01.2022 09:43

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


    1. Krionis
      27.01.2022 09:23

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