Pull to refresh

В последний раз о собеседованиях

Reading time7 min
Views17K

Эта статья будет полезна прежде всего работодателям, HR, но так же и тимлидерам и всем, кто принимает участие прямое или косвенно в вопросах, касающихся найма сотрудников в IT сфере.

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

У меня есть профильное компьютерное образование. Я имею более 8 лет коммерческого опыта в программировании. И увлекаюсь IT с 16 лет. Т.е фактически 22 года в теме IT. У меня есть много знакомых, у которых есть большой практический опыт работы в IT, и работают они по направлениям:

  1. программирование (разные языки программирования)

  2. системные администраторы

  3. devOPS'ы

  4. тестировщики

И все они, как и я, испытывают очень серьезные затруднения при поиске новой работы. Истории у всех разные, но суть одна: они все не могут пройти собеседование. Не находите ли вы это странным? Я нахожу. Как человек, который имеет 3-5-10 или более лет практического опыта, не может пройти собеседование? Он что, некомпетентный? Получается так! Есть люди, которые проходят по 10-20 и более собеседований с одним и тем же отрицательным результатом. Давайте попробуем разобраться, почему так происходит и действительно ли все эти люди некомпетентны.

Начну с личного примера:

Есть программист, за плечами которого более 20 реализованных проектов различной сложности и нагрузки. От монолитов до микросервисов. Реализованных на одном языке программирования, но разными стеками и фреймворками. Тематика проектов в основном продуктовые. Программист ищет работу. И проходит собеседования. И...и не может их пройти! Что получается, что он некомпетентный? Получается у него нет знаний, для того, чтобы работать в IT сфере? Может ему нужно актуализировать свои знания т.к за время работы он упустил что-то важное и поэтому его отфильтровывают на собеседованиях?

Я согласен, что актуализация знаний никогда лишней не бывает. Но, в знаниях ли проблема? Давайте анализировать! Есть хорошая тактика. Она не секретная и много кто о ней знает: проходя каждое собеседование записываем вопросы, на которые мы не ответили. Далее ищем ответы на эти вопросы. В других собеседованиях, возможно будут попадаться такие же вопросы или смежные, и мы сможем на них ответить.

Хорошая тактика. Но она не работает. Уже не работает. Почему? Потому что IT стало очень обширным. Это вам не PHP (как пример, я не пишу на этом ЯП) 10-15 лет назад, который можно было изучить за неделю, а быстро и за пару вечеров. И потом на собеседованиях позаписывать вопросы, на которые не ответил и проштудировать их. Сейчас всё много сложней. Сейчас одного языка программирования мало. Сейчас есть несколько популярных фреймворков, которые нужно знать. Каждый со своими тонкостями. И эти тонкости тоже надо знать. Плюс базы данных, MQ, оркестраторы, и множество сопутствующих сервисов и библиотек. Синхронное, асинхронное программирование. Системы деплоя и многое другое. Языки уже не узконаправленные, типа PHP, а общего назначения. Очень сложные, с большим количеством неоднозначностей и различием "под капотом". Так же различия есть в разных версиях этого всего.

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

И тут у меня начала появляться мысль: может не в знаниях дело? В чём-то другом? Общаюсь по этому поводу со своими знакомыми и они все как один говорят: Да! На собеседованиях спрашивают всякую фигню! "Всякая фигня" - это завуалированное название "вопросы оторванные от реальности". Да, представляете. На собеседованиях могут спрашивать вопросы, которые не имеют никакого практического применения. И ответы на эти вопросы записывать в минус соискателю. Одна моя знакомая, которая работает более 5 лет тестировщиком рассказывает: у нас в группе VK "тестировщики" есть топик, в котором мы обсуждаем собеседования. И все они пришли к общему мнению, что на собеседованиях спрашивают "всякую фигню" и советуют друг другу просто позаписывать вопросы, выучить их и озвучить работодателю и это работает.

Представляете? Чтобы устроиться на работу, нужно ВЫУЧИТЬ 40-50 или более вопросов, которые не имеют практического применения. Иначе у тебя не будет оферов. Замечательно, не правда ли? Но дело в том, что это может работать у тестировщиков. А вот в бэкенд программировании так не получится. Разные вопросы. Всегда. Но у всех этих вопросов общее то, что они НЕ ПРИМЕНИМЫ НА ПРАКТИКЕ и не используются в работе. ДУМАЙТЕСЬ В ЭТО ВСЁ. На что это похоже? Правильно, на маразм. В крайних его проявлениях.

Почему я\ты должен знать ответы на вопросы, которые оторваны от реальности? Чтобы просто устроиться на работу и выполнять свои функциональные обязанности. Чтобы получать зарплату, расти профессионально и приносить пользу предприятию, в котором ты работаешь. Я считаю, что не должен. Человек, который проработал в профессии более 3-х лет, уже знает всё то, что нужно, чтобы выполнять свои функциональные обязанности. Более 5 лет - очень квалифицированный специалист.

Примеры вопросов:

  1. скажите пожалуйста, чему будет равно (true + true * 5) - 2? Очень интересный вопрос! Только у него нет практического применения. В каких задачах это в реальности используется? Почему я должен знать, что boolean наследуется от int'a? Как я могу применить эти знания в работе? Я задаю эти вопросы собеседующему лицу. Ответа не получаю. Собеседующее лицо пытается перейти на следующий вопрос, начинает нервничать.

  2. есть медиасервис, который даёт пользователю закачивать файлы больше 30гб на сервер. Как бы вы реализовали архитектуру? Какой бы вы использовали стек? Как бы вы реализовали API? Во-первых, такие вопросы не решаются в реалтайме, во-вторых - это похоже на то, что собеседующее лицо само не знает как решить это всё и спрашивает совета у соискателя, но формально это вопрос собеседования.

  3. Какие вы знаете типы данных\что такое ООП? Я не на джуниора устраиваюсь на работу. К чему такие вопросы?

  4. Что такое http/API? И подобные вопросы. Они могут вгонять в ступор. С точки зрения практики, http - это набор аргументов во вьюхе и возврат значений. Но понимаешь, что такое ответ не устроит собеседующее лицо. Поэтому начинаешь думать, как ответить и ничего лучшего не придумывается, как "это протокол, который утверждён и описан в RFC". Но такой ответ собеседующему лицу не нравится. Нужно заученный ответ из википедии.

