Мобильный телефон стал основным инструментом потребления информации и решения повседневных задач. Люди буквально живут за экранами своих телефонов: читают новости, общаются, оплачивают услуги, заказывают еду, смотрят фильмы, проходят курсы.
Компаниям приходится активно вкладываться в создание мобильных приложений, чтобы коммуницировать со своими клиентами. В результате спрос на мобильных разработчиков резко вырос: кандидатов нужной квалификации на всех не хватает.
Об этом мы и поговорили с IT-рекрутером Skyeng Татьяной Синевой. Она рассказала, как им удается ежегодно нанимать по 10–15 мобильных разработчиков уровня «мидл» и «сениор», что делать, если не получается закрыть вакансию, и как построить эффективную воронку подбора.
Татьяна Синева, IT-рекрутер Skyeng
Как выглядит наш подбор мобильных разработчиков
Для начала расскажу, кого и в каких количествах мы нанимаем, на какой стек технологий ориентируемся, как быстро закрываем позиции.
Объем найма: ежегодно мы нанимаем по 10–15 мобильных разработчиков.
Уровень кандидатов: сейчас мы рассматриваем специалистов уровня «мидл+» и выше. Требования к кандидату зависят от команды, где открыта вакансия.
Например, у нас есть команда платформы — она создает инструменты, которые другие разработчики используют при работе над продуктом для конечного пользователя. В эту команду жесткий отбор: мы нанимаем туда специалистов с глубокими техническими знаниями и опытом, в то время как требования для продуктовых команд мягче.
Сроки найма зависят от уровня позиции. Например, мидла на типовые задачи можно нанять за 2 недели, а на поиски сениора нередко уходит больше времени. В среднем одна вакансия в мобильной разработке закрывается за месяц.
Стек технологий: наши Android-разработчики пишут на Kotlin с Coroutines, а iOS-разработчики — на Swift, в некоторых продуктовых командах уже используется SwiftUI.
На рынке, кроме нативных iOS и Android-разработчиков, есть специалисты, которые пишут на кроссплатформенных фреймворках, например React Native или Flutter. С помощью этих фреймворков один человек может создавать приложения, которые запускаются как на iOS, так и на Android.
Почему мы не нанимаем таких универсальных разработчиков, хотя это кажется более выгодным для бизнеса? К сожалению, кроссплатформенные фреймворки не дают такой функциональности и возможностей, как нативная разработка. Используя их, мы рискуем просесть в качестве продукта.
Специфика найма мобильных разработчиков
Быстрый скрининг
У мобильного разработчика, в отличие от бэкендера и фронтендера, не так много фреймворков и языков программирования. Поэтому рекрутер тратит меньше времени на поиск нужных специалистов и скрининг.
Долгий поиск
Позиции в мобильной разработке чаще всего закрываются холодным поиском. Типичная ситуация — рекрутер находит профиль кандидата в LinkedIn, а там написано что-то вроде: «Работает iOS-инженером в компании „Белка“ 1 год» и больше никакой информации нет.
Рекрутеру сначала нужно заинтересовать кандидата. А если это удастся сделать, то позже в ходе разговора может оказаться, что кандидат даже близко не имеет того технического опыта, который нам необходим. Подобные кейсы бывают часто — рекрутер тратит больше времени на обработку таких кандидатов.
Нехватка кадров
Сейчас мобильщики очень востребованы: компании перекупают их друг у друга, а действующих сотрудников стараются удержать всеми силами. Спрос сильно превышает количество разработчиков на рынке.
Что происходит на рынке труда
На рынке жесточайший дефицит мобильных разработчиков. У нас давно идет диджитализация всего, что только можно, которая сильно ускорилась из-за пандемии и всеобщей удаленки. Люди уже не воспринимают телефон как средство связи — теперь это универсальный инструмент для повседневных задач. Все привыкли, что практически любую проблему можно решить, просто пару раз ткнув пальцем в экран.
Многие компании создают и поддерживают мобильные приложения, а для этого им требуется все больше и больше разработчиков. Этот спрос не могут удовлетворить выпускники многочисленных онлайн-курсов. После курсов люди выходят без опыта коммерческой разработки, с грейдом «джуниор». А бизнесу нужны те, кто может работать самостоятельно и решать задачи в самые сжатые сроки. Поэтому мы сталкиваемся сразу с двумя проблемами: бизнес не может нанять специалистов уровня «сениор», а джуны с трудом ищут первую работу.
Мы пишем эту статью в феврале 2022 года. Цены на разработчиков постоянно растут — к моменту, когда вы это будете читать, все может измениться. Поэтому стоит перепроверять актуальность информации.
Есть мнение, что зарплатные вилки Android-разработчиков чуть ниже, чем у тех, кто создает приложения на iOS. Но у нас в Skyeng одинаковые вилки по двум направлениям. Если же говорить о золотой середине, от которой сейчас отталкивается рынок, то цифры будут приблизительно такими:
- джуны могут получать до 100 000 ₽;
- мидлы — до 250 000 ₽;
- сениоры — от 250 000 ₽;
- тимлиды — от 300 000 ₽.
При этом часто тимлид оценивается как следующий грейд после сениора, что не совсем правильно. На самом деле позиция тимлида — это просто одно из направлений, куда уходят опытные разработчики в поисках развития. Тимлид может устать от менеджерской работы и вернуться в свою разработку, это не будет считаться даунгрейдом.
Если вы хотите нанять самостоятельного мобильного разработчика, которому можно доверить проект, ориентируйтесь на зарплату в районе 300 000 ₽.
Как и где искать мобильных разработчиков
Активный поиск в профессиональных соцсетях и сообществах
Пассивный поиск плохо работает: я размещаю вакансии на Хедхантере, Хабре и в профессиональных телеграм-каналах, но пользы от этого мало.
Даже если сильный кандидат и выложит резюме на Хедхантере, оно будет открыто несколько часов. Однажды на мою вакансию откликнулся мобильный разработчик с хорошим опытом. Я его спросила, как давно он в поиске, а кандидат ответил: «Четыре часа — и уже забил календарь собеседованиями на две недели вперед».
Мой основной инструмент — это LinkedIn, где я сама ищу кандидатов. Чтобы доставать контакты разработчиков, использую расширения:
- SalesQL — вытаскивает адреса электронной почты из профилей пользователей на LinkedIn.
- Amazing Hiring — позволяет находить профили кандидатов в других социальных сетях. Например, можно через LinkedIn отыскать профиль разработчика на GitHub. А дальше действовать по обстоятельствам: если в профиле указана почта, то написать письмо. Если почты нет, попробовать вбить никнейм пользователя в телеграме, чтобы найти его там.
- OKTO-HR — вытаскивает самую важную информацию из профиля пользователя на GitHub и составляет саммари.
- EmailOnGitHub — показывает имейл пользователя на GitHub и информацию о том, готов ли он рассматривать предложения о работе.
Нет серебряной пули, которая гарантированно закроет вакансию. Нужно запастись терпением и настроиться на кропотливый поиск.
Реферальная программа
По реферальной программе нам удалось нанять 15% разработчиков. Мы платим до 100 000 ₽ за рекомендацию, которая привела к трудоустройству.
Реферальная программа работает не только для сотрудников компании: порекомендовать кого-то и получить бонус может любой желающий.
Кадровые агентства
Мы прибегаем к помощи агентств, если понимаем, что можем не справиться с планом найма своими силами. Сейчас такой потребности нет, но в прошлом году Skyeng сотрудничал с кадровыми агентствами по вакансиям мобильных разработчиков.
Процесс найма мобильных разработчиков
Письмо кандидату
В основном я пишу кандидату на личную почту. Никогда не отправляю письма на рабочий электронный адрес — считаю, что это непрофессионально и некрасиво. Если же я не в силах найти почтовый адрес, то пишу сразу в телеграм или LinkedIn.
Главное — придерживаться персонализированного подхода, который смог бы зацепить интересного кандидата. Можно опираться на то, что человек пишет о себе. Допустим, он указал, что не любит корпорации и бюрократию. Тогда в письме я напишу, что ему точно понравится в Skyeng.
Важно дать максимум информации: кандидат должен знать, куда его зовут, сколько человек в команде, с чем предстоит работать, какие задачи перед ним будут стоять. Чем больше у рекрутера подобной информации, тем выше шанс заинтересовать собеседника.
По статистике, каждые 100 отправленных писем впоследствии превращаются в 2 оффера.
Интервью с рекрутером
Я созваниваюсь с кандидатом в телеграме или зуме. Главное, что оцениваю, это софты: смотрю, как человек общается, что говорит о своих коллегах и руководителях, на что направлена его мотивация. Брать людей исключительно «по хардам» мы не готовы, даже на дефицитном рынке.
Сначала я расспрашиваю разработчика о последнем проекте и зонах ответственности, при этом оцениваю, как он рассказывает о своих задачах. Бывает, что собеседник начинает ссылаться на коллективные результаты: «Мы сделали… мы разрабатывали». В таком случае я стараюсь получить конкретику: «А что конкретно делал ты?» Если человек не может сформулировать ответ, скорее всего, он нам не подойдет.
Важно исследовать мотивацию кандидата: почему он подумывает сменить работу, что ему интересно, какие задачи хочет решать. Кандидат может сказать: «Так-то меня все устраивает в моей работе, просто смотрю, кто предложит больше». Это индикатор того, что его ключевой мотиватор — деньги. Такого человека рискованно нанимать: вскоре его перекупят снова, а нам придется искать замену.
Техническое интервью
Техническое интервью проходит в один этап и занимает не более полутора часов. У нас нет утомительных задач по алгоритмам или длительного лайвкодинга. На собеседовании мы подробно расспрашиваем про последний опыт кандидата, задаем технические вопросы на разные темы, например по паттернам, архитектуре и многопоточности.
Техническое интервью записывается: это необходимо, чтобы сохранить время всем участникам подбора. Мы часто нанимаем разработчиков сразу в несколько команд. Если каждый кандидат будет отдельно общаться со всеми представителями каждой команды, где есть вакансия, на это может уйти вечность. Поэтому мы делаем запись и показываем ее лидам команд, куда открыт наем. Лиды смотрят видео и решают, готовы ли они продолжать общение с кандидатом.
Техническое интервью проходят не все. Если специалист в данный момент не дотягивает до того уровня, который нужен, чтобы попасть в конкретную команду, то мы пишем отказ. Но при этом остаемся с кандидатами на связи — как только появляется подходящая позиция, возвращаемся и предлагаем продолжить общение.
Каждое пятое техническое интервью заканчивается выставленным оффером.
Раньше мы давали тестовое задание, но из-за условий рынка и дефицита разработчиков пришлось отказаться от этого этапа. Хотя если у кандидата есть свежий пример кода, который он может показать, то наши специалисты с радостью его посмотрят.
Знакомство с командами
После технического интервью идет знакомство с командами, которые заинтересовались кандидатом. На встречу чаще всего приходят лид команды и руководитель всей мобильной разработки.
На этом этапе обсуждаются внутренние процессы и предстоящие задачи. Ребята отвечают на вопросы друг друга и уже понимают, насколько взаимны их интересы.
Оффер
Если кандидат хорошо прошел техническое интервью и нашел общий язык с командой, он получает предложение о работе. У нас есть своя система грейдов с фиксированными зарплатными вилками — с ее помощью мы согласовываем оффер. Вот как это выглядит:
- Смотрим, на какой грейд мы оценили кандидата.
- Проверяем, какая зарплатная вилка соответствует грейду.
- Оцениваем зарплатные ожидания кандидата — находятся ли они внутри нашей вилки.
- Согласовываем финальное зарплатное предложение с нанимающим менеджером.
- Составляем оффер и отправляем его кандидату.
Порой мы сталкиваемся с контрофферами — это больная тема, которая касается не только мобильной разработки, но и любых технических направлений. Такой сейчас рынок: хороший специалист высоко ценится, дешевле удержать сотрудника встречным предложением, чем искать нового.
Что делать, если не получается закрыть вакансию
Нужно запастись терпением и провести аналитику — важно понять, на каком этапе «отваливаются» кандидаты, где слабое место. Без выстроенной системы аналитики вы так ничего и не узнаете, а все решения будут интуитивными.
Причина может быть в чем угодно, например:
- Зарплата не в рынке.
- Несоответствие задач уровню специалиста — когда работодатель хочет нанять мидла, но такого, чтобы работал за двух сениоров.
- Неинтересные задачи — разработчик не видит в них возможностей для роста.
- Проблемные коммуникации на этапе найма. Проанализируйте, в какой атмосфере проходит общение с кандидатом, корректно ли ведет себя нанимающий менеджер.
- Слишком много этапов отбора — кандидат устает по пути к офферу.
Всегда стоит брать подробную обратную связь у кандидатов, которые сами отказались от работы. Это позволяет выявить проблемные зоны подбора.
Что следует знать о найме мобильных разработчиков
- Все больше компаний нуждаются в мобильных разработчиках, чтобы создавать и поддерживать собственные приложения.
- Сбор откликов по вакансиям плохо работает в случае с мобильными разработчиками. Используйте активный поиск в профессиональных соцсетях и сообществах. Мой основной источник поиска — LinkedIn.
- Высокую эффективность показывает реферальная программа: примерно 15% сотрудников мы наняли с ее помощью.
- Каждый кандидат на вес золота. Поэтому используйте персонализированный подход: затачивайте письмо под конкретного человека.
- Не советую нанимать разработчиков, которых мотивируют лишь деньги. Рано или поздно они найдут более выгодное предложение и уйдут, а вам придется искать замену.
- Тестовое задание — роскошь, от которой лучше отказаться.
- Если вакансия не закрывается, запаситесь терпением и соберите информацию. Проанализируйте воронку и найдите больное место — этап, где падает конверсия.
- Узнавайте у кандидатов, которые отказались от работы, почему они это сделали.