Главное Авторские колонки Вакансии Образование
Выбор редакции:
530 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Работа на аутсорсе vs работа в продуктовой компании — куда пойти программисту

“Все IT-компании похожи, как братья, везде разработчики пишут код”.Можете ли вы с этим согласиться? Нет? И правильно!
Мнение автора может не совпадать с мнением редакции

Обобщенное представление об этом имеют лишь люди, далекие от разработки. Программисты понимают, насколько разные ИТ-компании приглашают их на работу. Это может быть компания с многолетним стажем работы или стартап, международный или локальный бизнес, работа на аутсорсе или работа в продуктовой компании. Последнее сравнение используется часто, поскольку говорит о ярко выраженных различиях и сходствах.

Мы решили поделиться мнением насчет продуктовых и аутсорс компаний, так как в ходе многолетней работы усвоили их особенности. Прочитав эту статью, вы лучше увидите разницу между разработкой продуктов и выполнением проектов и поймете, что вам больше подходит.

Освежим в памяти базовые понятия

Аутсорсинговая IT-компания продает услуги разработки программного обеспечения на заказ и реализует разноплановые продукты для клиентов. Заказчики платят за готовый результат, выполненный в рамках ТЗ.

Продуктовая компания разрабатывает авторский IT-продукт или группу продуктов (приложения, сайты, антивирусы) и получает прибыль с них. Как правило, продукты находятся в собственности компании, как минимум, на 51%. Продукт использует один набор либо линейку технологий в течение долгого времени.

В фокусе внимания аутсорс компании — грамотное управление проектами заказчиков, ограниченное сроками и бюджетом.

В центре внимания продуктовой компании — эффективное управление своими продуктами: поэтапная разработка, продвижение среди пользователей и развитие.

Говоря про аутсорс и продуктовые компании, противопоставляют проекты и продукты и подходы к работе, возникающие на этой основе. Давайте рассмотрим cходства и различия компаний двух типов.


Есть ли сходства в работе над проектами и продуктами?

Да, и их куда больше, чем кажется на первый взгляд.

  1. Программное обеспечение разрабатывается по схожим процессам и концептам.

Так, зарекомендовавший себя Agile-подход может использоваться в компаниях обоих типов. На проектах он будет сопровождаться более строгим ограничением по числу часов и бюджету, чем при разработке продуктов.

  1. И аутсорс, и продуктовые компании учитывают пожелания клиентов и стремятся наладить многолетнее сотрудничество.

Разработчики на аутсорсе могут годами создавать проекты для постоянного клиента, относясь к ним также внимательно, как их коллеги из продуктовой компании к своим продуктам. Так, мы более 10 лет сотрудничаем с компанией Effective Coverage, помогая партнерам обслуживать систему онлайн-страхования.

  1. И продуктовые компании, и аутсорс могут иметь крупный штат и внушительную прибыль.

Бизнес, «собранный на коленке», и небольшие команды больше не считаются уделом аутсорса. К примеру, Luxoft — одна из самых крупных по численности сотрудников IT-компания мира, ее штат приближается к 13000 человек, но она сфокусирована не на внутренних проектах, а на внешних.

Командная работа и ориентир на потребности конечных пользователей стали ценностями, близкими не только разработчикам продуктов, но и проектным командам. Если же говорить про высокие зарплаты для программистов и приятные «плюшки», то они давно считаются «правилом хорошего тона» для всех IT-компаний.


А в чем заключается разница:

#1. Сроки задач и отношение к времени

В работе на аутсорсе сроки задач определяются условиями соглашения с клиентом. Заказчик платит за итоговый результат и не готов менять дату релиза и бюджет без причины. Разработчики зачастую ведут почасовой трекинг рабочего времени.

В продуктовой компании сроки выполнения задач тоже играют роль, но они не так жестки, как на аутсорсе. Конечно, если медлить с выводом продукта на рынок или его обновления, это плохо отразится на бизнесе. Руководство компаний выставляет привязанный к срокам KPI менеджерам и/или команде и следит за его исполнением.

Временные рамки задач определяются не внешними обязательствами, а, скорее, внутренними задачами (планом продвижения, исследованием рынка, требованиями эффективности).

Распространено мнение, что на аутсорсе разработчики теряют в зарплате из-за простоев, когда у команды мало заказов. От таких моментов никто не застрахован, но далеко не во всех компаниях это время не оплачивается. В Azoft сотрудникам гарантируют 40-часовую загрузку в каждую неделю. Если у разработчика нет задач по внешним проектам, ему организуют внутреннюю загрузку или обучение.

#2. Степень зависимости бизнеса от конкретных продуктов

