{"id":14277,"url":"\/distributions\/14277\/click?bit=1&hash=17ce698c744183890278e5e72fb5473eaa8dd0a28fac1d357bd91d8537b18c22","title":"\u041e\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u0438\u0442\u0440\u044b \u0431\u0435\u043d\u0437\u0438\u043d\u0430 \u0438\u043b\u0438 \u0437\u043e\u043b\u043e\u0442\u044b\u0435 \u0443\u043a\u0440\u0430\u0448\u0435\u043d\u0438\u044f","buttonText":"\u041a\u0430\u043a?","imageUuid":"771ad34a-9f50-5b0b-bc84-204d36a20025"}

Как я пытался скопировать чужую ERP-систему и попал на 7 млн рублей

В современном российском ИТ-бизнесе очень часто происходит вот как: заказчик по каким-то причинам не хочет покупать то или иное существующее решение. Оно ему подходит, оно ему нужно, но покупать его он не хочет. «Давайте сами сделаем то же самое, ведь тут все элементарно!» — осеняет эффективного менеджера, и он бежит к знакомым разработчикам.

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

Почему я вдруг про это вспомнил? Да потому, что недавно посмотрел «Разведопрос» у Гоблина с Александром Кузьминым из «Русхолтс». Потом почитал комменты под этим роликом, где коллеги-айтишники соревнуются в остроумии: мол, да что там делать-то, да мы за 5 рублей еще круче сделаем…

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

Вообще я занимаюсь небольшими заказами для m2m-коммуникаций. На одном хакатоне, который устраивала крупная нефтяная компания, я подружился с их айтишниками. Ну вы знаете этих нефтяных айтишников: в основном туда попадают по блату дети ответственных работников, которые по мнению родителей, интересуются компьютерами.

ИТ-шным сленгом эти детки владеют в совершенстве, а по сути — обычные мажоры, которым доверено рулить инновациями, модернизациями и цифровыми трансформациями. Сначала моя компания делала им небольшие проекты по телеметрии холодильников на заправках — все было успешно и хорошо. А кофезоны работали как раз на этой BMS coffee control Кузьмина.

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

В общем и целом на выходе получалось 28 млн рублей, а сделать-то нужно было простой m2m-мониторинг, по крайней мере на словах. Я человек не гордый: если мне дают хорошие деньги, я за копирайтом не гонюсь. Пусть хоть лично своего гендиректора в авторы запишут, мне не жалко. В общем, согласился.

Давайте, говорю — что копировать-то? Оказалось, что никто не знает. Никакого техзадания или хотя бы документации: одно устное народное творчество. Мол, система генерирует какие-то отчеты и делает какую-то аналитику, как именно — мы не в курсе, оно в чужом облаке, у нас на АЗС только две тысячи с лишним этих кофемашин стоят и продают десятки миллионов чашек кофе в год.

Вот с них надо данные собирать и клепать отчеты, тыжпрограммист, разберись!

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

Помните этот мемный ролик про ржущего испанца, да? В итоге мне присылают глянцевый журнал «Современная АЗС». Там интервью с каким-то пацаном и девчонкой под заголовком «Повелители счетчиков». И все! Я даже нагуглил сейчас эту статью — вот это мне прислали в качестве ТЗ!

Мол, вот там Raspberry, блокчейн и 400 параметров контроля, круто же! Вообще нормальному человеку было бы достаточно такого «звоночка», но 28 млн рублей… Каюсь, жадный.

В итоге какое-то подобие ТЗ с грехом пополам утвердить удалось — правда, писали мы его сами себе. Нанимаю несколько кодеров на Java, C++, Python, трачу 3 млн на зарплату, выдаю бета-версию. Готово, можно тестить.

Мне выплачивают 12% обещанных денег и говорят: мы тут подумали, функциональность требует расширения. Какого расширения? Опять долго и мучительно слушаю какую-то муть про то, что нужно генерировать какие-то отчеты на основе каких-то данных, опять со скрипом из всего этого сам себе пишу ТЗ, утверждаем, получаем еще 7% денег, работаем.

Немного технических подробностей. В этих кофеавтоматах, да и вообще во многих вендинговых аппаратах, используется MDB-шина, через которую завод рекомендует подключать терминалы оплаты. У нас в принципе получается выкачивать через MDB кое-какие данные и отправлять их на сервер, что и требуется по ТЗ.

