Лайвкодить или не лайвкодить? Вот в чем вопрос



Уже много времени горит, полыхает спор про то, нужен ли (важен ли) лайвкодинг на собеседовании.



У больших компаний часто это обязательная секция

Возьмите ФААНГ (или МААНГ?) и его российский вариант типа Яндекса, или Авито. Там лайвкодинг секция – обязательная. Где-то даже менеджеров заставляют онлайн, или на доске, или на листочке код писать. У них есть для этого свой ряд объяснений:

⁃ отсеивают совсем не умеющих написать простой цикл или условие, переброситься парой букв в строке;

⁃ стандартизируют найм при огромном входном потоке и условии, что порой набор идет не в конкретную команду, а в компанию в целом;

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



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



Яростно критикуют такой подход обычно, не учитывая масштабы найма и орг.структуру, либо обидевшись, что не прошли подобный собес. Либо просто сидючи в небольших компаниях и нанимая по 1-2-5- людей в год. А какой-то серьезной критики от тех, кто выстроил огромный найм на потоке, я не слышал. Если вы слышали – напишите, пожалуйста, в комментарии, интересно будет ознакомиться.



Есть нюанс

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

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



Что у маленьких

Это мы рассмотрели крупные компании. А в мелких что? А в них тоже это есть?

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



Я считаю, в более точечном и конкретном найме лучше подойдут секции проблем солвинга, систем дизайна и кодревью.



Что я думаю?

Думаю, что нет смысла спорить, нужно это или не нужно. Просто примите это как данность. Много где это есть, но далеко не везде. Не хотите писать код в онлайн редакторе, или на листочке? Считаете это унизительным? Ну и не ходите туда, где это делают. А когда вас зовут на собес, заранее уточните, будет ли лайвкодинг. Лично я заранее спрашиваю об этом. Потому что знаю, что если мне прям очень засвербит туда пройти, то мне надо сидеть и готовиться (я уже наполовину менеджер, что я говорю, какой лайвкодинг, куда я готовиться собрался?:)), а без подготовки я мало что прям хорошего покажу. Ничего плохого и стыдного в этом не вижу. Как и не вижу смысла тратить и свое, и чужое время, приходя на собес, где меня ждут подобные сюрпризы.



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



Итог

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