Программист ты или кто?

c2a7165c4034b4f339754dda92d3389d.png

В марте 2022 года Telegram обогнал WhatsApp по объему трафика в России. Стоит отметить, что второе после ВКонтакте гениальное детище Павла Валерьевича Дурова множит своих адептов с каждым прожитым днем. Функциональность всеми любимой «телеги» расширяется в геометрической прогрессии. Собственно, это и натолкнуло на вопрос, в чем секрет успеха того или иного технологического проекта? Что в основе, гений создателя или мастерство команды? Должен ли босс уметь кодить, учитывая тот факт, что Дуров, например, по образованию филолог. Справедливости ради стоит отметить, что, еще будучи студентом, тот создал массу довольно любопытных интернет-проектов.

Кодить или не кодить, вот в чем вопрос…

Можете без гугла назвать пятерку основателей технологических компаний, не умеющих программировать? Первым в голову приходит Стив Джобс, наверное. Еще? Джек Ма из Alibaba, Татьяна Бакальчук из Wildberries, Федор Овчинников из Додо Пицца, Андрей Кривенко из ВкусВилл. Вы можете возразить, резонно заметив, что технологическая продуктовая и сервисная компания имеют принципиальные различия, но с той долей цифровых технологий внутри каждой из упомянутых компаний, быть в стороне от ИТ сегодня вряд ли возможно. Или это ошибочный стереотип?    

a5a3d2836db09d2ee8b27f7539fa08b9.png

В книге Programmers at Work на 230 странице можно найти любопытное интервью с Джефом Раскиным, создателем легендарного Apple Macintosh, относительно личности Стива Джобса и его вклада в первые проекты компании.       

«У него [Джобса] никогда не было никаких проектов. Он ничего конкретного не разработал. Воз [Стив Возняк] разработал Apple II. Кен Ротмюллер и остальные сделали Lisa. Я со своей командой разработал Макинтош. Уэнделл Сандерс сделал Apple III. А что сделал Джобс? Ничего».

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

Ему вторит Стив Возняк, сооснователь Apple:»Стив никогда не программировал. Он не был инженером и не делал никакого оригинального дизайна, но он был достаточно техничен, чтобы изменять, изменять и добавлять к другим проектам».

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

e3165c35a40842417715eb31b7ad02a6.png

А что насчет Джеффа Безоса? Знает ли он что-то о программировании? Определённо, да! Джефф с отличием окончил Принстонский университет в 1986 году со степенями по электроинженерии и компьютерным наукам. До начала 1994 года он работал по специальности на Уолл-стрит на различных должностях. Занимался Безос там разработкой сетей для международной торговли. Так что хотя бы что-то на бейсике он кодить способен (шутка). 

На самом деле, Джефф Безос вместе со своими первыми сотрудниками Шел Кафан и Полом Дэвисом сделали большую часть работы по созданию сайта Amazon. Более того, он приложил немало сил для создания голосового помощника Alexa и умных колонок Amazon Echo и Amazon Echo Do. Так что, он точно знает, что у Amazon под капотом.

100dbd3491aaa870730096e0e03bcf63.png

В родных Пенатах примеров не меньше. Создатель социальной сети Одноклассники Альберт Попков, глава Лаборатории Касперского Евгений Касперский, сооснователь Яндекса Илья Сегалович, Игорь Сысоев из Nginx, всех их объединяет глубокое понимание особенностей созданных их руками продуктов.  

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

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

Поэтому как-то так получилось, что у меня в команде были люди, которые мехмат заканчивали, ВМК, а я ими всеми руководил нахально. Не то что руководил — слово «руководил» не подходит. Коммуницировал, как бы так выразиться. То есть я их понимал, они меня понимали», — отметил Илья Сегалович

Зачем владеть языками?

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

Среди доводов в пользу «кодить», чем «не кодить», можно выделить следующие:

  1. Понимание внутренних технологических аспектов реализации проекта.

  2. Взаимодействие и общение с командой.

  3. Повышение эффективности проекта за счет понимания специфики.

  4. Способность принимать оптимальные решения в силу наличия специфических знаний.

  5. Саморазвитие, тем более в случае, если вы не собственник бизнеса, а наемный менеджер, готовый к карьерному росту.   

Мы спросили мнение ИТ-лидеров М.Видео-Эльдорадо:

37690a1d64843e39593b05f054388705.png

Александр Соколовский, CIO: — Постоянный практический опыт в разработке крайне важен и полезен. Более того, я считаю, что если ты CIO, ты все равно должен не терять технологические навыки. Иначе есть риск быстро «технологически» отупеть. Меня, конечно, к реальному программированию в наших продуктовых командах, к сожалению, не допускают. Говорят «иди лучше руководи. Но у меня есть свой репозиторий в Github (https://github.com/amsokol), где я регулярно с чем-то экспериментирую и делаю для себя.

99deef7d5f7743a0ce500f83826211a4.png

Андрей Ревяшко, CTO финтех-направления:  — Я считаю, что знание основ программирования, и даже более глубокое погружение в тему — это залог успешного развития любого технологического проекта. Вы точно сможете объяснить команде, что вы от людей хотите и при необходимости, даже продемонстрировать MVP. Вы не будете выглядеть инопланетянином, да и коллеги перестанут разговаривать с вами на птичьем языке.

© Habrahabr.ru