Про преимущества аутсорсинга сказано много правильных слов и написано немало статей. Например, эта: «Штатные программисты или аутсорсинг?» или «ИТ-аутсорсинг или собственный ИТ-департамент?». Конечно, аутсорсинг, как любой новый продукт на рынке, занимает умы маркетологов, и они начинают активно продвигать его, рассказывая про явные конкурентные преимущества новой услуги. Но если бы все так было хорошо, то аутсорсинг давно бы уже занял существенную долю на рынке и, наверное, не требовал бы столь активной рекламы. Однако этого не происходит и не произойдет никогда в такой области как программирование. Попробуем раскрыть в статье явные плюсы и минусы аутсорсинга и собственного программиста, которые, надеемся, окажутся полезными вам для решения своих практических задач.
Прежде всего, начнем с определения. Аутсорсинг — это передача непрофильных функций компании другой компании, которая специализируется на данном виде деятельности. Наверное, это самое главное: если ваша компания зарабатывает на продаже пирожков, то аутсорсить изготовление пирожков бесполезно. Если ваша компания осуществляет посредническую коммерческую деятельность, то аутсорс бухгалтерии и финансов невозможен, финансовая служба является ключевым и основным подразделением. Примеров можно приводить массу, но главное уловить суть – не всю деятельность можно передать на аутсорсинг. Это касается ИТ и программирования: некоторые задачи не возможно передать другой компании, так как это неминуемо приведет к ухудшению качества работы.
Про преимущества аутсорсинга сказано много правильных слов и написано немало статей. Например, эта: «Штатные программисты или аутсорсинг?» или «ИТ-аутсорсинг или собственный ИТ-департамент?». Конечно, аутсорсинг, как любой новый продукт на рынке, занимает умы маркетологов, и они начинают активно продвигать его, рассказывая про явные конкурентные преимущества новой услуги. Но если бы все так было хорошо, то аутсорсинг давно бы уже занял существенную долю на рынке и, наверное, не требовал бы столь активной рекламы. Однако этого не происходит и не произойдет никогда в такой области как программирование. Попробуем раскрыть в статье явные плюсы и минусы аутсорсинга и собственного программиста, которые, надеемся, окажутся полезными вам для решения своих практических задач.
Перечислим конкурентные преимущества аутсорсинга по сравнению с наймом собственного сотрудника:
1. Более низкая цена - главное преимущество. Считается, что аутсорсинг минимум на 10% дешевле найма сотрудника. С другой стороны, не все так просто — выгода может быть больше, но может стать и отрицательной. Стоимость аутсорсинга — интегральная величина, объединяющая различные факторы и аспекты в единую числовую характеристику. Если не понимать влияние этих факторов, а ориентироваться только на деньги, то можно получить низкое качество услуг.
2. Возможность более жесткого управления и контроля. Договор аутсорсинга, как правило, подразумевает ежемесячную оплату, поэтому появляется дополнительный механизм манипулирования подрядчиком: неоплата в срок договора или вообще разрыв отношений (с трудовым договором так не поступишь). Вы разом решаете бесконечные социально-трудовые отношения внутри ИТ подразделения. Только надо иметь в виду, что подрядчик может сбежать от вас так же легко, как вы от него.
3. Привлечение нехватающих бизнесу компетенций. Если вам нужна разовая услуга, нет смысла нанимать сотрудника. Когда мы говорим об аутсоорсинге речь идет о длительных проектах или сериях.
На перечисленных выше трех пунктах преимущества аутсорсинга заканчиваются. Любая другая ситуация, скорее всего, является какой-то комбинацией этих трех факторов. При этом наблюдаются следующие связи преимуществ (рисунок 1). Аутсорсинг может применяться ради пункта 2 (и тогда пункт 1 может не работать) или ради пункта 3, тогда пункт 1 соблюдается. То есть привлечение новых компетенций через аутсорсинг должно быть дешевле чем найм, а за контроль можно и переплатить. По сути мы пришли к двум устойчивым ситуациям с аутсориснгом в треугольнике крайностей «цена — компетенции — контроль».
Рисунок 1 – треугольник преимуществ аутсорсинга.
Теперь рассмотрим ситуации применения аутсорсинга, характерные для ИТ. Еще раз повторимся, что найм подрядчика на проект это не тоже самое, что найм программиста на аутсорс. В первом случае происходит работа по проекту с передачей управления проектом подрядчику, во втором управление происходит на стороне заказчика, а проект по сути бесконечный. Нас интересует только аутсорсинг, проекты — это другая история с точки зрения управления. Рассмотрим типовые ситуации.
Если бизнес, например, аутсорсит техническую поддержку, то главным критерием является цена: аутсорс должен быть дешевле, чем найм своего системного администратора. Для организации с количеством техники менее 50 единиц это — единственный способ. Неважно, как это организовано юридически, через трудовой договор или договору оказания услуг, в результате вы будете платить меньше денег, чем работнику на полную ставку, а контроль теоретически улучшится. При большей численности техники, когда в техподдержке работают уже несколько человек, вопрос контроля становится более актуальным, но экономическая составляющая тоже выглядит привлекательно. Так продолжается до определенного порога (по опыту около 300 машин) далее контроль может ухудшаться, а стоимость, наоборот, падать. При таком объеме работ может иметь смысл сформировать свою ИТ службу. Отметим, что при аутсорсинге с компетенциями может быть хуже или лучше, но разнообразие технических решений всегда страдает, аутсорсеру технической поддержки невыгодно для себя разводить зоопарк разных решений, он стремится к унификации
С аутсорсингом программистов ситуация вроде похожая, но акценты смещаются. При малой численности организации речь идет, прежде всего, о привлечении нехватающих компетенций, при этом контроль и цена страдают. По мере роста числа задач ситуация не меняется, а заказчику нужно переходить на проектные методы управления. Тогда вместе с компетенциями будут хорошими и контроль и экономика. Однако проектные методы хороши для крупных задач и отвлекают ресурсы у заказчика на управление, хотя в целом проектные методы управления не тема настоящей статьи.
Обсудив преимущества, которые дает аутсорсинг, надо теперь сказать о недостатках, а они существенны. Первый главный недостаток – это примитивизация оказываемых аутсорсером услуг. То есть в погоне за прибылью аутсорсинговая компания стремится максимально унифицировать, упростить услуги и часто это идет вразрез с интересами заказчика. Аутсорсеров привлекают для получения нехватающих бизнесу компетенций, но взамен бизнес получает низкое качество услуг.
Последнее явление нельзя недооценивать. Аутсорсинг ориентирован на процессные виды работ, а не проектные, нет четких вех и KPI для промежуточной оценки. Постепенно аутсорсер продавливает заказчика, ухудшает качество предоставляемых услуг и, если у заказчика нет сил и ресурсов с этим бороться, то все закончится печально. К примеру, многие компании-интеграторы, пытающиеся предоставлять услуги аутсорсинга, имеют в штате недостаточно квалифицированных специалистов, поэтому такой аутсорсинг однозначно не интересен клиенту, и рынок это доказал.
Возвращаясь к недостаткам аутсорсинга, мы постепенно приходим к ключевой мысли. Для того, чтобы пользоваться аутсорсинговой моделью, нужно иметь внутри компании компетенции, достаточные для контроля аутсорсинга. Если таких компетенций нет, то аутсорсинг спустя некоторое время, станет дороже чем содержание собственных сотрудников, и компания придется вернуться к модели найма программистов и специалистов по трудовому договору. Необходимость обязательного наличия компетенций для контроля является основным недостатком аутсорса, причем данное требование более существенно, чем при проектной работе.
Возникает закономерный вопрос, как же быть в ситуации если компетенций для контроля нет, а перспектива нанимать ИТ директора не кажется верной. Выход очевиден: так же привлечь компетенции для контроля на аутсорсинг. В итоге привлекаются уже 2 аутсорсинговых компании, одна из которых является исполнителем, а другая — консультантом по контролю качества. Главное чтобы эти два аутсорсера не были аффилированы между собой, это единственное, за чем должен следить заказчик. Такая модель не является новой, и по стоимости она не очень дорога. Консультанта можно привлекать на несколько часов в месяц, этого достаточно для контроля аутсорсера-исполнителя.
Углубляясь в вопросы распределения обязанностей между аутсорсингом и клиентами нужно отметить, что передать на аутсорсинг можно незначительную, но наиболее рутинную часть задач. Как видно на рисунке 2, на аутсорсинг можно передать неважные задачи с большой численностью персонала, задачи поддержки и непосредственного программирования софта.
Возвращаясь к насущным проблемам разработки на 1С, детально посмотрим, как применять изложенный выше теоретический материал. Прежде всего отметим, что в рамках задачи разработки информационной системы на 1С, как и любой другой системы, должны быть выполнены следующие 3 функции:
• Разработка архитектуры, концепции информационной системы, авторский надзор;
• Управление разработкой информационной системы, проектное управление;
• Непосредственная реализация и внедрение информационной системы.
Какие из этих функций можно передать на аутсорс? Целесообразным представляется привлечение компетентных специалистов для первой функции. Работа с ними может быть сделана либо в проектном, либо в постоянном режиме на основе договора аутсорсинга. Непосредственная реализация также может быть поручена через проектный договор или договор аутсорсинга, но здесь проектная схема работы является самой эффективной. Управление разработкой лучше оставить в руках сотрудников компании заказчика. С данной задачей может справиться проект-менеджер, занимающийся не только ИТ вопросами — ведь ИТ менеджмент в принципе не сильно отличается, например, от строительства дома.
Таким образом, в направлении разработки информационной системы аутсорсинг как форма взаимодействия между заказчиком и подрядчиком не находит широкого применения. Здесь правильней применять сдельное или проектное управление. Предполагаемая информационная система заказчика может содержать различные компоненты, например, 1С Склад, 1С Комплексная автоматизация, 1С Управление проектами и т.д., внедрение каждой компоненты может быть поручено отдельному подрядчику. Не имеет смысла развивать такие компетенции внутри компании, так как их всегда можно приобрести на рынке в хорошем качестве и необходимом объеме.
На этапе поддержки и эксплуатации информационной системы аутсорсинг находит активное применение. В условиях доделывания софта, постоянных изменений сложно прогнозировать объем работы, поэтому проектное управление не подходит. С другой стороны постоянно необходимо присутствие компетенций, приобретенных бизнесом в процессе внедрения информационной системы. Интенсивность использования этих компетенций невысокая, поэтому брать в штат специалистов смысла нет. В данном случае используется преимущество аутсорсинга такое как возможность привлечения компетенций; цена и контроль являются менее важными.
Рисунок 2 – алгоритм выбора способа взаимодействия с разработчиком.
В заключении попробуем явно ответить на вопрос, поставленный в заголовке статьи, нужен ли вам собственный программист или правильней нанять подрядчика на аутсорс. На рисунке 2 в виде схемы обозначены пути решения вашей задачи. На выходе вы получаете ответ на вопрос, какой вариант работы над задачей вам лучше подходит: аутсорс, программист в штате или проектный договор.
ключевые слова: программист 1с Владивосток, аутсорсинг Владивосток, аутсорсер, проектное управление Владивосток, 1С Владивосток