Итак, рассмотрим ситуацию, когда человека принимают на работу в других профессиях. На примере механика СТО (хотя примерно так же всё происходит и в других профессиях):

— Расскажите о своём опыте работы!

— Я могу чинить «ходовку», так же я могу пересобирать «движки».

— А с какими машинами вы имели дело?

— С УАЗ, Тойота, Сузуки.

— Отлично! А как в УАЗике делается Х?

— Делается это <объяснение от соискателя>

Далее следует еще несколько уточняющих вопросов. И в конце собеседования:

— Отлично! Вижу у вас есть опыт. Вы нам подходите! Когда сможете выйти на работу?

— Со следующей недели.

— Отлично. Зайдите в отдел кадров, вам скажут, какой необходим пакет документов.

Итак, что произошло? У человека спросили опыт работы. Он рассказал о своём опыте. По ходу собеседования работодатель/собеседующее лицо задало уточняющие вопросы. Человек на них ответил. В итоге человека приняли на работу. Но, в IT всё происходит по другому сценарию:

  1. HR рассказывает о своей фирме

  2. расскажите о себе (о своем опыте работы)

  3. техническое собеседование

С пункта №2 начинается интересное (позже объясню почему). 20-30 минут рассказываешь о своём опыте работы. Далее обязательно следуют уточняющие вопросы. А потом начинается пункт 3 (техническое собеседование), на котором задают вопросы, на которые невозможно ответить т.к они не применяются в работе. Т.е, пункт 2 - не имеет никакого веса. Собеседующему лицу откровенно плевать на то, сколько у тебя проектов за плечами. Единственный критерий приёма на работу - это то, на сколько вопросов ты ответил из общего количества. Ответил на 3 из 20? Гуляй, Вася! Будем искать того, кто ответит побольше. Вам не смешно, нет? Мне смешно. Было. Уже не смешно.

А теперь вишенка на торте! Но если так получилось, что вы ответили на 20 вопросов из 20, то результат собеседования будет отрицательным. КАК ТАК? А вот так! Хотел бы сказать "логики тут не ищите", но это не правда. Логика есть. Можно дать человеку отказ, даже если человек ответил на все вопросы. Хорошо, а почему так?

Вариант №1: Страх.

Собеседующее лицо обычно работает в фирме на должности сеньор или
тимлид:

  1. брать человека с большим опытом работы - опасно. Он может подвинуть тимлида или сеньор может оказаться не сеньором. Так думает собеседующее лицо.

  2. соискатель может полезть в код или архитектуру и собеседующее лицо завтра само станет соискателем.

Вариант №2: Собеседующее лицо на самом деле не собеседует соискателя.

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

  2. собеседующее лицо само себе хочет доказать, что соискатель с его-то опытом работы точно знает меньше. Или вообще ничего не знает (кто бы сомневался). Конечно, это один из видов психического расстройства. Но встречается оно достаточно часто. Даже чаще, чем может показаться. В разной степени тяжести этого расстройства. Как пример тяжелого расстройства психики, когда тут же, на Хабре, человек писал статью о том, как он выбирал человека, с которым он мог бы работать. Когда он из 50 человек выбрал 3-х, потом из трех выбрал одного, но и его не принял на работу. Долго мучался по этому поводу, правильно ли он поступил. И в конце-концов понял, что правильно, что отказал ему. С этим человеком ему было бы некомфортно работать. Он как будто диван выбирал. Тут одна сторона дивана на 0,5мм ниже другой, тут стежок не ровный. О Боже, как я буду спать на этом диване??? Ночью буду с дивана падать, а на стежке глаз постоянно будет останавливаться и в конечном итоге доведет до невроза. На самом деле, если этого человека отвести к психологу, то он бы нашел серьезное отклонение. При этом он может быть грамотным специалистом, но "кепка у него поплыла".

У нас работодатели жалуются, что "нет квалифицированных кадров", "не кому работать". Теперь вы знаете, почему это не соответствует действительности. Квалифицированные люди есть. И с большим опытом работы. Но они не в вашей фирме.

Не прошли собеседование.

Если вы не можете закрыть позицию и у вас лежит стопка собеседований с отрицательным результатом. Не поленитесь, откройте резюме\CV людей, отфильтруйте опыт работы 3-4+ лет и повторно проведите собеседование. Вы удивитесь, но большинство из этих людей легко могут закрыть эту позицию. Да, эти люди, скорей всего, не смогут ответить на большинство вопросов, которые продиктует сеньор\тимлид, но в реальности они умеют работать.

Рекомендация работодателям: обязательно присутствуйте на собеседованиях. И внимательно наблюдайте за поведением собеседующего лица. Крайне опасно давать право принимать решение о найме в руки программисту. Он может быть хорошим специалистом, но иметь своё, особое, виденье ситуации и препятствовать появлению каких-то людей в своей команде. По своим, особым критериям. И эти критерии очень далеки от объективной реальности и ваших потребностей.

Tags:
Hubs:
Total votes 45: ↑32 and ↓13+19
Comments143

Articles