Социальные сети. Помимо бизнес-сети LinkedIn, можно также поискать разработчиков в обычных социальных сетях: Facebook, Twitter, Instagram StackExchange и на азиатских Weibo, Qzone и Renren. Все компании ведут аккаунты в социальных сетях, чтобы привлечь потенциальных клиентов. Они рассказывают о себе, команде, заказчиках и партнерах — много полезной информации.
Мероприятия. Если в выборе технологического партнера вам важно личное общение, посетите мероприятия для разработчиков программного обеспечения. Их очень много, они проводятся во всех уголках мира и, как правило, это ежегодные мероприятия. Узнать о ближайших можно в поисковиках или соответствующем разделе сайта Meetup.com (или его аналогах).
Кого искать: ключевые критерии
Первичное отсеивание кандидатов
Взгляните на портфель кейсов компании. Изучив его, вы узнаете, над какими проектами работала команда разработчика. Это поможет понять, есть ли у них опыт работы в нужной вам сфере бизнеса и программирования, а также даст представление об уровне профессиональных навыков и масштабе завершенных проектов.
IBM Blockchain делает проморолики для представления кейсов и затем предлагает прочесть их полные описания
Компании-разработчики, не имеющие большого опыта в создании программного обеспечения ERP, могут не знать о многих проблемах, возникающих в ходе разработки таких систем и их последующей эксплуатации. Масштаб прошлых проектов важен, поскольку так вы сможете оценить, понимает ли технологического партнер специфику вашей ниши бизнеса.
Изучите комментарии и отзывы. Проверьте, что о компании пишут в сети: социальных сетях, отзывниках, новостях и профильных ресурсах. Такие отзывы можно найти на Resiport, Venturepact и Clutch.co. Но будьте бдительны, многие такие отзывы куплены ради увеличения популярности или борьбы с конкурентами. Ищите сообщения с деталями и скринами договоров о сотрудничестве.
На некоторых листингах разработчиков, например, на сайте Venturepact, есть рейтинги
Кроме того, можно проверить претендентов на таких сайтах, как WebChecker, GlassDoor и BBB.com. Это ресурсы, где можно проверить
юридическую чистоту компании и почитать анонимные отзывы текущих и бывших сотрудников компании.
Проверьте технологический стек компании. Вам нужен партнер, который следит за технологическими инновациями и инвестирует в новые инструменты и технологии. Обучается новым навыкам и процессам разработки по мере их появления и использует это на практике. Поэтому внимательно посмотрите на портфолио кандидатов и задайте себе следующие вопросы:
- Они ранее создавали программное обеспечение для ERP-систем?
- Вы замечаете новаторский подход и/или инновационные технологии такие как блокчейн? Например, нейронные сети, виртуальная реальность.
- Они создавали программное обеспечение для компаний, которые похожи на вашу по сфере бизнеса, масштабу и цепочкам продаж?
- Участвует ли команда разработчиков в отраслевых конференциях, мероприятиях или открытых разработках?
- Какой подход к разработке они используют? Например, Agile или Scrum (80% IT-команд используют этот подход).
И помните, что в плане используемых технологий лучше нанять команду, которая специализируется на конкретной технологии, чем ту, чья веб-страница пестрит десятками различных логотипов, таких как
PHP, RoR, Net. или Node.js. Например, если вы хотите построить решение с помощью Python, выберите партнера, специализирующегося на таких проектах, а не большую компанию, которая использовала Python в относительно небольшой части своих кейсов.
Помните про географическое положение. При поиске аутсорс-разработчиков у вас может возникнуть желание нанять команду с другого конца света только потому, что они предлагают самую низкую цену. В этом нет ничего плохого, но нужно учитывать следующие моменты:
- Коммуникация. Успешное сотрудничество предполагает тесное общение, которое невозможно, если вы разговариваете на разных языках или живете в отдаленных друг от друга часовых поясах.
- Культура. Команда разработчиков должна разделять с вами все или хотя бы основные элементы нашей культуры. Это спасет от множества конфликтов и так называемых «проблем перевода», когда вы вроде как говорите про одно и то же, но имеете в виду совершенно разные вещи.
- Доступ к «телу». Разработка ERP требует изучения бизнес-процессов, что практически невозможно без личного посещения офиса и производственных помещений компании для изучения всего «изнутри».
- Образование. Важно помнить, что не везде образование, культура, уровень доступа к технологиям и прочие факторы способствуют обучению хороших программистов. Например, в Китае и Северной Европе с этим нет никаких проблем, тогда как в Нигерии или Пакистане хороших программистов очень мало.
Уровень навыков разработчиков программного обеспечения по странам (данные HackerRank)
О чем спрашивать кандидатов
Основные вопросы:
- Как вы работаете, какой подход используете?
(Совет: получите общее представление о процессе разработки, составе команды, структуре управления и тому подобном.)
- Какие средства коммуникации используете, чтобы узнать о PPP: планах, процессах, проблемах.
(Совет: Нужна процедура или механизм, которые позволят вам следить за тем, что происходит с проектом.)
- Каким образом мы узнаем, что что-то пошло не так? Как вы обрабатываете неудачные проекты?
(Совет: Убедитесь, что ранее разработчики были откровенными с заказчиками, проекты которых пошли по «плохому» пути. Найдите таких заказчиков и пообщайтесь с ними. Если вам говорят, что в компании не было проблем или неудач — не верьте! Никто не идеален.)
- Чего вы ожидаете от нас во время сотрудничества и чего нам ожидать?
(Совет: Нужно заранее узнать об обязанностях и потребностях обеих сторон, ролях в команде и сферах ответственности.)
- Как вы определяете, что нужно заказчикам?
(Совет: Нужно понять, каким образом компания-разработчик выяснит, какое именно программное обеспечение ERP вам нужно. Обычно для этого используют брифы, опросники и личное общение, общие совещания.)
- Какие инструменты вы используете для совместной работы?
(Совет: Было бы здорово, если бы вы для общения и совместной работы использовали не только электронную почту, но и, например, Trello, Jira, Asana или Taiga для отслеживаемости процессов.)
- Будут ли использоваться инструменты для мгновенного общения?
(Совет: Такое общение более эффективно.)
- Будет ли проект-менеджер и программисты, занятые моим проектом, параллельно участвовать в других проектах?
(Совет: Намного эффективнее, когда люди работают над одним проектом.)
Технические вопросы:
- Каким образом вы следите/обеспечиваете качество программного обеспечения? Используете ли вы, например, автоматические тесты или рецензирование кода?
(Совет: Пропишите это в договоре.)
- Кто будет владельцем исходного кода ERP-системы?
- Вы разрабатываете техническую документацию? Как?
- Можете предоставить профили сотрудников?
(Примечание: Обычно такие профили анонимизированы, то есть без контактных и личных данных).
- Могу ли я пообщаться с самым опытным/профессиональным человеком в вашей команде?
- Как вы решаете вопрос стоимости?
(Совет: Пусть приведут пример, похожий на ваш.)
- Можете показать ваши образцовые кейсы?
Дополнительные вопросы:
- Почему мы должны выбрать именно вас, чем вы лучше остальных?
(Совет: Если ответ абстрактный — это плохой вариант, если конкретный (у нас отличный проект-менеджер, старший программист, IT-архитектор) — все хорошо.)
- Насколько просто и быстро вы сможете увеличить команду?
(Совет: Обычно для этого требуется 1–3 месяца. Если меньше, скорее всего, для вас соберут команду плохо организованных фрилансеров.)
- Какая у вас почасовая ставка для разных категорий сотрудников?
(Совет: Обычно именно это больше всего влияет на стоимость разработки.)
- Вы работали с бизнесом моего масштаба, сферы деятельности?
- Можете предоставить контакты бывших заказчиков — удачных и неудачных проектов?
(Совет: Неудавшиеся проекты значительно больше говорят о компании: почему проект провалился, кто виноват, как разработчики выходили из этого, как все в итоге завершилось).
Как сделать окончательный выбор
В идеале нужно выбрать 5–20 кандидатов, которые подходят по всем вашим требованиям и критериям, и провести открытый тендер. Так вы сможете оценить кандидатов в условиях конкуренции и получить более выгодные условия сотрудничества.
Только помните, что не стоит гнаться за самой низкой ценой (самая высокая тоже ничего не говорит о качестве продукта), обычно ее предлагают те, кому больше нечего предложить.