Корпоративные подрядчики по разработке презрительно отзываются о фрилансерах. Называют их несерьезными, безответственными, некомпетентными. Однако кто такие фрилансеры? Точно такие же программисты. Причем они могут устроиться на работу — в те самые высокопрофессиональные IT-компании. И будут они заниматься вашими проектами, только цены на их услуги станут в разы больше.
Правда, вход через b2b служит определенной гарантией качества. Отбор в высокотехнологичных компаниях многоярусный и строгий. Череда собеседований, в том числе технических. Сложные тестовые задания, адаптация новичков, как правило дополнительное обучение. Поэтому разработка в IT-компании объективно стоит дороже, это не спекуляция.
Для того, чтобы воспользоваться экономичностью фриланса, нужно находить разработчиков по рекомендациям, которым вы действительно можете доверять. То есть:
Еще лучше, если у вас есть личный опыт работы с потенциальным исполнителем. Уже заказывали у него что-то раньше, все было хорошо и теперь пора снова обратиться к проверенному кадровому резерву.
Звучит просто, но на практике «отдать на фриланс» — опрометчивое решение. Потому что нет никаких гарантий. У человека может быть красивое профильное резюме, проверить которое невозможно без специалиста как минимум со сопоставимым уровнем квалификации. Только будь у вас в штате условный сеньор, не пришлось бы искать исполнителей.
Нужно также учитывать роль и важность коммуникации. Сложно уложиться в сроки и получить хороший результат, если разработчик «пропадает с радаров» на произвольные отрезки времени, скандалит, ведет себя неадекватно. А так часто бывает у фрилансеров. Не у всех, конечно.
Только разработчики с хорошо подвешенным языком и готовностью быть на связи почти круглосуточно это редкость. Даже если вы все-таки найдете такого специалиста, процесс поиска займет немало времени и потребует от вас дополнительных финансовых расходов.
И тем не менее, несмотря на все страхи и резонные опасения, на небольших проектах фриланс рентабелен. Чем меньше задача, тем выгоднее поручить ее одиночке. Не только по деньгам. Фрилансер может уже все закончить, пока корпоративный подрядчик еще присылает анкету за анкетой и назначает даты презентаций.
Проблемы начинаются с ростом объемов и сложности. Начиная с определенного момента возникает соблазн нанять два и более фрилансеров. Здесь проходит Рубикон, за которым вас ждет много неприятных открытий. Вскоре выяснится, что 1+1 в разработке не равно 2. Потому что постановка и администрирование задач является отдельной работой, причем выполнять ее должен человек этажом выше по опыту и квалификации.
Если нанять еще и тимлида, экономия на фрилансерах станет крайне сомнительной. Прежде чем совершать такую ошибку (а как правило это она) — ради интереса поинтересуйтесь оценкой проекта у IT-компаний. Может оказаться, что они берут не намного больше.
На поверхности уверенность в сроках и бюджете, потому что юридическое оформление сделок с IT-компаниями принципиально отличаются от взаимоотношений с фрилансерами. Любой даже самый пунктуальный человек может заболеть. Или надорваться на авральном режиме работы и уйти на больничный. Проблемы у близких, друзей. Несчастный случай. Все что угодно.
Кроме того, что даже более важно, в командах вместо одной специализации есть профи по различным ролям. Никакой человек-оркестр не может одинаково хорошо разбираться в дизайне, проектировании, программировании, отладке, документировании — да еще на разных платформах, фронтенд, бэкэнд, во все тяжкие.
Также, доверяя действительно сложный проект фрилансеру, заказчик рискует получить неопытного специалиста. После чего заплатит полную цену за неприятные открытия как для себя, так и для исполнителя — которому просто не доводилось делать такого раньше, вот почему он (возможно искренне) переоценил свои силы.
IT-компании лишены таких недостатков. Корпоративный подрядчик может гарантировать результат. С учетом согласованных сроков, без срывов и проблем. В том числе удаленно, причем также более прозрачно и предсказуемо, чем фрилансеры. Менеджмент одинаково хорошо работает офлайн или онлайн.
Наконец, для толковой IT-компании проект никогда не ограничивается разработкой, в смысле написания и отладки кода. Штатные бизнес-аналитики изучают процессы заказчика, помогают выявить скрытые потребности, правильно расставить приоритеты, реструктурировать первоначальные требования к решению. Там, где фрилансеры молча выполняют «чего сказано», опытная команда разработчиков может без единой строчки кода повысить эффективность будущей системы. Показывая кейсы, объясняя разницу и риски, просчитывая совокупную стоимость владения и развития программного продукта.
А его ведь нужно развивать. Это часто упускают из виду, что довольно быстро приводит к тупиковой ситуации. Самая превосходная разработка, выполненная одиночкой, нуждается в доработках. По многим причинам:
Тогда выясняется, что документация к IT-продукту ограничивается перепиской с фрилансером. Собрать из этих отрывочных сообщений связную базу данных нереально. Значит, вместо оперативных доработок придется начинать разработку почти с начала. Вот когда про «экономию» иначе как в кавычках уже не скажешь.
Полагаться на интуицию не приходится. Это разработчики могут навскидку определить сложность проекта. Как правило, у заказчиков нет такой насмотренности. Они склонны преуменьшать риски, сроки, стоимость проекта — просто по той причине, что не в курсе полного цикла необходимых работ.
Поэтому принимать решение о выборе исполнителей лучше с помощью чек-листа. Ответьте себе на 5 простых вопросов:
Если больше одного «Да» в сторону усложнений и повышенных требований — однозначно нужно искать IT-подрядчика. Фрилансеры могут ответить положительно на все эти (и многие другие) вопросы. Проблема в том, что они не способны гарантировать свои обещания. Во всяком случае юридически.
Серьезно, что вы можете сделать в случае срыва сроков или отсутствия документации со стороны одиночки? Напишите ему плохой отзыв, поставите одну звезду?
Кроме того, разработку программного обеспечения принято считать проектом. Однако с учетом поддержки и развития это скорее процесс. Поэтому выбор исполнителя должен учитывать долгосрочность отношений.
Выбор на самом деле стоит не между фрилансом и IT-компанией на аутсорсинге, а между вашим собственным отделом разработки или внешним.
Если взглянуть на вещи с такой точки зрения и прикинуть расходы на отбор, найм, сплочение, потом контроль и неизбежное дополнительное образование, удержание и мотивацию штатных разработчиков… Правильно, это чистое разорение. Внешняя IT-компания тоже несет все эти расходы, и конечно включит их в счет. Но не только вам, а с амортизацией по всем своим клиентам. Что позволяет получить результаты этажом выше по качеству, а заплатить за них меньше, чем при собственной разработке. И рисковать меньше, чем при обращении к фрилансерам.
К разработке нужно подходить основательно. Учитывать все существенные факторы: цели, задачи, сроки, бюджет, функциональные ограничения. Вы не можете абстрагироваться от системного подхода и управления проектом. Вопрос только в том, кто возьмет на себя эту роль — вы сами или подрядчик.
Если в вашей компании есть компетентные специалисты, готовые выполнять задачи по управлению разработчиками, то возможно хватит и фриланса. Иначе лучше использовать готовый менеджмент корпоративного подрядчика, тем более что найм команды целиком решает много вопросов по технологии разработки, предсказуемости результатов и т.д.
В любом случае, всех нужно выбирать и проверять. Разработчики часто приукрашивают свои навыки, причем не только фрилансеры, но и компании.