Не судите строго, но я в выходные, совершенно случайно, посмотрел телевизор. Канал «Россия 1». Всего несколько минут. Наткнулся на доктора Мясникова, который поздравлял своих коллег с днём медицинского работника (кстати, присоединяюсь к поздравлениям!).
Доктор Мясников не просто поздравил, а напомнил один из ключевых принципов работы врача: уметь сказать пациенту «нет», когда тот что-то просит или предлагает. Очень просто сказать «да», когда человек просит МРТ, операцию или таблетку. Выглядеть при этом «клиентоориентированным», ещё и денег, возможно, больше заработать.
Но настоящий врач не может идти на поводу у пациента. А вот программист – вполне себе.
Клиенты на таблетках
Клиентов, плотно подсевших на таблетки, полным-полно. Я их вижу почти каждый день. Да и сам иногда грешу.
Выглядит это почти всегда одинаково. Клиент произносит магическое заклинание: быстро и дёшево. Его любимый отчёт перестал выдавать правильные цифры. Его база данных говорит, что сломалась. Его пользователи жалуются, что всё тормозит («а вчера нормально было»). Надо починить быстро (сейчас) и дёшево (как в прошлый раз).
Так, стоп… Почему «как в прошлый раз»? Потому что в прошлый раз ровно ту же проблему, или проблему ровно того же объекта/сущности решили быстро и дёшево. И в позапрошлый. И ещё с десяток раз до этого.
Любая таблетка, дающая мгновенный эффект, вызывает привыкание. И быстрые решения программистов – не исключение. Со всеми вытекающими.
Чем больше клиент съел таблеток, тем сложнее ему соскочить. По первости он хотя бы слушал и головой кивал, когда ему объясняли, что таблетка даёт лишь временный эффект, не устраняя причины. Когда же клиент крепко подсел, попытки что-то ему объяснить вызывают лишь истерику. Самую настоящую, наркоманскую.
Кто же тот гад, всучивший первую таблетку?
Драгдилеры
В нашей, 1Сной среде, подсаживает один и тот же тип – человек, желающий «помочь клиенту». Ещё они хотят «сверкнуть экспертизой». Показать быструю реакцию. Продемонстрировать качество сервиса. Ну и клиентоориентированность, конечно. Поэтому первая таблетка выдаётся или бесплатно, или за копейки.
Занимаются этим, как правило, менеджеры по обслуживанию клиентов. Подход у них однотипный. Звонит новый или свежий клиент, обозначает проблему. Менеджер бежит «по врачам» и спрашивает, кто что предложит – что-то вроде аукциона-консилиума программистов, челночным способом, чтобы не слышали мнение друг друга. И оценку стоимости, разумеется.
Ну и выбирает менеджер, понятно, то, что дешевле – таблетку. Во-первых, по обозначенным выше причинам – клиентоориентированность показать. Во-вторых, потому что предложенные приличными программистами серьёзные решения не сможет не то, что продать – даже объяснить клиенту.
Ну и всё, пошла таблеточка. Клиент с радостью её проглатывает, запивает водичкой и получает мгновенный эффект. Но вскоре приходит абстинентный синдром – ломка, проще говоря. Причина ведь на месте осталась.
Клиент снова обращается, менеджер снова бежит. Обычно – к тому программисту, что дал первую таблетку. Если тот может решить задачу, то всё просто повторяется, уже без обсуждений. Если предыдущий врачеватель занят, в отпуске или уволился, начинаются торги.
Например, все программисты говорят – таблетка не поможет, надо резать. Менеджер, вместе с клиентом, выкатывают железный аргумент – но ведь в прошлый раз помогло! Как ни странно, на многих программистов, особенно начинающих, эта фраза действует магически. Вроде как профессиональная честь задета – как это, какой-то бездарь всё починил за полчаса, а я только за два человекодня могу? Ну-ка отойди…
Если же программисты попались упёртые, то менеджер ищет голодного стажёра, которому во что бы то ни стало надо показать себя. Если не находит, идёт через начальство – то, которое за продажи отвечает, а не за технику. Чтобы клиентоориентированность была в крови. Ну и сверху указание приходит – таблетку выдать.
В крайнем случае клиент отваливается и идёт искать себе нового драгдилера. Возвращается крайне редко – клиентоориентированных полно.
Среди программистов о клиентах-наркоманах ходят легенды. В основном – юмористического содержания. Как и о менеджерах, свято оберегающих таблеточный режим клиента.
Каждый новый программист, подключаясь к задаче такого клиента, с интересом читает оставленные комментарии и маркеры изменений. Там вполне бывает в 2-3 раза больше комментариев, чем кода. И написаны целые истории, с указанием дат, фамилий программистов и людей клиента, шутками и подсказками для следующих поколений.
Иногда, правда, случается так, что к задаче или клиенту подключается какой-нибудь жутко упёртый программист. И честно говорит, что всё сделано из рук вон плохо, и надо переделывать. Точнее, сделать заново. Дай Бог, если не успеет этого сказать клиенту, потому что может остаться без работы.
Потому что получится, что клиенту продавали таблетки, которые ему не только не помогают, но и вредят. И если сложатся звёзды, клиент посчитает, сколько денег отдал за «лекарства».
Почём таблетки?
К счастью, клиенты ленивые. И текучка там тоже случается. Каждый следующий человек уже и не помышляет отказываться от таблеток – он ведь не знает всей истории. Ему просто на стикере пишет предыдущий работник: «заболит голова – звони по номеру ХХХ и проси таблетку».
А если всё-таки посчитать, сколько клиент тратит на таблетки? Я посчитал.
Взял три примера реальных клиентов. У каждого выбрал одну проблему среди множества (да, они берут таблетки и от головы, и от задницы, и для настроения). Посчитал, сколько клиент отдал за периодическое решение этой одной проблемы. Готовы?
Клиент отдал стоимость всего программного продукта.
Almet
А если предложить клиенту две таблетки?
nmivan Автор
Выберет ту, что дешевле. Или знакомую.
mikhailian
Это же явный capex vs opex, регулярные деньги понемногу стоят дешевле, чем много денег сразу.
На этом все облачные решения живут.
Sergey-Aleksandrovich
Решения принимаются руководством, а «разработчики не могут исправить ошибки управленцев» (см. habr.com/ru/company/productivity_inside/blog/563452). «Бизнес» в принципе стимулирует мышление в сторону увеличения скорости получения прибыли. Это вот первый опыт с «таблеткой», который потом просто экстраполируется на все сферы деятельности.
Ну и вы излагаете с точки зрения человека, заинтересованного в сокращеннии расходов (точнее общей стоимости владения) клиента, а значит — в сокращении прибыли вашей компании-интегратора. Вот поэтому вы на «заводах», а «драгдиллеры» — у «интеграторов». И пока цели у продавца и покупателя разные, так и будет: «драгдилеры» будет убивать бизнес «наркоманов». Не скажу что это нормально/правильно, но так уже повелось.
merhalak
Это не регулярные деньги понемногу дешевле, а итеративная разработка. Если не выкатывать решение понемногу, может оказаться, что проблему решали зря и огромный бюджет потратили зря.
В рефакторинге нет ничего плохого, если этот рефакторинг (даже серьёзный) оправдан задачей. В идеале, его должно контролировать ответственное лицо, которое хорошо знает список требований к системе и сможет синхронизировать команды разработки, тестирования и сопровождения (техподдержки).
mikhailian
Да я не про разработку, а про экономику. капитальные затраты стоят дороже операционных затрат.
uyrij
Аналогия в статье приведена хорошая, но надо понимать, что в ит все меняется сильно быстрее, чем в человеческом здоровье. Взрослый стабилен 20-30-40 даже лет, в айти во все меняется за 5 - 10 лет.
архитектурное решение требует от клиента ТЗ и компетенций которых у него может и не быть и + даёт гарантии на относительно короткий срок в сравнении с жизнью бизнеса