«Зарплаты растут со страшной силой»: опыт Skyeng в найме мобильных разработчиков

Разобрались, что происходит на рынке труда, где искать и как нанимать мобильных разработчиков

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

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

Об этом мы и поговорили с 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, где я сама ищу кандидатов. Чтобы доставать контакты разработчиков, использую расширения:

  1. SalesQL — вытаскивает адреса электронной почты из профилей пользователей на LinkedIn.
  2. Amazing Hiring — позволяет находить профили кандидатов в других социальных сетях. Например, можно через LinkedIn отыскать профиль разработчика на GitHub. А дальше действовать по обстоятельствам: если в профиле указана почта, то написать письмо. Если почты нет, попробовать вбить никнейм пользователя в телеграме, чтобы найти его там.
  3. OKTO-HR — вытаскивает самую важную информацию из профиля пользователя на GitHub и составляет саммари.
  4. EmailOnGitHub — показывает имейл пользователя на GitHub и информацию о том, готов ли он рассматривать предложения о работе.

Нет серебряной пули, которая гарантированно закроет вакансию. Нужно запастись терпением и настроиться на кропотливый поиск.

 

Реферальная программа

По реферальной программе нам удалось нанять 15% разработчиков. Мы платим до 100 000 ₽ за рекомендацию, которая привела к трудоустройству. 

Реферальная программа работает не только для сотрудников компании: порекомендовать кого-то и получить бонус может любой желающий.

 

Кадровые агентства

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

 

Процесс найма мобильных разработчиков

 

Письмо кандидату

В основном я пишу кандидату на личную почту. Никогда не отправляю письма на рабочий электронный адрес — считаю, что это непрофессионально и некрасиво. Если же я не в силах найти почтовый адрес, то пишу сразу в телеграм или LinkedIn. 

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

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

По статистике, каждые 100 отправленных писем впоследствии превращаются в 2 оффера.

 

Интервью с рекрутером

Я созваниваюсь с кандидатом в телеграме или зуме. Главное, что оцениваю, это софты: смотрю, как человек общается, что говорит о своих коллегах и руководителях, на что направлена его мотивация. Брать людей исключительно «по хардам» мы не готовы, даже на дефицитном рынке. 

Сначала я расспрашиваю разработчика о последнем проекте и зонах ответственности, при этом оцениваю, как он рассказывает о своих задачах. Бывает, что собеседник начинает ссылаться на коллективные результаты: «Мы сделали… мы разрабатывали». В таком случае я стараюсь получить конкретику: «А что конкретно делал ты?» Если человек не может сформулировать ответ, скорее всего, он нам не подойдет.

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

 

Техническое интервью

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

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

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

Каждое пятое техническое интервью заканчивается выставленным оффером.

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

 

Знакомство с командами

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

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

 

Оффер

Если кандидат хорошо прошел техническое интервью и нашел общий язык с командой, он получает предложение о работе. У нас есть своя система грейдов с фиксированными зарплатными вилками — с ее помощью мы согласовываем оффер. Вот как это выглядит:

  1. Смотрим, на какой грейд мы оценили кандидата.
  2. Проверяем, какая зарплатная вилка соответствует грейду.
  3. Оцениваем зарплатные ожидания кандидата — находятся ли они внутри нашей вилки.
  4. Согласовываем финальное зарплатное предложение с нанимающим менеджером.
  5. Составляем оффер и отправляем его кандидату.

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

 

Что делать, если не получается закрыть вакансию

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

Причина может быть в чем угодно, например:

  1. Зарплата не в рынке.
  2. Несоответствие задач уровню специалиста — когда работодатель хочет нанять мидла, но такого, чтобы работал за двух сениоров.
  3. Неинтересные задачи — разработчик не видит в них возможностей для роста.
  4. Проблемные коммуникации на этапе найма. Проанализируйте, в какой атмосфере проходит общение с кандидатом, корректно ли ведет себя нанимающий менеджер. 
  5. Слишком много этапов отбора — кандидат устает по пути к офферу.

Всегда стоит брать подробную обратную связь у кандидатов, которые сами отказались от работы. Это позволяет выявить проблемные зоны подбора.

 

Что следует знать о найме мобильных разработчиков

  1. Все больше компаний нуждаются в мобильных разработчиках, чтобы создавать и поддерживать собственные приложения.
  2. Сбор откликов по вакансиям плохо работает в случае с мобильными разработчиками. Используйте активный поиск в профессиональных соцсетях и сообществах. Мой основной источник поиска — LinkedIn.
  3. Высокую эффективность показывает реферальная программа: примерно 15% сотрудников мы наняли с ее помощью.
  4. Каждый кандидат на вес золота. Поэтому используйте персонализированный подход: затачивайте письмо под конкретного человека.
  5. Не советую нанимать разработчиков, которых мотивируют лишь деньги. Рано или поздно они найдут более выгодное предложение и уйдут, а вам придется искать замену.
  6. Тестовое задание — роскошь, от которой лучше отказаться.
  7. Если вакансия не закрывается, запаситесь терпением и соберите информацию. Проанализируйте воронку и найдите больное место — этап, где падает конверсия. 
  8. Узнавайте у кандидатов, которые отказались от работы, почему они это сделали.