Мой знакомый подбирает программистов со знанием языка Go. В списке его требований — необходимое понимание технологий, английский язык и умение работать в команде, в обмен на это кандидату предлагают конкурентоспособную зарплату. Эта вакансия похожа на тысячи других: компании ищут IT-специалистов, и большинство — примерно по таким же критериям. Ищут и не находят. Или кандидат оказывается не того «качества», на какое они рассчитывали.
Квалификация программиста определяется не стеком технологий или языком программирования, а тем, что называется «базой»: два человека с одинаковым знанием языка C++ на сложных задачах будут показывать разные результаты, если «база» у них разная. Я имею в виду знание алгоритмизации и базовых структур данных, информационного моделирования, классических парадигм программирования, архитектурных подходов, принципов работы «железа».
Другой ключевой момент, на который работодатели еще реже обращают внимание, — это общий подход к делу, который можно обозначить терминами «инженерная культура» или «культура производства». На российском рынке труда для молодых специалистов все еще актуально оставшееся от СССР «забудьте все, чему вас учили в вузе, здесь будете учиться снова». С советских времен эта проблема стала еще более острой, потому что студентов «наполняют» знаниями, но не учат создавать качественный продукт, не работают над формированием инженерной культуры, а в бизнесе критически важно именно это. Выпускников вузов, теоретически способных работать программистами, немало, но практика показывает, что это не те люди, которым можно доверить серьезную работу.
Где взять хороших программистов, если не получается хантить?
Примерно 95% кандидатов, которые указывают в резюме «программист», профнепригодны по обозначенным выше причинам: у них нет ни базы, ни культуры. Они могли бы решать типовые задачи, но появление сложных или нестандартных может привести к непредсказуемому росту времени разработки, снижению качества, а в результате — к провалу проекта.
У нас работает более 50 квалифицированных программистов, столько же специалистов обеспечивают процесс — это тестировщики, продакт-менеджеры, руководители. За год команда программистов увеличивается на 7-8 человек, но с рынка привлекают не более одного из них. Большинство компаний раз за разом перелопачивают рынок и с трудом находят хоть каких-то программистов. Мой друг и партнер Александр Галочкин (основатель компании, которая разрабатывает IT-решения для отелей) сравнивает ситуацию с переходом человечества от охоты и собирательства к земледелию: если охотник голодал в среднем каждый месяц, земледелец – только раз в несколько лет. Так и мы отказываемся от хедхантеров в пользу «выращивания» и обучения молодых специалистов.
Кто он — идеальный кандидат?
При приеме на работу стоит обращать внимание на человеческие качества кандидата, потому что от них успех проекта зависит даже больше, чем от квалификации. На первом месте — порядочность кандидата, наличие у него нравственных ориентиров, за ними — целеустремленность, умение работать в команде, гибкость и быстрота мышления, ответственность и умение «дожимать» задачи, инициативность, коммуникабельность. И только после этого — квалификация. Такая расстановка приоритетов — результат глубокого осмысления того, как работает команда и как делаются успешные проекты. Приведу пример: умение инициировать общение, продуктивно обмениваться информацией напрямую влияет на результат, потому что если производительность одного программиста N, то двух — не 2N, а в лучшем случае 1.7N. Разница тратится на коммуникацию, и чем больше команда, тем сильнее падает производительность для каждого отдельного программиста.
В свою компанию я иногда беру кандидатов с недостаточной квалификацией, если с порядочностью и мотивацией все в порядке, потому что с таким человеком можно работать, в его развитие можно инвестировать, не надо кровью подписывать бумаги и есть высокая вероятность того, что в итоге он покажет хороший результат.
В отчете National Association of Colleges and Employers США за 2008 год были перечислены 10 характеристик кандидатов, которые интересовали американского работодателя в первую очередь. На 1-м месте — коммуникативные навыки, на 2-м — бизнес-этика (Strong work ethic), дальше — умение работать в команде, инициативность и навыки межличностного общения. Характеристики, связанные с квалификацией, начинаются лишь с шестой позиции — туда поместили умение решать задачи. Технические навыки оказались на 9-м месте. Тем не менее в последние годы американские работодатели начинают больше обращать внимание на квалификацию: в отчете NACE за 2017 год умение решать задачи поднялось на второе место, а бизнес-этика спустилась на четвертую позицию (в 2016 этика была даже на шестой строчке). Будем надеяться, что это отклонение временное.
Вы хотите идеальных сотрудников. Почему они должны хотеть вас?
Главный принцип: подобное тянется к подобному. Если вы «никакой» – ожидайте, что и люди к вам будут приходить соответствующие. «Никакие» тоже нужны и где-то работают. Будем надеяться, что не у вас. Чтобы к вам пришли «ваши» люди и если вы хотите с ними играть вдолгую, важно, продемонстрировать им: ваша компания — не просто лидер чего-то там, у нее есть лицо, identity. Интересные люди идут «на что-то» — это может быть коллектив, идея, возможность работать с выдающимся специалистом или над каким-то особенным проектом. Хороший офис в центре, фрукты на столе, игровые автоматы и тренажеры тоже влияют, но меньше — сейчас это есть почти у всех.
Что дальше?
Пока ключевое конкурентное преимущество русских софтверных компаний, которые пробиваются на глобальный рынок, — высокая квалификация и относительно низкая стоимость программистов. Ведущие компании создают технически сложные продукты, где много инжиниринга, их копию создать не так просто. Работа идет в основном на советской кадровой базе, но ничто не вечно. У нас принято ждать, что на государственном уровне произойдут изменения в системе образования, и тогда кадры придут сами. Но спасение утопающих так и останется делом рук самих утопающих: мы не можем рассчитывать на рост качества подготовки в государственных вузах, если не начнем сами в них работать . Второй путь решения проблемы — создание учебных центров внутри компаний. Оба дают результат.