Многие люди думают о волнующих их проблемах перед сном или по пробуждении. Я не исключение. Сегодня с утра у меня в голове всплыл один коммент с Хабра:
Коллега в чате поделился историей:
У меня в позапрошлом году был офигенный клиент, это ещё когда я брал чистый «кризис».
У клиента в девгруппе две команды, каждая занимается своей частью продукта (условно, бэкофис и сторфронт, т.е. софт работающий над формированием заказа и софт, работающий над исполнением заказа), изредка между собой интегрирующийся.
Команда бэкофиса прям вот совсем в днище ушли: полгода сплошных косяков, собственники грозятся всех уволить, наняли консультанта, после консультанта наняли более другого (меня). Причём вторая команда (сторфронт) работала норм и продолжала работать норм, именно бэкофисная, которая до этого тоже норм работала, стала косячить. Команды в разных офисах сидят, друг на друга привыкли псить.
Причина: стор и бэк это одна система, в ней куча зависимостей, команды в разных офисах, между собой не общались. На сторфронт все время «смотрят» собственники, соответственно у них там новые фичи, идеи и контроль. В ней был мальчик-на-все-руки, такая комбинация из БА, дизайнера и «принеси нам кофе». Вот этот мальчик, незаметно для своей команды, выполнял кучу мелких задач типа «предупредить вторую команду о деплое», «проапдейтить документацию» и т.п. рутину, вплоть до «внести в жире в тикет всякие номера версий и компоненты». Но код мальчик не писал и в один момент собственники решили его оптимизировать, нафиг уволив. Для команды стора ниче не поменялось, они просто не вносили и не апдейтили доки, а команда бэкофиса оказалась в ситуации, когда релизы стора ломают у них что-то, и это их проблемы, а если их релизы ломают что-то у стора, это опять их проблемы, потому что стор на виду у собственников :)
Чем меня зацепил этот коммент и что обрящет ищущий из заголовка — под катом.
Я занимаюсь разработкой web-приложений лет 20, поэтому фронт/бэк для меня не просто слова. Это очень сильно связанные вещи. Я, например, не могу представить себе ситуацию, когда фронт разрабатывается в полном (или очень сильном) отрыве от бэка. На обеих сторонах оперируют одними и теми же данными, выполняют очень похожие операции. Я примерно представляю, какой объём информации перемещается между разрабами обеих команд для согласования разработки, и сколько времени и как часто нужно эти согласования делать. Команды не могут не общаться плотно, даже находясь в разных часовых поясах. Тем более, при наличии JIRA.
Я знаю, что предупреждать о деплое фронта бэк-разрабов бессмысленно. Новая версия фронта ничего не может сломать на бэке, а вот наоборот — да. Это разрабы фронта заинтересованы в оповещении разрабов бэка, что им нужен новый или изменённый функционал. Фронт зависит от деплоев бэка, а не наоборот.
Что мальчик, который "принеси нам кофе", не может быть БА (если под БА подразумевается "бизнес-аналитик"), а БА не может быть "мальчик, принеси нам кофе". И уж точно, "вносить в жиру всякие номера версий и компоненты" без обсуждения с командами разрабов ни "мальчик", ни БА не может. Это как телега впереди лошади.
Раз "мальчика" уволили, то данные функции, от "принеси кофе" и до "внеси в жиру", должны были перераспределиться между другими членами команд. В устоявшейся группе потоки информации и роли закреплены, если исполнитель одной или нескольких ролей ушёл со сцены, то у остальных членов группы потребность в получении привычной информации от привычных ролей остаётся. Они просто не могут не заметить, что информация, нужная для работы, перестала к ним поступать. Это как наркоман не может не заметить факт прекращения поступления наркотиков. И как наркоман ищет и находит другие каналы, так и члены группы будут пытаться найти источники нужной им информации на "той" стороне и новых исполнителей старых ролей. И они обязательно найдут. Как минимум того, кто, по их мнению, должен дать им нужную информацию.
Даже если допустить, что привычные каналы информации накрылись, а тот, кто должен, не считает, что должен, то разрабы бэка под угрозой увольнения не будут полгода скрывать причины собственных неудач от собственника, зная, что косяки у них идут из-за отсутствия нужной им информации. Собственники не будут "тупить" полгода, видя, что раньше нужная информация "была в жире", а сейчас её никто туда не вносит. И первый консультант вряд ли был настолько непрофессионален, чтобы не поговорить с разрабами бэка и не выйти на источник проблемы — отсутствие согласования между командами. Именно в этом причина описываемых бед, а не в увольнении "мальчика".
Банальное отсутствие коммуникации между разработчиками — типовая причина кучи проблем в разработке и не только. Не нужно быть выдающимся консультантом для её обнаружения. Достаточно быть просто разумным.
Я считаю, что вся эта история придумана и красиво изложена. Ну, не совсем полностью придумана — все элементы взяты из жизни (фронт, бэк, разработка, мальчик, кофе, "жира", ...). Но они соединены так, что в жизни такая конструкция не встречается. По отдельности всё это можно встретить в окружающем мире, но в такой комбинации — нет. Выше я написал почему.
Тем не менее, изложено очень правдоподобно. Читается с интересом и присутствует личная вовлечённость. Сочувствие к "мальчику-на-все-руки", неоценённому маленькому механизму большой машины (это же про меня!). Снисходительность к разработчикам, таким умным и опытным, но не видящим дальше собственного носа (они же вокруг меня!). Лёгкая насмешка над собственниками, богатенькими дядечками, своими руками сделавшими себе "бо-бо" и не понимающими причин (ну вылитое моё руководство!). Пренебрежение к первому "консультанту", не сумевшему найти такой простой источник проблем (ага, приходил недавно такой в очках, ходил с умным видом), и восторженное единение с "настоящим" консультантом, который единственный смог оценить настоящую роль мальчика-на-все-руки (то есть меня!).
Чувствуете внутреннее удовлетворение после прочтения этого комментария? Наша роль маленьких винтиков в большом механизме на самом деле не такая и маленькая! Замечательно изложено, пусть и не правда. Зато какое приятное послевкусие.
Я не знаю, что за коллега и в каком чате поделился этим откровением с коллегой mkrentovskiy и почему коллега mkrentovskiy решил его опубликовать под статьёй "Сколько лет тайга ходи — понимай нету" выдающегося хабра-автора nmivan'а (находящегося, между прочим, на первом месте в рейтинге Хабра на данный момент!), но я признаю, что коллега mkrentovskiy сделал это исключительно удачно. Посыл коммента и стиль изложения настолько совпадают с посылом и стилем других публикаций nmivan'а, что можно подумать, что кризис-консультант из коммента и ГГ многих публикаций nmivan'а — это одно и то же лицо.
Я довольно много читал публикаций Ивана Белокаменцева, когда автор начал свою деятельность на Хабре (в 2017-м году). Некоторые даже с удовольствием (раз, два). У него хороший слог и интересная подача материала. Его истории очень похожи на истории из жизни, но у них практически нулевая возможность произойти на самом деле, в реальности. Вот как с этой историей в комменте.
По правде говоря, лично я не считаю, что с публикациями Ивана Хабр стал лучше. Но его рейтинг и мнения других обитателей Хабра говорят об обратном:
Я не понимаю Вашего нытья. Хабр уже давно скатился, а автор дает немного огонька и повышает настроение читателям ) вытаскивая ресурс из пучины.
Да, Хабр — это не благотворительность, Хабр — это коммерческий проект. Хабр — зеркало, которое отражает наши желания. Не мои персональные желания и не желания каждого отдельного посетителя, а совокупность всех наших желаний — "среднее по больнице". И Иван Белокаменцев лучше всех чувствует, что нужно нам всем в совокупности, и даёт это нам.
Возможно, я бы не написал эту статью, если бы я не начал смотреть сериал "Молодой Папа".
"Мы потеряли Бога" (с)
Это из сериала. И это про нас.
Нас перестала увлекать реальность, созданная Творцом.
Богом, Природой, Большим Взрывом — как угодно. Реальность она есть. Вокруг нас и независимо от нас.
Мы живём в ней в соответствии с законами природы (Замыслом Божьим). Мы познаём законы (Замысел) и учимся использовать реальность, в которой мы живём, чтобы жить ещё лучше. Мы проверям практикой наши догадки, отбрасывая неверные и оставляя актуальные. Мы взаимодействуем с реальностью и мы изменяем её.
И мы очень сильно преуспели в этом.
Человеков на планете много. Очень много. При нынешней производительности труда нам не нужно больше выживать — меньшинство может обеспечить большинство всем необходимым. Большинству же нужно себя чем-то занимать. Исторически излишек ресурсов, выделяемый на творчество, попадал к наиболее талантливым (или наиболее пробивным, что тоже талант). Сейчас же свободных ресурсов столько, что достаётся всем сколь-нибудь талантливым, вне зависимости от уровня. Сравните, сколько фильмов выпускается в год по всему миру, и сколько из них можно смотреть. Сколько книг пишут, и какие из них можно читать. Сколько информации вываливается в интернет, и что из этого годно к употреблению.
Почему так популярна профессия IT-шника? Да потому что в IT можно сливать бездну ресурсов и никто и глазом не моргнёт (вспомните хотя бы про проблему 2000-го года). Ведь в IT можно годами разрабатывать приложения, которые устареют ещё до запуска, можно пытаться интегрировать несовместимые компоненты и таки заставить их крутиться, можно раз за разом изобретать собственные велосипеды, а можно прямо сейчас заняться поддержкой программ на Fortran'е, который порос мхом ещё 20 лет назад. В IT можно провести всю свою жизнь и не сделать ничего полезного. И самое главное — никто этого не заметит! Даже ты сам.
Мало кому из нас удастся оставить след в IT-индустрии. А оставить по себе добрую память удастся ещё меньшему количеству народа. Результаты нашего труда обесценятся в ближайшие лет 10-20 в лучшем случае, а то и раньше. И уж точно при нашей жизни (если мы дотянем до пенсионного возраста). Мы не сможем показать нашим внукам компьютерные системы, над которыми в молодости работал их дед. Люди просто забудут их названия. Я в начале своей карьеры поднимал почтовые станции cc:Mail под "полуосью". Мне до пенсии лет 20 и лет 10 до внуков, но уже сейчас большинство из вас ничего не слышало про "выдающееся почтовое приложение середины 90-х" ("top email software package of the mid-1990s").
Может быть в реальности мы слабо осознаём тщетность нашего IT-шного бремени, но на подсознании мы стремимся убежать туда, где нам комфортно. В выдуманные миры, где использование Scrum и Agile всенепременно приводят к появлению продуктов, на десятилетия покоряющих мир своей полезностью. Где мы не простые маленькие шестерёнки больших механизмов, а шестерёнки, без которых большие механизмы ломаются. Где наша жизнь не протекает в бессмысленном исполнении рутинных действий, а наполнена творчеством и созиданием, результатами которого мы можем гордиться.
Мы убегаем в эти прекрасные, кем-то выдуманные миры от нашей собственной никчёмности в мире реальном. Мы ищем в них утешение.
Мы ищем утешение в том числе и на Хабре. И Иван его нам здесь даёт.
nmivan
Мне кажется, не стоит как-то сопоставлять меня, читателей Хабра и сам Хабр. Тогда всё встанет на свои места. Нет никаких закономерностей, тенденций и кармических последствий ни для кого.
Контент Хабра делают люди. Нет никакого «хабр уже не тот» — это люди не те. Ну, те, что контент пишут. В смысле изменились люди. И читатели, и авторы.
Те, кто писал статьи, когда «хабр был лучше», просто уже не пишут статьи. Кто-то умер, кто-то постарел, кто-то стал большим начальником или собственником и ему некогда.
А те, кто пишут сейчас — другие люди.