Гордость и предубеждение или собеседование русскоязычных на роль Database Engineer

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

Очень много ресурсов можно найти на просторах интернетов на тему собеседования Software Engineer’ов в FAANG, куча теоретического материала, список готовых задач с интервью, как готовится к System Design вопросам и т.п., но лично для меня было огромной болью искать что-то, чтобы быть готовым к интервью на роль Database Engineer. Проблема в основном в том, что разброс вопросов по этой теме невероятно огромный. Отмечу, что это касается именно FAANG компаний, потому что на собеседовании туда Вас, как SWE / SRE, не будут просить «написать синглтон» или спрашивать в чем проблема многопоточности в питоне, всё довольно прозаично в подготовке на эти роли.

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

3d4c3fead335119bb34875678a043cbe.jpg

Введение

Мой путь интервьюера начался относительно недавно, порядка 3 лет назад, на одной из «галер». Несмотря на то, что большинство из присутствующих на Хабре знает, что уровень знаний требуемых для того, чтобы попасть на «галеру» минимальный, в компании процесс интервью был стандартизирован и необходимо было:

  • Пройти тренинги, чтобы научиться собеседовать по методологии S.T. A.R. (situation, task, action, result), как это сделано в топовых компаниях из группы FAANG.

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

  • Следующим этапом уже твой ментор будет наблюдать за тем, как ты проводишь интервью и будет он это делать до тех пор пока к тебе не останется нареканий и твои отзывы (feedback’и) не станут идеальными

Сейчас я собеседую в одной из компаний FAANG на мидл DBE роли в Восточную Европу. Могу сказать, что предыдущий опыт мне очень помог и стандартизация процесса интервью выглядит примерно также. Я думаю ни для кого не секрет, что в компаниях из этого списка Вы сначала проходите «телефонное интервью» с рекрутером (в кавычках из-за того, что сейчас это уже давно Skype / Zoom / etc), который пытается выяснить подходите ли Вы под вакансию и иногда задаёт вопросы по своему списку ожидая ответов, которые также в этом списке. Затем Вас передают в руки кому-то из технарей и Вы также в «телефонном интервью» проводите один раунд с ним. На галерах обычно на этом процесс рекрутинга заканчивается и Вас берут или не берут, а вот у нас начинается самое интересное — Interview Day, до пандемии Вас приглашали в будущий офис, где необходимо было пройти 4–5 интервью подряд (зависит от компании и роли), сейчас всё проводится онлайн и может быть разбито на несколько дней при необходимости.

Так в чём же проблема?

321f4eb566599f87c23bdb3b9d27fd45.jpg

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

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

Так вот русскоязычные кандидаты на DBE роли (думаю, что с SWE картина немного поменялась, потому что там, как я уже говорил, подготовка стандартизирована не менее, чем процесс собеседования) совершенно не готовы отвечать на вопросы в контексте Situation / Task / Action / Results. Для себя я выделил несколько причин, почему так происходит:

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

    ed9be4cd3ddf6cb3a319b3e7ea8be923.jpg
  2. Гордость (самоуверенность) — удивительно насколько часто я слышал в отзыве о русскоязычных кандидатах «он слишком самоуверен» (overconfident), обычно это звучит тогда, когда Вы идёте не туда со своими размышлениями, интервьюер даёт Вам подсказку, но Вы её игнорируете (в лучшем случае), а в худшем еще и настаиваете на неправильном ответе. Я лично не знаю таких случаев, когда бы кандидата хотели запутать подсказкой и сбить с правильного пути, это скорее ошибка интервьюера и они очень редки, поэтому всегда надо слушать и принимать подсказки, а не продолжать себя топить. Неумение принять свою ошибку также может быть причиной отказа.

    6d0342e41347d8120e154a5b5ff9b99f.jpg
  3. Предубеждение — большая часть кандидатов пытается как можно быстрее отделаться от поведенческих вопросов и показать свои хард скиллы, потому что «вы же разработчика нанимаете, значит важно только писать код». Отнюдь, общение в команде и между командами, умение доносить экспертное мнение до менеджеров и аргументированное отстаивание своей позиции это важная часть работы.

    a8227ef3a61a79f078ed1b366dcc035c.jpg

Можно ли это исправить?

Я могу сказать, что на своём примере я понял — да, это можно исправить, и да, это не всегда будет легко.

  • Выучить английский — это сложнее, чем кажется на первый взгляд, в Москве / Питере проблема стоит не так остро и при желании можно попасть на проект, где заказчики будут англоязычные, в любом другом городе это может быть очень трудно. Если возможности постоянно общаться с заказчиком на английском нет, то скорей всего придется пользоваться услугами репетиторов, сайтов и приложениям по обучению языку и искать себе знакомых из других стран для языкового обмена (да, есть те кто хочет учить русский в обмен на английский)

  • Story telling — учитесь излагать свои мысли грамотно, заготавливайте истории о своих успехах и рассказывайте, рассказывайте, рассказывайте всем и каждому на работе, дома, друзьям и прохожим :). Важно раскладывать историю по методологии S.T. A.R.:

    • Как Вы идентифицировали проблему, в чем она состояла?

    • Какой набор потенциальных решений Вы нашли (и как это обсуждалось с командой, если такое имело место быть)

    • Как Вы решили данную проблему (с техническими подробностями)

    • Каков результат решения проблемы (лучше с метриками, мол был запрос, который выполялся 1 час, после оптимизации он стал выполняться за 1 минуту) и что вы сделали, чтобы предотвратить появление данной проблемы в будущем, а также чему Вы научились при её решении

Как я уже упоминал в начале, при собеседовании на роли типа DBE разброс вопросов по технической части невероятно огромен, поэтому советовать подтянуть что-то конкретное перед интервью я бы не стал. Я знаю команды, которые могут спросить про 3ью нормальную форму, а также команды, которые спрашивают о различии между Mutex и Latches в Oracle. В общем это будет очень зависеть от команды, которая Вас нанимает в данный момент и это очень отличается от найма Software Engineer’ов.

Заключение

В заключение могу сказать, что по моему опыту у русскоязычных кандидатов в большинстве случаев действительно сильнее хард скиллы, чем у остальных. Они быстрее решают проблему, чище пишут код (видно, что они действительно его пишут day to day) и чаще более технически подкованы, но берут всё равно не их.

Я не могу с уверенностью назвать причину, почему это стало неким паттерном в русскоязычном сообществе, что важны только хард скиллы. Лично для меня это было токсичное окружение в российских компаниях и отношениях менеджер-подчиненный. Где сказать, что «твой код г$%#о» это нормально, это значит, что человеку просто надо переписать этот код, прямолинейность вытачивала из нас жестких, но сильных спецов, при этом те осколки, которые мы теряли в процессе — это и были наши потенциальные софт скиллы, которые затерялись в глубинах сознания и которые сейчас так нужны в мире разработчиков…

© Habrahabr.ru