[Перевод] Ваша любовь к разработке в первую очередь выгодна работодателю
Быть неравнодушным к своему ремеслу — это хорошо, но стоит ли работать задаром?
За свою карьеру я встречал множество влюблённых в своё дело разработчиков. Программистов, глубоко интересовавшихся технологиями, языками программирования, методологиями и самосовершенствованием. Ещё я видел много онлайн-профилей, в которых люди описывают себя как «влюблённых в профессию разработчиков».
Именно эти люди организуют пользовательские группы и общаются в них. Они пишут посты в блогах и публикуют подкасты. В свободное время они делают свой вклад в разработки open source.
Думаю, многие из этих пунктов относятся и ко мне. Однако за последние несколько лет у меня возник довольно серьёзный скепсис относительно правильности такого подхода.
Работа даром
Примерно за последние пять лет я заметил некую новую тенденцию. Программисты пишут мне и спрашивают о платном менторстве. Они предлагают платить мне из собственного кармана, чтобы я стал их ментором.
Разумеется, мне это льстит, но в то же время из-за этого усиливается моё разочарование в отрасли разработки ПО. Поясню: я ни в чём не обвиняю хороших людей, которые так заботятся о своём ремесле, что готовы тратить трудом заработанные деньги на улучшение своих навыков. Скорее, это осуждение поведения работодателей.
По не совсем понятным и сложным причинам, сообщество разработчиков ПО в 80-е и 90-е сформировало культуру антикапитализма и либеральных ценностей, поставившую на пьедестал развитие технологий из любви к искусству. Open source хорошо; коммерческое ПО плохо. Свободное ПО хорошо; коммерческое ПО плохо.
Я не полностью против таких идей, но сегодня стало очевидным, что все эти идеи возымели неожиданные последствия. Например, идея бесплатного ПО привела к созданию экономики, в которой вы, пользователь, больше не клиент, а продукт.
Идея open source тоже кажется по большей мере нефункциональной в качестве средства «реализации своих идей». Крупные технологические компании теперь используют open source. Несмотря на первоначальную враждебность к open source, Microsoft сегодня владеет GitHub и является одним из наиболее активных участников. Google и Facebook контролируют такие популярные фронтенд-платформы, как Angular и React, а также множество других технологий, например, Android или GraphQL. Можете самостоятельно продолжить этот список.
Разработка open source рассматривается как способ заработать доверие, не только для компаний, но и для людей. Хочешь крутую работу в сфере технологий? Покажи мне своё портфолио open-source.
Сегодня участие в open-source-проектах в качестве замены CV как никогда важно.
Я намеренно использовал выше слово портфолио. Как борющийся за хлеб художник вы должны продемонстрировать столь потрясающую выборку своих работ, чтобы смогли поразить потенциального нового работодателя и победить всех конкурентов. Однако, в отличие от голодающих художников, вы уже раздали всё из своего портфолио, как и другие кандидаты на рабочее место. Работодатели получают от этого выгоду. А вы работаете задаром.
Дух влюблённости в работу
Ожидается, что вы «вносите вклад» в ПО с открытым исходным кодом. Почему? Потому что работодателям нужны сотрудники, влюблённые в своё дело.
Чем глубже ты разбираешься с подразумеваемым под этим образом, тем страннее он становится. Хотели бы вы, чтобы инженеры страстно проектировали новые мосты? Нужно ли, чтобы хирург был влюблён в свою работу, когда он вас оперирует? Хотите ли вы, чтобы судьи страстно относились к своей работе, когда оглашают приговор вашему другу?
Мне бы хотелось, чтобы эти люди заботились о своей работе, но предпочёл бы, чтобы они подходили к нему с холодной головой и принимали как можно более рациональные решения.
Почему программирование должно быть страстью?
Я не думаю, что в наших интересах быть влюблёнными в работу, однако это в интересах работодателя. Они ожидают, что влюблённые в своё дело люди не только работают бесплатно, но и ими проще манипулировать. Скажи влюблённому в работу человеку то, что он хочет услышать, и он может оказаться от критического мышления, потому что похвала ему приятна.
Некоторые мейнтейнеры open-source создали критически важное ПО, работающее на множестве платформ. Компании зарабатывают миллионы на этом свободном ПО, а мейнтейнерам часто достаётся всё увеличивающееся бремя по его поддержке и отсутствие денег.
Однако время от времени их «похлопывают по плечу». Их приглашают выступать на конференциях и они могут добавить в свои профили в соцсетях звание создателя Xyz.
Так происходит, пока они не выгорают. В конце концов, слово страсть изначально означало страдание.
Самосовершенствование
Однажды я консультировал организацию, занимающуюся разработкой, помогая ей освоить новую технологию. Постепенно степень моего участия снижалась, и мы с менеджером провели совещание о том, как они могут продолжать без меня. Это было во времена моей работы в Microsoft, поэтому я порекомендовал им создать программу обучения сотрудников. Чтобы сформировать её структуру, они могли, например, изучить какие-нибудь курсы сертификации Microsoft.
Руководитель разработки сразу же отказался от этой идеи: «Если мы так поступим, они уволятся сразу, как получат сертификат».
Я изумился.
Вероятно, вы видели такие цитаты:
«Что если мы обучим наших сотрудников, а они потом уволятся?»«Что если вы не обучите их, и они останутся у вас?»
Это одна из тех цитат, источник которых сложно найти, но её смысл достаточно понятен. Однако её настроение противоречит тому, что обычно происходит.
Разумеется, я встречал нескольких лидеров-визионеров, желающих вкладываться в карьеры своих сотрудников, но большинство руководителей этого не делает.
Хотя я занимаюсь обучением и коучингом по всему миру, больше опыта у мен, естественно, в своём родном Копенгагене, и в Скандинавии в целом. Здесь распространено мнение о том, что всё связанное с работой должно происходить только в рабочие часы. Если работодатель не позволяет проходить обучение во время работы, то большинство сотрудников не будет обучаться.
Что происходит, если ты не изучаешь новые методологии, новые фреймворки, новые языки программирования? Твои навыки устаревают. Не за раз, но постепенно, в течение нескольких лет. Искать новую работу становится всё сложнее и сложнее.
Если твоя рыночная привлекательность снижается, работодатель может обращаться с тобой всё хуже и хуже. В конце концов, куда тебе деваться?
Если ты устал работать с легаси-кодом без тестов, то большинство твоих предложений о совершенствовании будет встречено скептически. У нас на это нет времени. Важнее приносить прибыль заказчику.
Тебе приходится оставаться после работы и по выходным, чтобы устранять «неожиданные» проблемы в продакшене, в то же время укладываясь в дедлайны.
Если работодатель достаточно циничен, то без колебаний будет занимать сотрудников подобным образом.
Уточню: я не утверждаю, что с точки зрения бизнеса правильно обращаться так с опытными сотрудниками, и не говорю, что так ведут бизнес все работодатели, но я видел достаточное количество организаций, соответствующих этому описанию.
Хоть это и разочаровывает, но изучение современных технологий — это ваша ответственность, и если вам не удаётся уделить немного времени самосовершенствованию во время работы, то придётся заниматься этим в свободное время.
Это почти не связано с любовью к работе, а больше относится к самосохранению.
Могу я вам помочь?
Те, программисты, которые обращаются ко мне (и другим) с просьбой о менторстве — это просветлённые, которые действительно поняли всё вышесказанное.
Это не значит, что мне удобно брать заработанные тяжким трудом деньги. Если я учу вас чему-то, что повышает вашу продуктивность, то от этого выигрывает и работодатель. Я считаю, что за это должен платить он.
Я знаю, что большинство компаний этого делать не будет. Также по своему опыту я знаю, что хотя большинство работодателей не волнует, будете ли вы платить мне за менторство, они не хотят, чтобы вы показывали мне свой код. По сути, это означает, что я не смогу быть вашим ментором, если только вы не сможете воссоздать возникшие у вас проблемы в анонимизированных примерах кода.
Но если вы можете это сделать, то можете и спросить у всего Интернета. Можете попробовать спросить на Stack Overflow, а затем «пингануть» меня. Также вы можете спросить меня. Если ваш минимальный рабочий пример интересен, я могу превратить его в пост для блога, и вам не придётся ничего платить.
Люди часто спрашивают меня, как им убедить своих руководителей или коллег делать что-то иначе. Я часто задаюсь вопросом, почему они ещё не приняли технических решений, но, возможно, это в них говорят культурные предубеждения. В Дании тебе часто может сойти с рук принцип «лучше просить прощения, чем разрешения», но в вашей культуре это может оказаться плохой идеей.
Могу ли я магическим образом убедить вашего руководителя организовать процессы по-другому? Без помощи магии, но у меня есть эффективный трюк: сделать так, чтобы он нанял меня (или другого дорогостоящего консультанта). Большинство людей не обращает внимания на советы, которые дают бесплатно, но если они платят за них, то обычно внимательны.
В остальном я могу помочь только так же, как и десятилетиями страстно старался помогать сообществу разработчиков по всему миру: я писал статьи в блоги, отвечал на вопросы на Stack Overflow, писал книги, общался в пользовательских группах и на конференциях, публиковал видео и так далее.
Галочки напротив большинства пунктов
Да, я знаю, что соответствую типажу влюблённого в своё дело разработчика. Я регулярно писал статьи в блоги с 2006 года, ответил на тысячи вопросов на Stack Overflow, провёл более сотни презентаций, бывал гостем на подкастах и написал в соавторстве книгу. Ничего из перечисленного не сделало меня богатым. Если я делаю это не из любви, то тогда зачем?
Иногда это сложная и монотонная работа, но даже при этом я часто ею занимаюсь, потому что не могу себе отказать. Мне нравится писать и учить людей. Наверно, меня можно считать из-за этого «влюблённым в профессию».
Смысл этой статьи не в том, что любовь к разработке ПО — это что-то плохое. Смысл в том, что, вероятно, стоит рассматривать эту любовь как слабость, а не как преимущество. Если вы любите работу, то опасайтесь того, что этим могут воспользоваться другие.
Я осознаю, что не воспринимал мир таким образом, когда начал писать посты в январе 2006 года. Мной руководила страсть. Однако оглядываясь назад, я думаю, что был и привилегированным, и удачливым. Не уверен, что мой карьерный путь можно повторить сегодня.
Когда я начал заниматься блоггингом, это было нечто новое. Только того, что ты пишешь в блог, достаточно было, чтобы привлечь немного внимания. Я оказался в нужном месте и в нужное время.
То же самое справедливо и для Stack Overflow. Когда я начал на нём отвечать, этот сайт было довольно новым, и многие из часто задаваемых вопросов задавали только в мою «смену». Я до сих пор получаю лайки за ответы, данные в 2009 году, потому что эти вопросы люди продолжают задавать. Мне просто повезло оказаться на сайте, когда их задавали там впервые.
Кроме того, у меня есть привилегии — я здоровый мужчина, родившийся в среднем классе одной из богатейших стран мира. Я получил бесплатное образование. В Дании бесплатное здравоохранение и щедрая социальная защита. Пробовать свои шансы в карьере в такой среде не особенно рисково. Я работал в нескольких стартапах. Здесь это не представляет риска. Дважды я работал на компании, которые прекратили свою деятельность; ни в одном из случаев я не потерял денег.
Да, мне везло, но я хочу сказать, что не стоит использовать мою карьеру в качестве модели для своей, как не стоит копировать карьеры Роберта Мартина, Кента Бека или Мартина Фаулера. Такой путь сложно повторить.
Заключение
Но что же можно сделать, если вы хотите выделиться на фоне других? Как расти в карьере разработчика ПО?
Я не знаю. И никогда не утверждал, что это легко.
Если вы хороши в чём-то, то это может помочь, но надо также сделать так, чтобы об этом знали нужные люди. Вероятно, чтобы это произошло, вам всё равно придётся вложить часть своего «свободного» времени.
Просто опасайтесь того, что вами могут воспользоваться. Будьте бесстрастным.
На правах рекламы
Виртуальные серверы с новейшим железом, защитой от DDoS-атак и огромным выбором операционных систем. Создайте собственную конфигурацию в пару кликов, максимальная — 128 ядер CPU, 512 ГБ RAM, 4000 ГБ NVMe.