Процессы в продуктовой компании заточены под выпускаемые решения и зависят от их успеха на рынке. Если ключевой продукт провалится, компания лишится основного источника прибыли, а если «выстрелит» — войдёт в историю. Часто такой бизнес сосредоточен на одной отрасли, например, на банковской. Ситуация на профильном рынке напрямую влияет на доходы компании.

Аутсорс меньше зависит от успеха конкретного приложения. Он сотрудничает с клиентами из разных отраслей, может браться и за госзаказы. Многолетнее партнерство ценится, но не является обязательным условием. Если один рынок просаживается, можно уделить больше внимания поиску других заказов. Например, наша компания работает с клиентами из телекома, логистики, здравоохранения, финансовой отрасли, образования, искусства.

#3. Корпоративная культура и интересы сотрудников

Если компания выпускает продукты для музыкального рынка, ее сотрудники должны быть глубоко погружены в его процессы. Специализация накладывает заметный отпечаток на интересы людей и общую корпоративную культуру.

В аутсорсе культура формируется без привязки к одному из проектов. Члены команды могут иметь не пересекающиеся интересы и хобби. Клиенты из разных стран мира позволяют познакомиться с многочисленными культурами, способами взаимодействия, стилями коммуникации.


#4. Возможность сменить проект или специализацию

Продукт предполагает узкую специализацию и эффект полного погружения в определенную сферу. Конечно, глубокое знание отрасли ценится на рынке. Но тогда разработчику должна устойчиво нравиться сфера, в которой развивается продукт. Если он устанет от постоянного пребывания в ней, чтобы поменять профиль, будет вынужден уволиться из компании.

На аутсорсе программист чаще сталкивается с режимом многозадачности и должен более гибко переключаться между проектами. Когда заказов много, и все — небольшие, он может перестать чувствовать причастность к ним («эффект конвейера»).

Если разработчик устал от конкретного направления (например, от приложений для страхования или ритейлеров), может уйти в работу над другим проектом или обучиться новым технологиям. Сегодня он делает мобильный кошелек, а завтра — виртуальную примерочную с AR. Middle-разработчикам проще расти профессионально, пробуя силы в разных задачах и сферах. Ниже вероятность столкнуться с легаси и устаревшими технологиями. Можно получить широкую отраслевую и технологическую экспертизу.

Некоторые разработчики считают, что качество кода в продуктовых и аутсорс компаниях различается. Мы не согласны.

Где бы вы ни работали, код зависит от людей, которые его пишут. Это вопрос качества работы и времени, выделенного на производство. При разработке продукта на решении может плохо отразиться устаревший legacy код, который пишется годами. Чтобы внедрить что-то новое, сотрудник должен согласовать идею с широким кругом коллег и заручиться их поддержкой. Так многие инициативы исчезают ещё до реализации. Это демотивирует разработчиков.

А если идею и примут, есть риск, что из-за любого «новаторства» в коде даже основной функционал приложения перестанет работать. Такие сложности случаются и на аутсорсе, но реже и менее масштабно. Это связано со сроком работ по проектам.


Кому лучше подойдет работа на аутсорсе, а кому — в продуктовой компании?

Аутсорс позволяет поработать в команде под присмотром опытного наставника, поучиться незнакомым технологиям и собрать внушительное портфолио. Программисты могут быстрее расти профессионально за счет интенсивного обмена знаниями с коллегами.

Проекты, полученные от клиентов с разным профилем, предполагают меньше однообразия, чем разработка определенного продукта. Они могут заметно отличаться по тематике и сложности.

Здесь есть, куда расти в плане карьеры. Разработчик может не только прокачивать навыки владения технологиями, но и, если есть желание, попробовать себя в «смежных ролях» — перейти в позицию техлида, тимлида, PM.

Работа в продуктовой компании больше подходит тем, кому комфортно, когда задачи планируются централизованно, и переключение между ними происходит более плавно. Программист может участвовать в разработке на всех этапах создания продукта. Он погружен в контекст одного решения, а не распределяет внимание между проектами.

Продуктовую компанию обычно характеризуют акцент на традиции в коде и правила работы с продуктом. Это определяет выбор технологий и подход к процессам. Работая в компании этого типа, можно: поучиться лучше понимать запросы конечных пользователей, получить опыт взаимодействия со сложившейся командой, понять, как в ней отлажены процессы, стать востребованным узкоспециализированным специалистом.

Какую компанию вы бы ни выбрали, мы желаем с любовью и вниманием относиться к своему делу. Пусть создаваемые при вашем участии продукты и проекты меняют мир к лучшему!

А если вам близки наши взгляды на разработку, и вас заинтересовала работа в Azoft, напишите на job@azoft.com. Мы не оставим обращение без внимания!

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.