project-management
February 12, 2023

Звезды разработки 

Что будет если вы на самом деле наймете звезду? Что будет если к вам на собеседование придет бывший сотрудник Гугла и вы решите его нанять.

Да, так тоже бывает.

В жизни вообще бывает всякое:

жизненные трудности, странные обстоятельства, депрессии, зависимости, разочарования и разводы с разделом имущества.

Еще есть арест, тюремный срок и депортация — но не будем о совсем уж грустном.

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

Суммарно.

Возбудились?

Выдыхайте — за весь мой долгий стаж в ИТ было лишь три таких случая, когда на собеседовании появлялась условная «звезда» — человек безусловно талантливый, с очень серьезными и глубокими знаниями, с опытом работы в FAANG или в самых «звездных» областях вроде HFT, естественно в зарубежных компаниях. Речь не о «поговорили за кружкой пива», а о самом настоящем найме, ко мне на работу.

Вообщем это редкость, если только вы не работаете в силиконовой долине.

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

Но тем не менее.

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

FAANG и примкнувший к ним Oracle. AS-IS.

Реалии «больших» мальчиков

Есть устоявшееся мнение что любой бывший разработчик условного Гугла заткнет за пояс сто «обычных» и сможет реализовать какой угодно проект. Скромно молчу про возможности чего-то там «починить» и исправить.

Ээм, к сожалению все не так просто и однозначно:

Представьте себе огромный древний завод. Как именно он работает уже никто не помнит, когда и кем он построен — теряется в веках. Все что умеет и делает нынешнее поколение инженеров — лишь поддержание работы огромных механизмов. Они выполняют ежедневные «магические» ритуалы, истинный смысл которых давно утерян.

И все это сильно завязано на магию религию и оккультизм.

Нет это не Warhammer 40k, это любой большой программный проект изнутри.

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

Теперь умножьте это говно на тысячу — получите состояние дел в компании уровня Big Tech.

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

Но, проще говоря — «строили не они».

Поэтому в большинстве случаев (а я бы сказал в 99% случаев, судя по их постам в соцсетях):

осовременный выходец из FAANG в душе не будет еб#ть как там все было устроено, как работало и что же вообще он там делал столько лет.

Это на случай если вы хотели перенять опыт.

Все свое родное

Еще одной интересной особенностью всех больших технологических компаний является любовь до стадии фетиша к собственным средствам разработки:

библиотеки, фреймворки, даже целые языки — все свое, сваренное «in house»

Круто, спору нет.

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

Ну и много он вам навоюет без своего проводного «бластера»?

Вообщем нравится это кому-то или нет но:

обычная коммерческая разработка для ПАО «Завод Дяди Васи» не предполагает in-house разработку фреймворков и языков программирования, в рамках проекта.

Понимаю что огорчил, да.

А меня в свое время огорчило, что человек проработавший в Гугле лет так 7-8 и занимавшийся там разработкой на Java не знал что такое Spring.

Для непричастных:

это примерно как панк, не знающий кто такой Сид Вишес.

C одной стороны это вызвает восхищение, примерно как 28-летняя девственница модельной внешности, а с другой — страх и ужас:

как бл#дь так может быть?

Теперь представьте процесс «переучивания» такого кадра и вливания в коллектив:

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

И все это с презрением — он же элита (и это объективно так), а вы — говно. И ваш проект — дешевое говно (по сравнению с Гуглом-то), которое делают тупые, криворукие обезъяны (по сравнению со сплошными PhD. в Гугле).

Представляете как весело вам всем станет жить?

Полная Свобода Действий

Следующей (вашей) проблемой, является куда большая свобода действий в большой ИТ компании, к которой выходцы из нее быстро привыкают:

Большая ИТ компания может себе позволить тратить время и силы на эксперименты. А вы — нет.

Фейсбук с Гуглом легко могут открывать и закрывать хоть по сотне проектов в день — собирая и разбирая под каждый целую отдельную команду.

Отсюда ощущение «вечного ресерча» и студенческого кампуса:

возможность ваять проекты на любых самых извращенных технологиях или писать свои в процессе.

До релиза и использования ведь большинство из них не доживают, так чего париться?

И сроков жестких нет.

И бюджет практически резиновый.

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

В рамках бюджета и с вечно горящими сроками.

Нерабочая активность

Следующим удивительным открытием из жизни шлюхи в Дубае «профи в большой ИТ-компании» является факт траты кучи времени на сторонние дела:

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

Я сам всегда рад поучаствовать в таком, но блин не все же рабочее время. Профит для крупной компании от этих активностей ясен и понятен:

работа на ее собственный бренд и реклама ее компетенций — «посмотрите какие крутые люди у нас работают».

А для вас и вашего говнопроекта?

Вам ведь работать надо, ошибки исправлять, дорабатывать продукт и все такое. Но точно не языком по конференциям стучать.

HFT и скорость

Врядли многие из читающих в курсе что такое «высокочастотный трейдинг», поэтому поясню:

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

И очень быстро тут это за миллисекунды.

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

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

Представьте что они делают с софтом.

И вот внезапно такой уникальный эксперт (без преувеличений) оказывается перед вами. На собеседовании.

Ну что могу сказать:

наверное это круто — строить систему без динамических структур вообще, используя лишь статические методы и примитивные типы. Использовать прямой доступ к памяти и отключать сборщик мусора. Ради производительности.

На Java в стиле чистого Си.

Но я такого п#здеца видеть в своем обычном дневном ERP/CRM не хочу, извините. Даже если это ускорит работу на пару процентов.

Даже если на двадцать.

Да хоть на 100% с запуском на орбиту — поддержка и быстрая беспроблемная изменяемость куда важнее для корпоративного софта.

I never asked for this.

Нехорошие выводы

И вот сидит перед вами человек, орел настоящий эксперт в своем деле, попавший каким-то образом в затруднительное положение.

Так бывает.

Не место ему в вашем говнопроекте, в одном стойле с вашими быдлокодерами. Он это понимает, вы это понимаете.

Для него ваша компания и проект — временные, пока не оклемается и не встанет на крыло.

Для вас — ну вроде как очевидный профит от привлечения уникального эксперта. Редкий случай когда обе стороны все прекрасно понимают.

Вообщем стоит ли заморачиваться и рисковать с наймом «звезды разработки» — решайте сами.

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