А вы знали, что на начальном этапе своего существования китайский гигант Alibaba пользовался услугами разработки на аутсорсе? Есть такой же опыт и у Skype, программную часть которого написала эстонская аутсорс-команда (потом все это, кроме аутсорсеров, конечно, за 8 500 000 000 долларов купил Майкрософт). В свое время бодро аутсорсили GitHub, Slack, Basecamp, Fab, Opera Software, а также многие другие компании и сервисы, которые у многих на слуху. А MySQL так вообще, использует аутсорсеров постоянно. Кстати, если вы используете в работе приложение для рекрутинга BranchOut, знайте — оно также было разработано на аутсорсе.
Да и вообще, если взглянуть на ТОП-50 крупнейших IT-компаний Украины по версии DOU.ua, вы увидите, что большинство из них являются не продуктовыми, а аутсорсинговыми. Взять хотя бы лидеров рейтинга: EPAM Systems, GlobalLogic, Luxoft, SoftServe, Ciklum.
Чем же аутсорс-компании привлекают клиентов? Каково это — быть частью аутсорс-команды? Какие есть минусы и плюсы с точки зрения сотрудников подобной компании и заказчиков? Давайте разбираться.
Что получают разработчики в аутсорс-компаниях, а чего — нет
Работа full stack developer или в любом другом качестве в таких компаниях имеет свои плюсы и минусы.
Положительные стороны работы в таких компаниях
Если вас привлекает разнообразие задач и продуктов, над которыми придется трудится, тогда вам в аутсорс-компанию. Где-где, а здесь разработчик гарантированно сможет «набить руку» и попробовать себя в работе с разными продуктами и технологиями (надоело работать с C# — попробовал себя в Python и пр. ). В продуктовых компаниях зачастую о разнообразии приходится только мечтать, т. к. стек выбирается всерьез и надолго.
Еще один весомый аргумент в пользу аутсорса — плановость. Очень часто в продуктовой компании разработка выглядит как хаотичный процесс. Остаться на работе допоздна или приехать в выходные, получить расплывчатую задачу — здесь это нормально. При работе же на аутсорсе в большинстве случаев вы работаете по четкому плану. Знаете, что конкретно и к какому сроку требуется выполнить. Так что, это — отличный вариант для тех, кто не любит «подскакивать» и работать в авральном режиме.
Стабильность — еще один плюс в пользу аутсорсинга. Большинство продуктовых компаний сосредотачиваются на одном или паре-тройке проектов. И никто не знает, выстрелят ли они (если нет, возможно придется трудоустраиваться по-новому). Здесь же все идет более-менее плавно, и работа есть всегда. И нужно заметить, что стабильность в данном контексте не значит отсутствие развития. В такой компании разработчик (толковый и с амбициями), знает, что через условных N лет он станет сеньором, спустя еще какое-то время — тимлидом.
Относительно невысокий порог входа. Далеко не каждый начинающий android разработчик, к примеру, может вот так сразу попасть в продуктовую компанию. Так уж сложилось, что сюда, как правило ищут «матерых» специалистов, не желая тратить время на натаскивание новичков. В аутсорсинговых компаниях, с большой вероятностью, найдется работа даже для новичков.
А еще аутсорсинг — это «непочатый край» для тех, кто хочет поездит по миру и работать в свое удовольствие. Рассматриваемые компании гораздо охотнее продуктовых внедряют удаленную форму сотрудничества со своими работниками.
Что отталкивает разработчиков от аутсорсинговых компаний?
Разработчики выделяют следующие моменты:
- Отсутствие возможности насладиться итогом своего труда — рабочим программным продуктом. Как правило здесь все делается так: выполнил работу, и все, про проект можно забыть. Поэтому, если вы из тех разработчиков, которые жаждут наблюдать, как продукт приносит пользу людям, такой вариант, возможно не для вас
-
Множество метрик для оценки труда программиста. Количество строк кода в день, число ошибок на 100 строк и т. д. и т. п. В аутсорс-компаниях как правило практикуется оценка результативности работника на основе множества разных показателей. Так что, для тех, кто не привык быть в каких-то жестких рамках, а хочет чувствовать себя более вольготно, это будет минусом.
- Редко появляется возможность поучаствовать в очень сложном и нетривиальном проекте. Как ни крути, но реально «глобальные» вещи на аутсорс отдают единицы заказчиков. Многие считают, что лучше потратить время и деньги на хантинг персонала, который будет выполнять задачи в офисе - так проще контролировать процесс.
В общем, каждому свое. Если одному разработчику комфортно трудиться в аутсорс-компании, то другой может даже и не смотреть в сторону такого варианта.
Плюсы и минусы аутсорсинга с точки зрения заказчика
На вкус и цвет…, как говорится. Но все же не лишним будет рассмотреть особенности (которые могут быть как минусами, так и плюсами) работы с аутсорс-компаниями.
Среди минусов, которые отмечает большинство заказчиков, можно выделить:
- Опасения по поводу защиты информации. Да, есть NDA. Но посудите сами, передача важных данных сторонней организации, даже при наличии суперпродуманного NDA, увеличивает вероятность того, что они могут попасть не в те руки.
-
Появление зависимости от внешних разработчиков. Отдавая разработку и другие процессы на аутсорс, важно понимать, что таким образом вы делаете себя зависимыми от другой компании. А если она перестанет существовать, или решит поднять цены на услуги? Что делать в таком случае?
-
Невозможность контролировать процесс. Отдавая разработку на аутсорсинг, вы сможете оценивать и контролировать только результат. Можно, конечно, дробить задачи на более мелкие и каждую из них контролировать, но это будет обходиться дороже и в ряде случаев более выгодным вариантом будет найм собственных developers.
А какие же плюсы разработки программных продуктов на аутсорсе?
- Используя этот вариант, можно быстро «стартануть», не нанимая собственную команду разработчиков.
-
В ряде случаев разработка по такой модели будет дешевле, чем своими силами (но так бывает далеко не всегда — важно взвесить все «за» и «против»).
-
Аутсорсинг — это возможность в сжатые сроки получить необходимые ресурсы под конкретную задачу.
Если взглянуть на украинский IT-рынок, так и хочется назвать его своеобразным «аутсорсинговым раем». Количество компаний, работающих по такой схеме, растет (еще бы, ведь здесь созданы отличные условия для этого). Но и продуктовые не отстают (яркие примеры — TerraSoft, Readdle, VertaMedia, MacPaw, Ring).
Так что, отечественным (и не только) разработчикам есть из чего выбрать. Главное — понять самого себя, и определиться, чего ты хочешь в этой жизни.