Как хорошему разработчику не стать плохим менеджером - [40]

Шрифт
Интервал

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

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

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



Кейс "Менеджер-программист"

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

Алексей был опытным разработчиком (Java/Scala developer/Data Engineer с опытом в C++), но его поставили на проект с абсолютно незнакомыми ему технологиями (web + Python + Front End). Причём времени на “раскачку” ему не дали, и ему сразу пришлось принимать важные технические решения, вроде выбора технологического стека для проекта и решения проблем с производительностью. Из-за этого Алексей иногда делал задачи дольше, чем мог бы, а его оценки были неточными.

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

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

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

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

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

Менеджер был доволен собой. Он сказал Алексею подумать и принять решение, чей код идёт в результате в продакшн.  Есть код Алексея, который писался две недели и всё ещё тормозит, а есть код Игоря, который написан всего за два дня и просто летает. Может, не рисковать и использовать изящное и простое решение Игоря?

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

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

На этом история не закончилась. После этого менеджер оспаривал любую оценку Алексея, заявляя, что всё должно быть проще и быстрее. Менеджер просил других разработчиков сказать свою оценку, чтобы проверить оценку Алексея. Иногда это были даже разработчики из других проектов. Все они, кстати, подтверждали оценки Алексея, но это не помогало.

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


Анализ

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

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


Рекомендуем почитать
Иллюзия знания

Человеческий разум одновременно и гениален, и жалок. Мы подчинили себе огонь, создали демократические институты, побывали на Луне и расшифровали свой геном. Между тем каждый из нас то и дело совершает ошибки, подчас иррациональные, но чаще просто по причине невежества. Почему мы часто полагаем, что знаем больше, чем знаем на самом деле? Почему политические взгляды и ложные убеждения так трудно изменить? Почему концепции образования и управления, ориентированные на индивидуума, часто не дают результатов? Все это (и многое другое) объясняется глубоко коллективной природой интеллекта и знаний.


Сверхчеловек против супер-эго

Фридрих Ницше – немецкий философ, поставивший под сомнение базисные принципы действующих форм морали, религии, культуры и общественно-политических отношений. Главное понятие в философской теории Ницше – образ сверхчеловека, который по своему могуществу должен превзойти современного человека настолько, насколько последний превзошел обезьяну. Сверхчеловек – это творец, могущественная воля которого направляет вектор исторического развития. Зигмунд Фрейд – австрийский психолог, психиатр и невролог, – наиболее известен как основатель психоанализа, который оказал значительное влияние на психологию, медицину, социологию, антропологию, литературу и искусство XX века.


Волшебная Индия, или как жить и управлять людьми в этой стране

Книга рассчитана на широкий круг читателей, интересующихся Азией и, непосредственно, Индией. Она рассказывает о специфике работы в этой стране, организации бизнеса, управлении и взаимодействии с людьми. Представляет собой краткое пособие по этому вопросу. Написана в легкой и познавательной форме, ориентированной на практическое использование. Автор – Евгений Грива, человек, работавший на государственной дипломатической службе в течение двух лет в Пакистане и в качестве Генерального директора российской коммерческой структуры (дочерняя компания нефтехимического холдинга «СИБУР» в Индии) в Индии в течение 4 лет.


Эта книга сделает вас спокойным

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


Французское воспитание. Метод мадам Дольто

Сегодня как никогда актуальны идеи знаменитого в XX веке психолога Франсуазы Дольто. Она с легкостью распознавала мотивы любого поведения детей, проникая в их внутренний мир. До сих пор ходят легенды о том, как мадам Дольто моментально успокаивала младенцев, тонко чувствуя, о чем ребенок хотел ей сообщить. Как научить детей достойно вести себя в обществе взрослых? Почему нужно обсуждать с детьми тему сна? На эти и многие другие вопросы отвечают авторы книги, руководствуясь методом Франсуазы Дольто.


О мышлении в медицине

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