Сеньоры специально пишут запутанный код, чтобы стать незаменимыми? Дискуссия в Threads
В Threads обсуждают, правда ли, что некоторые разработчики специально пишут запутанный код без каких-либо комментариев, чтобы стать незаменимыми на проекте.
Топикстартер поделился мыслью: он вдруг понял, что среди сеньоров распространена практика — они не пишут понятный код и не снабжают его комментариями, чтобы со временем стать незаменимыми на проекте.
— Один коллега за 3 года получил четыре повышения и +210% к зарплате. «Только он понимает эти системы». Два разработчика, пытавшиеся разобраться в его коде, уволились. По моим наблюдениям, так делают около 30% опытных разрабов.
Комментаторы, как это обычно бывает, разделились на два лагеря.
Первые соглашаются: всё так.
— Видел такие проекты, как правило там имеется человек, за которым последнее слово — и это его/её влияние. Пока этот человек на проекте, исправить код на читаемый и поддерживаемый не дадут, если это не исходит от того, кто выше по иерархии. Тоже, кажется, что так они пытаются сделаться незаменимыми.
— Дважды приходил на такие проекты и говорил с руководством. И дважды мне давали понять, что всех всё устраивает. На обоих проектах большую часть переписал по-человечески, вводил какие-то практики, однако меня там нет, а эти «присосавшиеся», скорее всего, и сейчас там.
Кто-то накидывает ещё несколько приёмов и трюков «их выживания». «Например, дробят собственные задачи на нано-подзадачи, а новичкам в команде сбрасывают тяжёлые комплексные таски, чтобы потом в отчёте показать бóльшую производительность, а значит и ценность в глазах микроменеджмента.
Или на встречах отвешивают комментарии к задачам новичков из серии: «Да это очень просто», а свои микро-таски мучают месяцами, выдумывая проблемы, т. к. им легко верят из-за их опыта работы с конкретным клиентским кодом.
Вторые удивлены: они никогда «с подобным не сталкивались». И в целом не понимают, как можно так работать, если существует код-ревью.
Кто-то полагает, что запутанный код — следствие «сжатых сроков и/или халатности/низкой квалификации разработчика». А кто-то пишет, что сам такой разработчик — но всё непреднамеренно: «так автоматически получается. Ещё и документации ноль. А потом совесть не позволяет уволиться…»
— Какие-то сказки! Обычно за непонятный код увольняют, а если нет процесса код-ревью, то это шарага какая-то.
— …Это очень опасный человек для бизнеса: так можно погубить продукт вовсе, придется всё переделывать.
Здесь же, кстати, развернулась небольшая дискуссия на тему, а как люди, которые намеренно запутывают свой код, чтобы задержаться в компании и стать в ней незаменимыми, избегают код-ревью, и где вообще такие водятся.
— Хитрость, наверное, в том, что эти ребята мастерски избегают код-ревью: «срочно в продакшн», «потом задокументирую»…
— …Либо в компании нет процессов, либо наоборот уже бюрократический ад. Поэтому такие отлично сидят либо в мелких шарагах, либо в гигантском бигтехе. В первом случае они «как бы незаменимы», во втором хрен доберёшься до них через все процессы.
Ещё под постом отметились те, кто в целом согласен, но мириться с подобным не готов — особенно если это коснулось их напрямую.
— Мне как раз достался такой код, когда я перешла в новую компанию. Сам автор кода отказывался его комментировать или помогать мне разобраться с ним, т. к. у него «не было времени». Я 2 недели мучалась, эскалировала проблему, пробовала за ним бегать — парень хитрил, как мог. Так вот я разозлилась и написала с нуля новый код, с документацией.
Я в той компании уже 3 года не работаю, недавно встретила бывшего коллегу, он мне сказал: так классно ты тот функционал написала, мы его до сих пор юзаем.
— Нечем гордиться, потому что в один прекрасный момент никто не будет разбираться — просто перепишут этот функционал с нуля, с участием код-ревью, документирования, внедрением стандартов и прочего. Или самого же разработчика заставят переписывать.
Опытные наоборот стремятся чтобы код был понятным, оптимальным и легко читаемым любым разработчиком. Я сам переписывал с нуля проекты, в которых чёрт ногу сломает.
А у вас есть/были такие коллеги? И как считаете — это распространённое явление или всё же нет? Пишите в комментариях.
Читать на dev.by