Но на очередной презентации в офисе заказчика какой-то большой начальник заявляет: «Стоп, так это же не то, что нам нужно. Нам требуется управлять настройками всех кофемашин, удаленно менять рецепты и кастомизировать их в зависимости от желаний покупателя». WTF???? Я собираюсь встать и сказать: «Господа, этого вообще-то нет и никогда не было в ТЗ. Вам нужно было собирать данные и отправлять их на сервер — вот, собственно, мы это сделали».

Но мои друзья из ИТ-департамента так на меня смотрят, что становится понятно: «Сиди тихо, прорвемся, ещё денег дадим». Вообще-то, по моим наблюдениям, высокие начальники в нефтянке — люди весьма грамотные и вменяемые, но между ними и реальным миром существует многочисленная прослойка блатных балбесов, которые все портят. В моем случае это были балбесы-недоайтишники, и я уверен, что не одинок в своих злоключениях.

Вновь дают небольшой аванс, но у нас принципиально новое ТЗ и немеренно работы. Кодерам мне уже приходится платить из своих кровных, плюс начинаются технические проблемы. По MDB сделать то, что хочет заказчик, нельзя. Нужно лезть напрямую в «мозги» кофеавтомата, и первая попытка взлома приводит к окирпичиванию платы управления стоимостью €2500. Хорошо, меняем плату, эмулируем сервисный компьютер — тоже не хорошо, еще €2500 на металлолом.

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

Мне запомнился один уже немолодой крендель, который каждый раз начинал со слов: «Я 12 лет занимался магазинами и кафе "Лукойла" на Балканах, поэтому считаю, что…» и дальше нес любую пургу на тему функциональности телеметрии, в которой он ничего не смыслил.

В итоге мое ТЗ в части функциональности разрастается с 15 до 97 (девяносто семи!) пунктов. Конечно, бюджет при этом тот же, но для меня он все равно огромный. Хотя я уже понимаю, что легких денег не получится и вообще дело пахнет керосином — заказчики сами не знают, чего хотят, и теперь дополнительные фичи будут подкидывать постоянно, а сдать проект мы не факт что сдадим.

Я решаюсь на хитрость: звоню в «Русхолтс», представляюсь перспективным заказчиком и напрашиваюсь в офис на экскурсию. А надо сказать, что Кузьмин очень тщеславен и поэтому сам с гордостью 4 часа меня везде водит, все показывает и рассказывает.

И тут я понимаю, что это просто фиаско, братан. Не зря говорят: «Без внятного ТЗ результат ХЗ». Мои нефтяные айтишники вообще не поняли, что хотят скопировать, и поэтому все эти месяцы мы копировали совершенно не то!

Оказалось, что фишка BMS вовсе не в том, чтобы собрать данные с кофемашин и отправить их куда-то. И даже не в том, чтобы взять данные с сервера и залить их в кофемашину! А все дело в прикрученных к собираемой бигдате алгоритмах аналитики и интеграции с ERP и CRM, в которых потом автоматически раздаются задачи — кому куда ехать, что где чинить и как настраивать.

И это вообще не мой профиль, я m2m-щик, а не специалист по ERP-системам! По сути, я оказался в положении конструктора, взявшегося создавать межгалактический корабль по трейлеру к «Звездным войнам». А еще я узнал про подводный камень, о котором заказчики мне не сказали: программный модуль взаимодействия с кофеаппаратами – заводская разработка и охраняется авторскими правами завода, а Кузьмин лишь вендор, который продает все это в России.

Но обратного пути нет, и денег потрачено больше, чем получено: нужно как-то вытаскивать оставшиеся. Что делать? Выход только один: раз вы мне выкатили какую-то ерунду вместо ТЗ, я вам сделаю так, чтобы выполнялись все требования вашего же ТЗ, получу деньги и до свидания. То, что этот софт не будет решать ваших задач — не мои проблемы, вы сами себе злобные Буратины и поймете это только на этапе внедрения, хе-хе.

Для этого нужно всего ничего: победить-таки эти мозги кофеавтоматов. Еще два блока управления пали смертью храбрых, а вот пятый все же начал исполнять мои команды. Победа! Но это не точно. Чтобы не нести убытки за четыре окирпиченные кофемашины, мои заказчики додумались отправить их в сервисную компанию по гарантии.

Те отправили платы управления на завод в Германию, а оттуда пришел ответ: мол, дорогие русские друзья, блоки вышли из строя при попытке установки несанкционированного софта, это негарантийный случай.

