Поиск программистов. Как поменять в середине проекта?
Денис Гордиенко, генеральный директор Bright Mobile, о том, как быть, если при разработке приложения пришлось поменять программиста
Сегодня я расскажу о случаях, когда вдруг приходится менять команду разработки или одного программиста. На мой взгляд, множество заказчиков недооценивает ценность такого сотрудничества, из-за чего потом получают много проблем. В этой статье я напишу о подводных камнях, на которые чаще всего попадают заказчики и как их избежать.
Почему заказчики расстаются с программистами?
Самая частая причина – кто-то кого-то кинул: либо тупит программист и не может что-то сделать, отчего продолжать работу с ним невозможно, либо тормозит заказчик, отвечая программисту раз в месяц, а тому нужны деньги, и он берётся за другой заказ, оставляя старый. Клиенты оплачивать простой чаще всего не готовы, поэтому человек просто договаривается с более платёжеспособным клиентом. Другой вариант – программист устал от фриланса и устраивается на работу, так или иначе покидая проект.
В принципе, причина не так важна: как правило, одну из сторон больше не устраивает предыдущее сотрудничество по тем или иным причинам. Ситуации, когда разработчика собьёт машина, и у него не получается заниматься проектом дальше по естественным причинам, я не буду – это форс-мажор, который может быть всегда и везде, и от него застраховаться никак нельзя.
Что недооценивают заказчики?
Разберём более типовые ситуации, где контакт с программистом в принципе есть, но по ряду причин сотрудничеству приходит конец. Что же недооценивается чаще всего?
В подавляющем большинстве, особенно когда сотрудничество завершается на середине проекта и программист что-то не доделывает, заказчик принимает решение, что доделывать будет кто-то другой. Здесь очень сильно недооценивается объём: например, если требуется доделать только 10%, нужно закладывать, что остальные 90% второй программист будет изучать, а это тоже стоит времени и денег.
Поэтому можно сразу умножить работу на три: если не доделано 10%, заплатить придётся за 30% от общего бюджета, если не доделано 20% - то 60% и т.д. Соответственно, если не сделано 30-50% чаще всего выгоднее сделать с нуля. Это не справедливо, т.к. предоплату и компенсацию за потерянное время вряд ли получится взыскать с программиста, но это так.
Как свести риски к минимуму до начала
Первое, что нужно узнать до начала разработки – это стек технологий. Очень много разработчиков работает в разных стеках: они могут друг друга ненавидеть, ругаться, постоянно ссориться из-за того, какой язык разработки лучше, но для вас всё это неважно.
Вам главное, чтобы в выбранном стеке было много разработчиков. Если человек выбирает какой-то экстравагантный язык, очень большой шанс, что на замену ему вы потом никого не найдёте, и риск того, что с дальнейшей работой он будет вас шантажировать, становится выше.
Бывали случаи, когда программист специально работал в странном стеке, который почти никто не использует, чтобы потом просто держать заказчика в ежовых рукавицах. Мошенничеством это не назвать, но всё же условия сотрудничества не очень добросовестные.
Поэтому ещё на стадии переговоров узнайте, на каких языках будет писаться мобильное приложение, а на каких – серверная часть, зайдите на фриланс, создайте проект в стиле "доработать мобильное приложение, стек такой-то, детали расскажу кандидату", и посмотрите, сколько будет откликов. Если их много, стек, скорее всего, выбран популярный, проблем со сменой команды, по крайней мере в этом моменте, у вас не будет. Если откликов почти нет, это лишний повод задуматься.
Второе – это опыт. Все говорят: проверяйте портфолио, просите ссылки в сторах, смотрите аналогичные выполненные проекты – но никто этого не делает. Даже среди моих клиентов так поступает только процентов двадцать, остальные верят на слово.
Жизненный пример
Как раз в марте ко мне обращался клиент: ему нужны были сайт и мобильное приложение с определённой идеей, я оценил их около миллиона, но у него на тот момент была сумма чуть больше трёхсот тысяч. Урезать функционал клиент не захотел, поэтому мы прикинули и пришли к выводу, что вариантов здесь, кроме поиска фрилансеров, просто нет.
В итоге он нашёл каких-то знакомых: даже не людей со стороны, а тех, с кем уже работал раньше. Правда, это были веб-разработчики, но они обещали заказчику прокачаться в мобильной разработке за полгода и умудриться сделать приложение с нуля, потом всё это связать с сайтом и т.д. Я, конечно, высказал клиенту свои опасения, но финальное слово оставалось за ним.
Он этим людям поверил, но в итоге ребята сделали только сайт (хоть и задержали сдачу по срокам), а вот на мобильном приложении забуксовали. Клиент сказал мне, что они не слились и не стали разводить его на деньги и сейчас работают над тем, о чём договаривались. Просто очень срывают сроки, поскольку навыков в мобильной разработке у них нет.
Бывает, что исполнители и сроки срывают, и на деньги разводят, но тут такого, к счастью, не произошло. Не смогли – не взяли деньги. Но клиенту-то от этого не легче, ему не только сайт, а ещё и приложение нужно, а сроки поджимают.
Ко мне он обратился за тем, чтобы я доработал приложение, но в этот раз я оценил разработку не в миллион, а в полтора. И не потому, что я такой вредный и хочу проучить заказчика, а потому что разработать с нуля мне намного проще, чем внедрить свою команду разработки в чужую работу. В ней надо разобраться, состыковаться со сторонними специалистами, да ещё и дизайнер не свой – всё это очень трудно с точки зрения стыковки и управления.
Экономия происходит не на трудовых ресурсах, а на том, что вы не ломаете типовой процесс команды. А здесь сломали и разработку сайта, ведь нужно состыковаться с людьми, с которыми я до этого никогда не работал, и дизайн, ведь и дизайнер тоже чужой. В итоге я на управление потрачу в 3-4 раза больше времени, и чуть-чуть сэкономлю на зарплате своих программистов, хотя и это не факт.
Сумма в 1,5 миллиона получилась именно потому, что работать мне придётся не по типовому процессу, а выдумать какой-то индивидуальный, под клиента, который стоит дороже, чем обкатанный процесс, знакомый всей моей команде. К тому же это ещё и большой риск нового процесса - не факт, что не придётся что-то латать в пожарном режиме. Входить в такой проект хочется только за очень большие деньги, которые компенсируют моральный вред.
Выводы
Всегда имейте в виду, что доработка может встать дороже, чем разработка с нуля, и такое бывает довольно часто. В итоге с этим клиентом мы не договорились – дополнительного бюджета у него не появилось, поэтому я лишь посоветовал ему найти на фрилансе программиста именно мобильных приложений и попытаться внедрить в ту команду.
Так не его знакомые будут изучать разработку приложений - это сэкономит деньги, а будет работать какой-никакой, но всё-таки специалист. Максимум, чем я могу помочь – это выступить в роли куратора клиента, чтобы ему ещё раз не надели розовые очки, и провести адекватную аналитику того, что сделали, и того, что ещё только предстоит сделать, какие у него риски и сколько потребуется денег для завершения проекта.
Такие истории на самом деле не редкость, и часто бывает, что весь бюджет уходит на первого программиста, а на доработку денег уже нет. В итоге человек, недовольный сотрудничеством с первым, нервничает, из-за чего сразу портит отношения со вторым.
Подобные проекты, когда нужно доделать 10% от приложения, можно часто увидеть на фрилансе. Заказчик прямо капсом пишет: «НИКАКИХ ПРЕДОПЛАТ, СНАЧАЛА СДЕЛАЙТЕ, ПОТОМ ЗАПЛАЧУ». Немного утрирую, но, в принципе, говорю как есть. Только зашёл задание прочитать, а тебе уже на голову столько негатива.
Естественно, ни один программист, если только он не умирает с голоду, не пойдёт дорабатывать подобное приложение, тем более с таким отношением к себе. Общаться с клиентом, когда он в таком состоянии - нет смысла, он на нервах, и всех заведомо считает мошенниками. В разработке нервы нужно держать при себе: это бизнес, это риски, не всегда всё идёт по маслу. По крайней мере, это поможет соблюсти те или иные рамки сотрудничества и показать собственную заинтересованность в сотруднике.
Проверяйте разработчика ещё на этапе беседы: проверяйте стек, опыт, спрашивайте портфолио, готовые приложения – хотя бы apk-файл, если продукт пока ещё не опубликовали в сторе, что часто бывает.
Договаривайтесь: даже если вы прекращаете сотрудничество, даже если вас не устраивает качество работы, всегда выгоднее, чтобы ребята, которые начинали, плавно передали проект новым людям.
Это хорошо разработчикам: вы не с них трясёте доработки и те или иные правки, вместо которых, к примеру, вернут вам 10% оплаты, и избавляются от «вредного» заказчика. Программистам тоже не нужна кабала, поэтому договориться удобнее всем.
Это хорошо новому программисту хорошо тем, что у него уже есть консультационная поддержка, и с исходниками он не один на один (а по этой же причине он и вам выставит меньший счёт).
Это хорошо вам: вы получаете шанс того, что проект будет завершён с помощью нового разработчика, который продолжит его реалиазацию.
Больше полезной информации о разработке можно найти на моём YouTube.
Комментарий недоступен
и как? Купили?
Комментарий недоступен
Примерно это и хотел донести. Но на практике большинство заказчиков считают, что у всех и скорость и код примерно одинаковый, просто стоят разных денег. К сожалению, то что это не так приходит с опытом 2-3-х загубленных проектов
Начальная оценка миллион - сайт + мобильное приложение.
Сайт сделали, осталось написать мобильное приложение и интегрировать его с сайтом - за это просим 1.5 миллиона.
У вас что то с математикой или вы действительно из вредности решили проучить заказчика.
Сайт вам делать не нужно, API разработчики сайта наверняка дадут, разбираться в коде не нужно, тогда в чем проблема, почему 1.5?
Сама статья - пожалел потраченное на нее время, т.к. не увидел как все таки заменить...
наверняка дадутА если наверняка не дадут то, что у них в конторе уже сделано и вылизано? Надо новый адаптер писать под их текущие практики, с чего это делать бесплатно ? Человек 2 абзаца об этом, но бибиз, конечно всех раскусил и левой пяткой пишет любые адапторы бесплатно.
+0,8 млн за то что теперь пришлось бы работать не по студийным типовым процессам, а выдумывать новые и нести за них ответственность. Вот эти деньги за выдумывание и риск