Найм разработчика без понимания IT-сферы - страшный сон любого эйчара-гуманитария. Как профессионально оценить специалиста? Может быть, подучить пару языков? Закончить экстремально быстрый интенсив по специализации фулстека?
Обычно такая проблема не стоит перед крупными IT-компаниями: внутренний кадровик уже имеет опыт по найму технарей. Но если речь идет о стартапе, здесь уже все значительно сложнее.
Во-первых, определитесь, действительно ли вам нужен штатный специалист или можно обойтись силами одного фрилансера? Если у вас еще нет четкого видения своего проекта и вы находитесь в процессе генерирования идей, возможно, что через пару месяцев вашему специалисту будет нечего делать.
Если же вы определились, что вам точно надо, то можно начинать поиск.
У стартапов нет крутых тимлидов, чтобы быстро обучать новичков, поэтому разработчика нужно брать опытного - как минимум, от 3 лет стажа. Отлично, если он уже поработал в крупных компаниях. Кстати, если вам нужен только один специалист, то обратите внимание на фулстеков - программистов, которые хорошо знают и понимают все этапы разработки, а также владеют всем стеком технологий веб-программирования.
Как правильно составить вакансию?
Молодая и динамично развивающаяся компания, дружный коллектив, лидер на рынке - забудьте о таких формулировках раз и навсегда. Никому не хочется тратить свое время на то, чтобы до конца дочитать ваш водянистый текст и попытаться понять, что же конкретно вы предлагаете.
А разработчики - люди серьезные, которым нужна конкретика, четкость и полная прозрачность????
????????Вакансия разработчика должна быть составлена таким образом, чтобы после первого прочтения соискателю сразу стало ясно, какими проектами ему предстоит заниматься, какой стек технологий используется, каковы ценности в компании, сколько будете платить, есть ли возможность роста и обучения, а также почему он должен захотеть работать именно у вас.
????????Описание проекта: например, мы занимаемся разработкой мобильного приложения (название) для фрилансеров в сфере digital, с помощью которого исполнитель и заказчик могут найти друг друга. Обязательно укажите, какие технологии и инструменты используются в разработке, и какой частью разработки будет заниматься искомый кандидат.
Описывая задачи и цели, избегайте формулировки «работа в интересном проекте». Лучше напишите о том, чего вы хотите достичь при помощи нового сотрудника - увеличить скорость работы приложения, привлечь большее число пользователей, сделать интерфейс понятным и удобным.
????????Команда: очень важная составляющая. Опишите, сколько человек работает над проектом, на каких должностях, сколько всего людей числится в компании, есть ли представительства в других городах или странах. Например: над нашим мобильным приложением работают фронтенд, бэкенд, разработчики Android и iOS, аналитики, тестировщики, а еще есть крутой продакт менеджер и тимлид, который обучает новичков.
Если фаундер активно принимает участие в разработке, то расскажите и об этом.
????????Обязанности: не перечисляйте просто список языков и фреймворков. Четко сформулируйте, чем нужно владеть для работы у вас: например, кандидат должен на продвинутом уровне знать Python, есть опыт работы с приложениями, умеет масштабировать базы данных. Если ваша компания - начинающий стартап и никакого тимлида еще нет, попросите опытного программиста помочь составить понятный список требований.
И, конечно, не забывайте о бонусах - почему кандидат должен хотеть работать у вас? Что есть у вас, чего нет о конкурентов?
По сути - описание вакансии это продажный лендинг. Чем четче, привлекательнее и понятнее все описано - тем выше шансы на хорошую конверсию.
Вопросы для собеседования с разработчиками
Представьте, что ваша вакансия уже собрала достаточное количество откликов и теперь осталось делом за малым - оценить каждого кандидата и выбрать того, кто идеально впишется в ваш проект и вашу компанию. Первый контакт лучше осуществить через мессенджер, особенно, если вы ищите разработчика на удаленку (может быть разница с вашим часовым поясом).
????????Перед собеседованием (лично или по видеоконференции) определитесь с тем, что вы хотите выяснить на встрече. А именно:
Не только опыт кандидата, но и то, что он может сделать для вашего проекта сейчас и в будущем;
Насколько человек сможет вписаться в вашу команду и культуру вашей компании;
Его личные качества - например, если речь идет об удаленной работе, то с дисциплиной у человека все должно быть в порядке. Мелочь, но важно, если вы не планируете тратить свое рабочее время на то, чтобы постоянно «пинать» сотрудника и круглые сутки контролить его задачи.
????????Если вы проводите собеседование лично на встрече, убедитесь, что вам есть, где его проводить - в отдельной комнате/переговорке, чтобы рядом не было посторонних. Можно взять с собой в качестве подстраховки технического специалиста - но не для того, чтобы проводить перекрестный допрос, а на случай, если вам понадобится помощь.
Не пытайтесь сократить время собеседования - отведите на встречу как минимум 1,5 часа. Не нужно общаться с кандидатом, постоянно заглядывая в листок бумаги или ноутбук - подготовьтесь заранее и проявите уважение к человеку.
????????Какие вопросы нужно задавать?
Начните с того вопроса, который будет приятен кандидату.
????А именно - «Расскажите о проекте, которым вы гордитесь больше всего и что конкретно вы сделали для его успешной реализации?Как была построена работа внутри проекта, чем занимались остальные члены команды?»
????Следующий вопрос может быть противоположным - «Расскажите о самом неудачном запуске проекта и что бы вы сейчас в нем изменили?» Хороший разработчик постоянно анализирует свою работу, и вам вряд ли захочется нанимать человека, который постоянно повторяет свои ошибки.
????«Что для вас самое сложное в работе?»Вопрос, который позволяет понять слабые стороны специалиста в технических навыках.
????«Как отслеживаете последние тенденции в веб-разработке?» Тут сразу будет понятно, какие усилия кандидат прикладывает, чтобы оставаться востребованным специалистом.
????«Опишите процесс создания веб-приложения». Вопрос уместен для разработчиков любого уровня. Ответ на него дает понимание, как кандидат справляется с базовыми задачами - использует ли он фрагменты кода или же дополнительные инструменты для программирования, такие как Yeoman?
????«Можете ли вы объяснить назначение каждого типа HTTP-запроса при соблюдении требований RESTful» - это отличный вопрос, чтобы оценить базовое понимание специалистом HTML.
????Вопрос на понимание CSS - «Как лучше будет интегрировать пять разных таблиц стилей в сайт?». Что сделает кандидат: объединит их в один CSS-файл или только для конкретного приложения, как использует бибилотики стилей?
????«Как лучше всего организовать JavaScript-код?» - очень хороший вопрос, чтобы понять, как программист систематизирует свой код. А именно: разделяет ли он JavaScript и HTML, использутет ли специальный скрипт для объединения файлов в один пакет?
????«Что используете для выявления багов?» - тут уже зависит от среды разработки. Ваша задача узнать не то, каким инструментом пользуется кандидат, а как подходит к решению проблем.
Опять же - с составлением вопросов под конкретную должность и сферу лучше обратиться к опытному разработчику, который сможет вам помочь. Если вы рассматриваете человека на позицию, где важны коммуникативные навыки, то стоит задать следующие вопросы:
????«Какую проблему, не касающующуюся разработки, вы решили?». Тут неважно, с какой именно проблемой столкнулся ваш кандидат, важно увидеть его способность взаимодействовать с другими людьми и решать разные вопросы.
????«Был ли у вас опыт парного программирования? Опишите его». Вопрос, который стоит задать, если хотите узнать, готов ли кандидат разбираться с коллегой в его коде.
????«Был ли у вас опыт работы с заказчиком?». Можно понять, как кандидат реагирует на критику и мнение других людей.
Что, если нужна команда разработчиков?
Если вы ищите специалистов для стартапа, то речь уже пойдет о найме команды, и тут тоже важно учесть некоторые нюансы.
????????Например, в теории это выглядит довольно просто: набрали людей, подготовили описание вашего продукта и ваше видение, обозначали дедлайны - казалось бы, этого достаточно. Однако довольно часто что-то может пойти не так: срывы сроков сдачи, постоянные баги, бесконечные доработки, «выгорание» команды.
Ниже расскажем, как нанимать команду спецов, чтобы снизить вышеперечисленные риски⬇
????????Определитесь с составом команды, которая зависит от масштаба проекта и целей бизнеса. Если ваш проект на стадии стартапа, то можно не нанимать большую команду. Однозначно нужен тимлид, фронтенд и бэкенд разработчики, UI- и UX-дизайнер, тестировщик, аналитик. Вопрос - нужен ли фулстек - программист который знает и понимает все стадии разработки? Если ваш бюджет позволяет, то однозначно нужен: специалист может посмотреть на каждую задачу комплексно, помогает справиться со сложными задачами и вообще умеет практически все.
Фулстека часто нанимают при ограниченном бюджете в стартапы, но здесь есть большой риск выгорания специалиста из-за многозадочности и срывов дедлайнов.
????????Нанимайте людей с опытом не менее 3 лет в крупных и средних компаниях - такие специалисты понимают правильную культуру компании, у них уже есть опыт реализации качественных продуктов, им не нужно объяснять, как нужно работать. Понимание правильной культуры компании: когда разработчик работает на результат и не приемлет конечного продукта на уровне «так себе», умеет сотрудничать с другими членами команды и всегда открыт к развитию и обучению. Не нанимайте людей без опыта и студентов - экономия на бюджете на старте проекта в итоге выльется вам в крупную сумму на финальном этапе, когда придется все переделывать и искать новых людей.
????????Очень важно увлечь команду вашим продуктом. Когда разработчик горит идеей и хочет самореализоваться в рамках вашего проекта - это одна из сильнейших мотиваций. Бонусы, зарплаты, приятные рабочие условия - не менее важные составляющие. Специалист может качественно работать за хорошую зарплату, но если вы стартап, то нужно сделать все, чтобы замотивировать сециалистов своим продуктом и его идеей.
Если вы нанимаете специалистов не по отдельности, а, например, берете готовую команду на аутсорсе, то пообщайтесь с каждым членом группы, а не только с тимлидом. Насколько каждый из них осведомлен о своей роли и целях? В хорошей команде группа людей может отлично функционировать как вместе, так и по отдельности.
Удачи!
Комментарии (16)
ilmarinnen
22.07.2022 20:10+13????«Можете ли вы объяснить назначение каждого типа HTTP-запроса при соблюдении требований RESTful»
ДА.
Следующий вопрос...
karambaso
22.07.2022 20:40+6Как нанять программиста, если ты не программист
Сначала нужно найти приличного программиста, которому доверяете. Лучше всего старого знакомого. Если такого нет - предлагайте оплату за услуги по соответствующему консультированию кому-то, кому доверяют ваши знакомые. Если и у знакомых нет - пишите объявление о краткосрочной вакансии архитектора. Далее находите точки психологического соприкосновения с кандидатами. Если нашли - пробуете давать им кандидатов на постоянный найм. Присутствуете на собеседовании. После общаетесь с собеседовавшим спецом. Выясняете технические тонкости. Организационные и личностные детали выявляете сами, не полагаясь на технического специалиста.
Далее следует вопрос "как найти архитектора на кратковременную вакансию консультанта". Ответ: во первых, не надо жмотить денег. Во вторых, хорошо оплачиваемые консультации очень даже интересны многим хорошим спецам. Это отвлечение от текучки, взгляд на новую задачу, общение с более молодыми разработчиками с правом голоса за приём на вакансию, ну и лёгкие деньги, быстро, без серьёзного отвлечения от основных дел. Остаётся лишь разместить такую вакансию в местах скопления требуемого контингента, например - написать статью на данном ресурсе. Отклик будет хорошим. Ну если статья и ваше предложение в ней не будут откровенным убожеством, разумеется.
vmkazakoff
22.07.2022 21:50+5Ваш путь с ненулевой вероятностью ведёт к найму проходимца, который смог заговорить зубы. А на самом деле решение давным давно есть: агенства, которые могут в т.ч. нести ответственность за нанятых через них людей. И вот дальше вы уже верно пишете: через них лучше нанять архитектора или техлида, и не экономить при этом.
В итоге вся статья сводится к тезису, что первых программистов надо нанять через агенство с хорошей репутацией, а дальше они уже наймут себе помощников задав им нормальные вопросы, а не вот этот шлак из статьи.
funca
23.07.2022 00:06В итоге вся статья сводится к тезису, что первых программистов надо нанять через агенство
Автор вроде и представляет агентство. Подозреваю, что вся статья писалась ради этой мысли. Просто не озвучивает ее в явном виде, оставляя возможность читателям сформулировать ее в комментах.
LuggerFormas
22.07.2022 20:55Настолько безграмотно (не в смысле знаний, их там нет априори, а именно русского языка) написано, что уверен, автором ни разу не прочитано. И выучите уже спряжения глагола "искать", сил моих нет!
vital_pavlenko
22.07.2022 23:12+8????«Как лучше всего организовать JavaScript-код?» - очень хороший вопрос, чтобы понять, как программист систематизирует свой код. А именно: разделяет ли он JavaScript и HTML, использутет ли специальный скрипт для объединения файлов в один пакет?
Шел 2022 год…
gdt
23.07.2022 15:20+2Программист != веб-разработчик. Автор без обид, но хотя бы немножко подтянуть предметную область не мешало бы.
DaneSoul
23.07.2022 23:57+2«Основная проблема использования разговорников в том, что вам ведь могут и ответить» (С)
Смысл задавать вопросы, если не понимаешь каков должен быть на них ответ?
Если проводящий интервью человек далек от разработки то в ответах на большую часть этих вопросов можно нести любую чушь, главное «уверенно и профессионально».
jetcar
25.07.2022 09:18Медработников не собеседуют неквалифицированные люди, ИТ тоже довольно сложная штука с чего вы решили что после прочтения пары статей стали хоть в чём-то разбираться и позволяете себе задавать технические вопросы?
AllKnowerHou
25.07.2022 09:50Самое забавное что есть вакансии где ошибки в словах и названиях технологий.
m-oblepiha
25.07.2022 09:54????«Как лучше всего организовать JavaScript-код?» - очень хороший вопрос, чтобы понять, как программист систематизирует свой код. А именно: разделяет ли он JavaScript и HTML, использует ли специальный скрипт для объединения файлов в один пакет?
В мире победившего реакта спрашивать про разделение кода и верстки – серьезно?
Про "специальный скрипт" даже комментировать не хочется. Кажется, что в "команде" нет ни одного разработчика, который мог бы накидать HR хотя бы список ключевых слов для вакансии.????«Можете ли вы объяснить назначение каждого типа HTTP-запроса при соблюдении требований RESTful» - это отличный вопрос, чтобы оценить базовое понимание специалистом HTML.
А, нет, не кажется.
andriymoskal
Чё?
Текст генерировала нейронка.
sovaz1997
Это доказывает тупость статьи, а также опровергает саму себя. В общем, вывод следующий - чудес не бывает и нанять программиста если ты сам не программист - это очень нетривиальная задача. И уж тем более пытаться собеседование.