Сервисная компания подняла шум: мол, простите, а за чей счет весь этот банкет? €10 000, на минуточку. И тут наступила развязка — кто-то из компании-заказчика написал на завод требование раскрыть коды доступа к мозгам кофемашин, а оттуда пришел ответ: «Уважаемые партнеры, если вы хотите управлять экранами производимых нами кофемашин не через одобренный производителем bms coffee control, удаляйте с оборудования все логотипы завода, т.к. иной софт не гарантирует соблюдения регламентов безопасности. Не выполните требование снять логотипы — завод обратится в суд».

В итоге крайним сделали угадайте, кого? Правильно, меня. Айтишникам из нефтяной компании начальство тоже устроило публичную порку, после чего они меня заблокировали во всех соцсетях и мессенджерах. Но денег мне больше не заплатили ни копейки и внесли в черный список ненадежных контрагентов. В итоге проект принес мне 7 млн рублей чистого убытка и хороший урок: никогда не работать с мудаками и не браться за работу без экспертизы ТЗ.

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

0
409 комментариев
Написать комментарий...
Вася Пражкин
 никогда не работать с мудаками

Честно прочитав эту статью я вижу тут только одного такого. В разработке на заказ есть такое правило: подписался - сделай, облажался - считай заплатил за урок. Вот первое, что надо было сделать - это списаться с заводом и пробить варианты по интеграции. Так Вы сразу бы узнали, что так, как Вы задумали, сделать не получится. И кто ж тут мудак, если Вы сами пообещали сделать, не подумав?

Ответить
Развернуть ветку
Ragim Balabekov

Насколько я понял, сначала хотели совсем другое, поэтому автор и согласился.

Ответить
Развернуть ветку
Вася Пражкин

Это понятно, но автор отлично понимал сложность проблемы:

 Нужно лезть напрямую в «мозги» кофеавтомата, и первая попытка взлома приводит к окирпичиванию платы управления стоимостью €2500

Такие вещи стоят совсем других денег, если есть специалисты по таким делам. При этом гарантий никаких нет, что даже специалист сможет похачить железку в обозримое время. Раз автор добровольно подписался под такое - то это проблема его, а не заказчика. Ну и отправлять 4 запоротых аппарата на завод - это палево, на что рассчитывал автор - мне даже интересно. "Безумству храбрых поем мы песню".

Ответить
Развернуть ветку
Денис Демидов

Это очень по русски, мы работаем на взломанных фотошопах и автокадах, почему бы не взломать какую-то кофе машину?
Что-то взламывать у нас в порядке вещей. Давным давно, мне потребовалось включать сименс с35 по шнурку, вы думаете, я писал на завод сименса, как это сделать? Полез на форумы...

Ответить
Развернуть ветку
Вася Пражкин

Все же есть разница между ворованным ПО и легально купленным(надеюсь) телефоном? Во втором случае - устройство Ваше и Вы можете делать с ним что хотите, в том числе и перепрошивать. Были попытки производителей посудиться с такими пользователями, но, насколько мне известно, безрезультатно, так как устройство легально приобретено. Гарантии от производителя, понятно, не будет.

Ответить
Развернуть ветку
Евгений Смирнов

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

Да и аппараты на «ремонт» отправил заказчик, а предупреждал ли его автор о глупости этого шага, вроде бы, не сказано.

Ответить
Развернуть ветку
Вася Пражкин

Производитель попросил удалить логотипы - ну это вобщем спорное решение, да и залепить их просто наклейками - небольшая проблема. Как я подозреваю, заказчики не ожидали получить 4 мертвых блока кофемашин и убытки от них, соответственно, недоработал тут именно исполнитель, который должен был предупредить заказчика о подобных "издержках" процесса взлома блоков. Я полагаю, издержек там могло бы быть сильно больше в дальнейшем, поэтому заказчик принял разумное решение прекратить эти танцы.

Ответить
Развернуть ветку
Евгений Смирнов

Согласен, раз уж не хватило ума заранее прикинуть шансы убить машину, то уж после первого кирпича должен был связаться с производителем и попробовать договориться о нормальном доступе к потрохам.
Странно, что они не догадались расширить ТЗ пунктом о взломе («переделки») прошивки — как минимум не оказались бы крайними и могли бы через суд восстановить доброе имя, а как максимум 2/3 ТЗ улетучились бы нафиг.

Ответить
Развернуть ветку
406 комментариев
Раскрывать всегда