Все персонажи вымышлены, все совпадения случайны
Вел тут переговоры по разработке СДО (системы дистанционного обучения), она же LMS (learning management system). Поднял показать один из старых проектов, что мы под ключ делали на Drupal 8, скрыл айдентику заказчика. Хороший проект был, приятно заглянуть в него еще раз.
Но оказалось, что смотреть потенциальному заказчику было не особо интересно, потому что:
- Нужна СДО, чтоб не хуже iSpring.
- И чтобы был встроенный! редактор курсов с функционалом не хуже сторилайна и выгружал всё в SCORM.
- Чтобы была встроенная! виртуальная доска с возможностью коллективной работы. Не очень сложная, типа Miro.
- Ну и по мелочи всякое: пара-тройка онлайн-игр, настраиваемые групповые чатики, редактор видео и прочее.
В общем, швейцарский нож со встроенным ядерным реактором.
Грешным делом подумал, что ожидания несколько преувеличены и за разумное время и деньги все-таки можно что-то полезное и вменяемое тут собрать. Если адекватно подойти к ожиданиям, делать постепенно и все такое. Выставил предложение на 3.5М, вступил в переговоры.
Оказалось что да, все перечисленное выше надо сделать, причем в полном объеме. Потому что «нам надоело использовать разные инструменты для решения разных задач и платить за каждый. Сделайте нам свой единый инструмент».
Удивляюсь, думаю что оффер маленький отправил, да и вообще зря. Ну ладно, поговорить не жалко. Обсуждаем конкретные пункты ТЗ и чего хотелось бы на самом деле™ сделать.
— Кажется, вы понимаете о чем говорите, я вам пришлю приглашение на второй этап тендера. Но:
Во-первых 3.5М это очень дорого, вы должны значительно пересмотреть и оптимизировать свой бюджет (!)
Хорошо, допустим, отбросим часть второстепенных требований, сделаем дешевле.
— Кстати, вы не знаете, почему нам выставляют предложения с бюджетом от 350к до 25 миллионов?
— Ну да, догадываюсь. 25 миллионов — это грубо говоря столько будет сделать все что вы хотите, если понимать ваше ТЗ буквально. Плюс-минус, конечно. А 350к — это или что-то простенькое, или обратить на себя внимание хотят. Я вот прямо на днях про это статью написал.
— Во-вторых, срок 3–4 месяца (!)
— Сделать за 3–4 месяца то, что вы хотите, нереально, но какой-то объем первостепенных задач конечно можно. (никогда не мог понять, исходя из чего заказчики, которые сами разработкой не занимаются, придумывают такие сроки)
В третьих, мы работаем принципиально без предоплаты.
Потому что уже сталкивались с разработчиками, дизайнерами, и прочими вашими там коллегами, которые работают, а потом вдруг исчезают не сделав всё что мы им сказали (!!!)
— Извините, у меня противоположная позиция: мы принципиально не работаем без предоплаты. Не буду вам рассказывать, с кем сталкивались мы, поскольку это не значит что вы такие же. Можем предложить такой вариант: разобьем работы на несколько этапов, 50% стоимости этапа до, 50% стоимости этапа после.
— Нет, это недопустимо. Вы исчезнете, пропадёте, не доделаете…
На том, примерно и закончили, попросил на второй этап меня не приглашать. Но суть не в этом.
Суть в том, что вот характерный пример вводной информации по проекту:
- Мы хотим сделать небывалую систему. Какой нет наверно ни у кого (интересно, почему?)
- Денег у нас мало, но много неясно на чем основанной уверенности, что их должно хватить.
- Сроки максимально сжатые, но много неясно на чем основанной уверенности, что вы уложитесь.
- И да, никаких предоплат.
Мне кажется, это прямо формула для пути известно куда (нет, не к успеху). Завышенные ожидания + скромные возможности + опять завышенные ожидания. Сокращенно 2xЗО + СВ
:)
И что я заметил. Чем больше заказчики жалуются на куда-то исчезнувших и «почему-то» переставших выходить на связь исполнителей, тем больше их запросы укладываются в эту формулу. Вы выложили заказ. Ваша комбинация бюджета+ожиданий отсеяла значительную часть опытных разработчиков. Вы взяли кого-то по низу предложенных цен. А цена у него такая низкая, потому что он
— не понял ваших ожиданий и недооценил проект в силу неопытности;
— собирался сделать какую-то базовую часть на этот бюджет, а потом запросить ещё, но (умышленно или нечаянно) не смог это объяснить так, чтобы вы поняли;
— собирался взять заказ, а потом уже разбираться, что там надо делать и во что это встанет;
— не собирался вообще ничего делать, а просто взять деньги.
Чего ж удивительного, если такой разработчик потом «почему-то» пропадёт?
У этого паттерна поведения в других областях нашей жизни есть очень ёмкое название. Отрицательный отбор.
И что интересно, такой отбор подпитывает сам себя. Потому что например я как разработчик, видя комментарий «надо доделать, предыдущий специалист куда-то пропал» не испытываю абсолютно никаких рыцарских позывов спасти проект в беде. Вместо этого я вижу некоторое количество красных флагов и прохожу мимо. Возможно, перебирая в уме весь спектр известных мне причин, по которым предыдущий разработчик мог «пропасть». И сдается мне, я не один такой.