Как стать автором
Обновить

Комментарии 252

Поставил бы много плюсов, если бы мог. Был эпизод, когда я внутри себя решил закончить собеседование, получив вопрос в духе "что выполнит этот код" вместе с плохо читаемым кусочком, написанным на бумажке. Спросил, для чего мне уметь читать такой код, неужели у вас такое есть в кодовой базе. Интервьюер обиделся, даже перезвонить не пообещал.

даже перезвонить не пообещал

Один из тех случаев когда "не перезвонил" это очень хорошо.

Кмк читать код приходится все же намного чаще, чем писать, поэтому ничего плохо не вижу в

вопросе в духе "что выполнит этот код"

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

Хорошая идея. Кандидат рисует на салфетке сортировку пузырьком, "мы вам перезвоним", салфетка передается следующему кандидату с вопросом "что здесь не так" или "как улучшить этот код".

Смайлики по вкусу

А потом этот код передается в прод. Двойной Профит!

Это какое-то странное заблуждение, с которым мне приходится постоянно сталкиваться. Неужели вы правда думаете, что код, написанный в результате выполнения тестового задания кому то понадобился в проде? Вы не слишком хорошего о себе мнения? :)

P.S. извините за формулировку сообщения, на личности не переходил, конкретно к Вам претензий у меня нет, это скорее «вопрос в зал».

В данной шутке где-то была доля шутки, поищите

Если компания сама оказывает услуги.
не продуктовая.

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

у дизайнеров встречается сплошь и рядом.
у тестировщиков — протестируйте код\сайт.

в свою кодовую базу конечно никто ничего добавлять не будет.
в клиентскую только в путь.

Почему о себе, о компании же)

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

Последнее, что я встретил это тест по Си на 40 вопросов, среди которых был а-ля, расставьте в порядке приоритета операторы: &, |, ==, &&, + и тд. На мой вопрос какую конкретно операцию они подразумевают под &, сказали что я должен сам знать.

Мы с Си уже лет 20 дело не имели, поэтому не могли бы Вы удовлетворить любопытство и объяснить в чем конкретно проблема?
Глянули сейчас современный мануал docs.microsoft.com/en-us/cpp/c-language/precedence-and-order-of-evaluation?view=msvc-170, ну, вроде & как и было побитовым «и» так и осталось.
И приоритет у него как и был выше, скажем ||, так и остался onlinegdb.com/m8WZql0so

А на второй строчке в этой табличке что?

НЛО прилетело и опубликовало эту надпись здесь

Ну вообще & ещё адрес умеет брать и приоритет у этой операции другой =)

Разыменование указателя

& это address-of operator (взятие адреса). Разыменовывание это *

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

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

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

Гугель же? Если я смотрю код и сомневаюсь в приоритетах, то просто смотрю в табличку. Если на нескольких языках пишешь, то лучше перебдеть.

Ну если гугль, то нет различий межлу джуном и синьером.

Гугл у всех один.

Вы зря думаете что единственное различие между джуноми синьором что последний все спеки наизусть запомнил.

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

Гугл то один, но пользуются им все с разной эффективностью

Помню, когда я был совсем зеленым джуном и пару дней копался в модуле с маппингом SQL, мне понадобилось получить текущее время и чтобы не возиться с datetime в perl-е, я поступил просто:

$sth = $dbh->prepare("SELECT now()"); ...

Ну, вы поняли — просто селектнул время из СУБД :) Мне даже гуглить не понадобилось, «спеки SQL» уже были в голове :)

Синьером я себе такой херни не позволял :) Потому что синьер знает когда стоит гуглить, а джун нет :)

P.S.
Ток не надо минусить за приведенное решение :) Все когда-то творили похожее :) Просто не все готовы признаться в этом :)

Во многих случаях скобки лучше ставить, даже если нисколечки не сомневаешься в приоритетах. Так просто читать удобнее.

Я когда-то давно, в начале своего пути собеседовался в Агаву в Долгопрудном, на интервью была алгоритмическая задачка: надо было составить единый алгоритм для двух роботов, приземлившихся на 2d планету, чтобы они нашли друг друга.

Решение было что-то вида "N шагов направо, N+1 шагов налево, инкремент N и считаем кол-во сколько раз попался парашют, понимаем когда нашли парашют коллеги, стоим ждем" + граничные условия вида "одновременно нашли парашюты" разрулить.

Когда все каверзные моменты задачки обсудили, интервьюер задал последний вопрос: "Какая будет максимально возможная скорость роботов?". Блин, что я там только не перебрал: вспоминал, что мне рассказывали в универе про сопромат, прикидывал какие могут быть особенности планеты, влияющие на скорость передвижения, всё не устраивало. Мне парировали, что материалы не важны и условны, а физические особенности планеты вне контекста и т.п. В итоге я решил, что оптимальным ответом будет: c — скорость света. Интервьюеру и этот вариант не понравился, но я настоял, что это точно максимально возможная скорость и я гарантирую, что быстрее не получится (при нашей жизни).

Правильным ответом оказался "один шаг за такт".

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

Потом они куда-то пропали...

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

Причём условие было максимально расплывчатым типа "расстояние любое, время любое, топливо бесконечное". Я вспомнил статфиз и предложил модель случайных блужданий - в пределе роботы когда-нибудь да встретятся.
И ещё предлагал роботам бегать типа на N влево в поисках парашюта и потом обратно, потом на 2N вправо и т.п., но интервьюверу этот ответ тоже чем-то не понравился.

Кстати, вариант с ускоряющимся в два раза роботом можно считать отсылкой к какому-нибудь алгоритму с односвязными списками, но реальном программировании я такого ни разу не применял. Что-то вроде "есть односвязный список, который в конце ссылается на какой-то свой элемент, найти тот элемент"

Почему? Расстояние между роботами же конечно, несмотря на бесконечность полоски в стороны. И текст программы хоть и не бесконечен, но не ограничен сверху условиями задачи :) И тогда по идее должна существовать программа (которая решает задачу) вида:
IF FLAG
GOTO END
ML
IF FLAG
GOTO END
MR
MR
IF FLAG
GOTO END
ML
ML
ML
… и так далее (пока интервьюеру не надоест) :)

lol
Программист на electron вошел в чат :)))

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

Кажется это не подходит по условию. Линия бесконечна, а исходник должен быть конечным.

Дискуссионно, кмк :) Там написано «бесконечна в стороны», но не написано, что расстояние между роботами бесконечно. Если предположить, что расстояние между роботами может быть бесконечно, то никакой алгоритм не решит задачу. Разве нет? :)

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

В то время как правильная программа на любой случай составляет всего 6 строк.

Hidden text
1 ML
2 MR
3 ML
4 IF BLACK
5 GOTO 7
6 GOTO 1
7 ML
8 GOTO  7

Забавная. Но на собеседовании давать не стоит. Слишком много людей завалится.

Вышло 8 с первого раза. Наверно можно подсократить.

Вышло 8 с первого раза

Со второго можно вспомнить, что "IF" по условию тоже занимает 1 сек., и нет надобности в строках 1-2

Да, точно. Мне почему-то показалось что время занимает только перемещение. Тогда 6.

Вы меня извините, а разве это решение? Оба робота будут идти влева всё время и встретятся никогда. Чёрная метка между роботами, и соответственно, одному из роботов нужно идти вправо.

Как я буду без подсчёта расстояния эту задачку решать?!

Робот, прошедший черную метку, делает только ml, и потому идёт быстрее в два раза.

Да это понятно. Но если представить, что есть некий набор тест кейсов по которым прогоняют решение на том сайте, то при должном усердии и размерах памяти, можно пройти эти тест кейсы решением туда-сюда.
Это как хранение epoch секунд в int-е любой разрядности: практически решает задачу, но в общем случае — нет.
Правда int как раз для оптимальности, а решение с роботами для споров с интервьюером :)

Это типичный вопрос для решения на бумаге/доске. Не будут гонять. Математика говорит нам что для бесконечной линии будет верным решение с бесконечным исходником. А это противоречит условию.

Это как хранение epoch секунд в int-е любой разрядности: практически решает задачу, но в общем случае — нет.

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

если представить, что есть некий набор тест кейсов по которым прогоняют решение на том сайте

Такое представить трудно: на том сайте решения проверяют живые чуваки-модераторы (там задачки в большинстве случаев не на кодинг, и проверялку написать не представляется возможным)

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

Как же это жизненно. Помню, как на первом в жизни собеседовании меня просили написать формулу движения. У нас есть скорость v, время t, путь s, нужно чтобы каретка прошла некий заданный путь s с указанными параметрами s, v, t. Мой ответ s = v*t из 2го класса их не устроил, сказали, что моя физика неправильная, им нужен другой ответ. Я перебрал все варианты с равноускоренным движением, равнозамедленным, расписал эту очевидную формулу через дифференциалы, тщетно. Ответа я так и не узнал, в прочем, как и то, чего они от меня хотели.

Самый необычный вопрос который мне задавали на собеседовании: дать определение слову граница.

Неплохо. Я серьёзно, без шуток. Широкое понятие которое надо систематизировать и лаконично выдать условия. Если человек будет мыслить вслух - должно неплохо раскрыть системность его мышления.

Интервьюер был гегельянцем и хотел услышать про одну и ту же определённость, которая соединяет и разделяет два нечто?

замыкание без внутренности?

Туманные вопросы

А ещё бывают и такие вопросы:


  • Какая твоя настольная книга или, что сейчас читаешь, или какая последняя книга, которую ты купил?

"Какую купил" - вряд ли будут спрашивать (книги можно и не покупать, и при этом даже необязательно пиратить). А вот "какую прочёл" - да, спрашивают часто, подтверждаю. Иногда даже не спрашивают устно, а прям в анкете соискателя указывают. Кстати, анкетное собеседование - как по мне, отличный вариант.

А у меня несколько раз было что-то из разрада: "На каких ресурсах вы ищете информацию, сидите и держите, что называется, руку на пульсе технологий?". До сих пор чёткого понимания что этим вопросом хотят у меня узнать нет.

К слову сказать, я всегда с лёгкостью называл ресурсов 10 (англоязычных и русскоязычных).

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

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

* А если работодателю нужны "персонажи", как вы выразились, то нам с ним точно не по пути. Или же я просто промахнулся дверью и пришёл устраиваться в театр, а не в IT компанию :)

Попробую ответить:

Настольной книги нет; сейчас я на собеседовании и ничего не читаю, а разговариваю с вами; последняя книга, которую я купил - "Незнайка на Луне" (для сына, читать перед сном).

Как это меня характеризует? Бьюсь об заклад, что не лучшим образом по мнению задающего. Поэтому на подобные вопросы (если есть у кандидата желание попасть в компанию) следует ложь, которую хочет услышать интервьюер или которую готов принять за правду.

"Незнайка на Луне" (для сына, читать перед сном)
Что может быть лучше этой книги?!

Как это меня характеризует? Бьюсь об заклад, что не лучшим образом по мнению задающего.

Не надо обижать задающего вопрос. Почему он так должен думать? А если и думает, то это очень не далёкий человек и к работе с людьми его нельзя допускать.
А книжки про незнайку — это Супер. Они развивали в нас тягу к знаниям, хотелось вместе с ним лететь на Луну, да много чего. А Человек читающий и перечитывающий эти замечательные книги — это кладезь для компании.
А сыну я ещё бы купил и прочитал Изумрудный Город!
Удачи вам в воспитании Сына.

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

Я отношусь к категории людей, которые не судят по книгам о профессиональных навыках. Т.к. считаю, что книга (полагаю мы все подразумеваем художественные произведения) - форма проведения досуга. А досуг у каждого свой. Для примера я не читаю книг, а занимаюсь физической активностью. Это не хорошо или плохо, равно как не хорошо и не плохо то, как вы проводите досуг и какие книги читаете.

Любопытна ваша оценка меня как специалиста, если мой ответ про художественную литературу - читаю только с детьми, сам не читаю. Взяли бы такого и какими чертами наградили бы?

Любопытна ваша оценка меня как специалиста, если мой ответ про художественную литературу — читаю только с детьми, сам не читаю. Взяли бы такого и какими чертами наградили бы?

Первое, вы всё читаете! И самое главное. что читаете — от этого и будет завмсеть ваше вознаграждение!
P.S. Порой техническая литература бывает не менее захватывающей. чем художественная. Со мной такое было. когда я читал "Горение свечи" Фарадея.

Я бы поставил плюс и активно читающему и любителю активного физического времяпрепровождения, который ни одной книги не прочитал.

За наличие активной позиции. Наличие интересов свидетельствует о хорошей самооценке. Если человек занимается "добровольными" активностями, то и на работе с некоторой вероятностью будет активен. Не гарантия 100%, но корреляция есть.

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

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

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

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

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

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

На одном вопросе про книги не сделаешь выводы о кандидате, но правильно его сформулировав можно оценить как люди либо проводят досуг, либо изучают что-то новое :)

"Незнайка на Луне " ровно как и "Золотой теленок" это две моих настольные книги по жизни. Да там и дух приключений и тяга к знаниям. Но самое главное, что это книги про в бизнес и инвестиции. Чего только история господина Понча стоит (помните как он стал соляным магнатом). Или размещение акций по фертингу акционерного общества. А уж схемы господина Корейко в 90-ые наверное не один раз были провернуты ни одним бизнесменом. Самое главное времена меняются, а схемы остаются, все нетленка и все рабочее.

А книжки про незнайку — это Супер. Они развивали в нас тягу к знаниям, хотелось вместе с ним лететь на Луну, да много чего.

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

? на самом деле, это вопрос на поведение, посмотреть что ответит. Согласна с вами, что это странный вопрос.

Какие книжки в мире ИТ, всё что успеваешь habr, курсы, статьи в интернете. Я за день столько начитаюсь документации, что вечером хочется уже не до книг, а хочется спорта или отдыха.

А с ребёнком? Вообще не успеть книг. Я пока на уровне ещё Маршака, до Незнайки не дошли, но спасибо за идею.

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

Я вот такой "хитрый кандидат". В какой-то момент, я просто перестал отвечать на нетехнические вопросы на интервью, а просто "играю роль", в зависимости от ожиданий человека напротив. Работает безотказно, плюс бонусом можно получить от интервьюера пачку откровений о компании.

НЛО прилетело и опубликовало эту надпись здесь

Так это вроде не плохой вариант узнать человека получше.

Отгадайте с каким разработчиком вам будет проще решать технические задачи: с тем, кто недавно прочитал книгу Лема "Сумма технологий", или сборник комиксов Ники Водвуд "Пёся".  

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

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

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

Как по мне, не плохой результат для одного вопроса про книгу в контексте проблемы трудоустройства. Сомневаюсь, что какой-нибудь чисто технический вопрос “Что такое ООП?” или "Как обойти дерево в ширину?" дал бы больше пользы. 

Так ведь в том то и дело, тут ещё вопрос, означают ли общие интересы комфортное сотрудничество.
Те же любители научной фантастики могут очень похоливарить на тему «что лучше, Star Wars или Star Trek». А любители Star Wars на тему «является ли Империя абсолютным злом или Республика сама зашла в тупик». А любители Империи на тему «считать ли Трауна частью Империи». Ну вы поняли…
А вот были бы разные интересы — пожали бы плечами да и дальше работали.

Интересно. Вот допустим вы меня собеседуете и задали такой вопрос. Получили ответ (например последне, что я дочитал, был Томас Лиготти), сделали некие выводы. Которые не факт, что совпали бы с моими. Если вы готовы оценивать насколько удобно будет работать с человеком по книгам, которые он читал, то я вот точно нет. Потусить и поговорить за жизнь - да, работать - далеко не факт.

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

Короче, спасибо, буду держать в уме что такой вопрос - красный флаг =)

От человека зависит, выбор варианта с "Пёся", смотрится менее рискованно.

Сумма Технологии (последняя И, что характерно) - книга хорошая, но нужно быть редкостным занудой, чтобы ее читать, IMHO ;-)

Чтобы узнать человека получше - нужны более открытые вопросы, а не это про "последнюю прочитанную". Потому что у взрослого человека обычно Лем, Брэдбери, Азимов, Стругацкие, Желязны, Гаррисон, Кнут и множество других, которые на слуху - скорее всего, уже давно прочитаны и перечитаны - в подростковом и студенческом возрасте. А дальше, если человек продолжает читать - он уходит во что-то более нишевое и вероятность пересечения со случайным человеком стремится к нулю.

Кнут вполне может быть последним; его книги по книжному делу весьма интересны.

Забавно что статья про собеседования по фронту, а вспоминают про Кнута... я вот за 15 лет ни 1 фронта не встречал который даже Кормена осилил, не то что Кнута. Но честно, может какие мои годы)

Конечно, я имею в виду не книги Кнута о программировании, а книги Кнута о подготовке превосходных книг при помощи текстового редактора и командной строки.

Хорошо, по реакции хабра я понял, что вопрос про книгу большинство считает некорректным — дискриминирующим, личным или просто глупым. 

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

Объясню. Ключевая проблема найма — найти сотрудника, который уживется в сложившемся коллективе и сможет решать поставленные задачи. Спрашивать про “сортировку и ООП” не продуктивно — это может освоить любой инженер если понадобится, а профессиональный проходитель интервью заучит уже на третей попытке. Лично я обсуждаю реальные задачи бизнеса на пересечении с опытом кандидата и это в целом помогает понять сможет он решать поставленные задачи или нет. И в принципе я понимаю, что любые не профессиональные вопросы на собеседовании могут выглядеть подозрительно и раздражать. В каком-то смысле даже не прилично спрашивать про интересы человека, с которым ты не знаком. 

Но как понять, насколько новый человек разделяет человеческие ценности команды? Какие вопросы задавать? Неужели стандартное “что для вас самое важное в команде” звучит лучше этого несчетного вопроса про книгу?  

Неужели стандартное “что для вас самое важное в команде” звучит лучше этого несчетного вопроса про книгу?  

На мой взгляд, лучше.

А вы сможете сформулировать человеческие ценности в команде? Почему бы их не озвучить и не спросить, все ли вам подходит?

А вы сможете сформулировать человеческие ценности в команде? Почему бы их не озвучить и не спросить, все ли вам подходит?

Так своими вопросами компания как раз и обозначает человеческие ценности.

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

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

Поэтому я считаю подобные вопросы не плохими, скажем в отличии от “что для вас самое важное в команде”. В моей практике на него практически все отвечают "хорошие процессы". Мысль важная, но информативности не много. Что если в компании не пещерный менеджмент, он понимает важность хороших процессов, осуществляет их и поэтому задумался над комфортом работы команды. Какие вопросы ещё задавать? 

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

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

Какие вопросы ещё задавать?

Я же выше написал - рассказать о своих процессах и ценностях, и спросить "вам это подходит?"

Так своими вопросами компания как раз и обозначает человеческие ценности

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

НЛО прилетело и опубликовало эту надпись здесь

Давайте представим, что вы в роли руководителя, вам нужно нанять нового человека в команду. Исходя из того, что сказали комментаторы в этом треде, ценности вашей команды такие: 

  • полное разделение личной и профессиональной жизни

  • самоотверженность (на работе только работа, никаких личных интересов) 

  • деловая искренность (на работу приходят только ради денег) 

  • здоровый образ жизни (никаких баров) 

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

  • рассказывает о личной жизни  

  • по утрам работает над собственным пет проектом 

  • компанию воспринимает как семью (в жизни нет других друзей) 

  • не против выпить винца в обед, по барам ходит даже в среду 

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

Как предложил sshmakov, можно прямо эти ценности так списком обозначить и спросить кандидата подходит ему или нет. Не плохой вариант, но очень прямой и не факт, что всем под силу. Можно вопросы наводящие позадавать помягче "каким спортом занимаетесь?" или "готовы за свой счёт разрешать ситуации в личной жизни?" и т.д. 

Суть в том, что не существует "правильных" и "не правильных" ценностей. Как неоднократно упоминалось в комментах к этой статье, подобные вопросы — это двунаправленный|обоюдный|взаимный фильтр. С той стороны вопроса сидят живые люди, у которых тоже есть своё представление о жизни. И представьте себе, оно может не совпадать с представлением кандидата. То есть да, это оценка, но оценка относительная а не абсолютная. В интересах обеих сторон выяснить подходите вы друг другу или нет.

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

НЛО прилетело и опубликовало эту надпись здесь

Нужно ли объяснять, что это не просто разность интересов? Это разные подходы к жизни которые наверняка приведут к конфликту и личному дискомфорту всех участников.

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

С той стороны вопроса сидят живые люди, у которых тоже есть своё представление о жизни. И представьте себе, оно может не совпадать с представлением кандидата.

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

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

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

Любой вопрос на собеседовании - это маркер с двух сторон, предназначенный для понимания одинаково ли мыслят люди. Одни отбирают себе в команду любителей почитать схожие книги, другие спортсменов, третьи... И так далее. Аналогично и кандидат по вопросам понимает с этими буду работать, а эти не на одной волне со мной.

Универсальные вопросы знают только лекторы на конференциях и митапах, те которые начинают свои выступления со слов "я провел тысячи интервью в обоих ролях - нанимающей и нанимаемой". Они абсолютно уверены в своей непогрешимости и "несут свет знаний" миру.

Для статистики - на трех последних местах работы (сейчас работаю в компании 5000+) у меня не было этих любимых всеми поведенческих вопросов (равно как и hr-секции - господи, как же такое может быть?!) - общались два разработчика и приходили к согласию работать вместе в тот же день. Наверное, это разновидность шоу "Интуиция". Это тоже не универсальное средство, но так тоже бывает, представьте себе. И это не соответствует всеми любимой схеме с кучей интервью и томительным ожиданием.

Жизнь многогранна, так стоит ли ее запихивать в шаблоны, особенно в достаточно творческой профессии - разработчик? (Про другие специализации не берусь судить).

Как-то немного шокирована тредом в целом, так что мои пять копеек вставлю в ответ на ваш комментарий.

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

Настольной книги нет; сейчас я на собеседовании и ничего не читаю, а разговариваю с вами; последняя книга, которую я купил - "Незнайка на Луне" (для сына, читать перед сном).

(nialpe)

По-моему, это классическая история насчёт того, что чаще всего комментарии пишут от возмущения. Особенно вот такие вот эдакие саркастические (при всём моём уважении к коллеге nialpe)

Мне пока только один раз задали этот вопрос. Я сразу ответила, вообще не задумываясь - ну потому что как раз последние пару недель до того момента штудировала один талмуд. В ответ услышала, что это очень хорошая книга. Ура. Мне тоже было приятно (на самом деле, я изначально-то не была уверена, что хорошая - купила по отзывам, дата издания несколько подустаревшая, напрямую мне её не рекомендовал никто...)

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

Ах да, тут важно, конечно, что собеседование с обсуждением книжки было с техлидом, само собой, не с эйчаром. Это и мне было важно - убедиться, что техлид толковый, что он уже знает книжку, которую я только что начала. На собеседовании же соискатели нанимателей выбирают тоже, не только наниматели соискателей.

--------------------------------

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

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

(тут правда есть ещё версия "книга = учебник-справочник". Оставим данную опцию пока за скобками)

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

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

Ну, вы тому интервьюеру ответили вполне логично. Но согласитесь, очень похоже на типовой технарский стёб над гуманитариями. Стёб, подчёркивающий нелогичность, или точнее неконкретность гуманитарных вопросов. Что-нибудь вроде "продолжите числовой ряд 1, 2, 3..." - фантазия у математика разыгрывается не на шутку.

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

Возможно, Бог миловал, но всюду, где довелось работать меня ни разу не спрашивали ни про книги, ни про достоинтсва и недостатки, ни про кем я себя вижу через пять лет. И наоборот там, где начинались попытки оценки качества X по оценке качества Y, сотрудничества не получалось. И это вполне нормальная история. Подобное притягивает подобное. В своем случае я могу сформулировать это как:

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

  1. Коллективы, в которых слова без подтверждения действиями веса не имеют. К сожалению немало примеров вокруг, когда на словах человек - Человечище, но в делах - увы и ах.

Да о каких, мать-перемать, "ценностях команды" постоянно идёт речь? Я вот уже 5 работ сменил, но так и не понял, что это за штука такая? Для меня команда - это набор людей, работающих над поставленной задачей за деньги, соблюдая те или иные процессы SDLC.

Для меня самое лучшее в команде - это понимание каждым её членом какую работу он выполняет и зачем. А какие он там книги читает, на каком велосипеде ездит, сколько у него детей и прочее - да какая мне разница? Один фиг я приду на работу и с кем-то подружусь, а с кем-то буду "просто работать". Возможно я буду со всеми "просто работать", такое тоже бывало, и ничего - вполне справлялся с работой.

Почему вы отказываете работодателю в праве искать нужных ему людей по нужным ему критериям?

Хотят они найти человека который будет с радостью с коллегами ходить в бар по пятницам. Там принято ретроспективы проводить в баре и менять свои привычки они не хотят. Почему бы и нет? Пусть ищут и есть шанс что найдут.

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

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

Позволю себе дополнить ваше утверждение и второй стороной - кандидат, сталкиваясь с глупыми (на взгляд кандидата) вопросами на собеседовании, может (покрутив мысленно пальцем у виска) завершить рассмотрение этой компании как работодателя. Процесс найма обоюдный?

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

Как чтение Лемма поможет ужиться в коллективе? Если вы устроитесь в незнакомый коллектив, вы сможете понять, кто его читал, не задавая прямых вопросов? А отличить тех, кто его не читал, от тех, кому он не понравился?

Я бы скорее сказал, что это тест на то, что человек вообще продолжает читать и/или развиваться через чтение книг.

Помимо Кнута есть много другой актуально тематической литературы (не сочтите за рекламу): Джедайские техники, Цифровой минимализм. Если человек расскажет, что читал Эгоистичный ген или Черного лебедя - это тоже будет в плюс к кругозору. Кто-то может сказать, что читает Даррела в оригинале. Я частенько перечитываю Лукьяненко или Никитина. Кажется, что пора делать очередной подход к Джедайским техникам.

Я с вами согласен, что вопрос выглядит немного странно и вымучено. Но это если поверхностно подходить к вопросу, как мне кажется.

Ну вот и найден тот человек который прочитал "Ричард длинные руки" до конца, и перечитал. Все же ты существуешь.

Вопрос же не про "что читал", а "что последнее". Сумма технологий прочитана лет 25 назад, вместе с Эгоистичным геном, а последнее прочитанное - Пелевин Трансгуманизм...

Хм, а если Лем прочитан давно, и теперь есть время на комиксы?

Смотря как вы относитесь к повороту стрелочки

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

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

А про тех. литературу можно узнать спросив "откуда узнаешь что-то новое", если в ответе будут книги ¯\_(ツ)_/¯

Без шуток, это один из лучших вопросов, который можно задать человеку на собеседовании. Лучше может быть только спросить про 5 последних книг, чтобы исключить элемент случайности. Ответ на этот вопрос скажет о человеке гораздо больше, чем ответ на вопрос по особенностям безумного поведения JavaScript в синтетических примерах.

НЛО прилетело и опубликовало эту надпись здесь

Вы смогли назвать все пять. Вы приняты!

Project Hail Mary

неплохо, но если не читали Bobiverse , то рекомендую

Мне интересно, что из перечисленного больше всего повлияло на вас как специалиста. Расскажите о задаче или проблеме из вашего опыта работы, в решении которой пригодились полученные знания. Откуда вы вообще узнали про эту книгу? Вы взялись за ее изучение по личной инициативе или чьим-то требованиям?

НЛО прилетело и опубликовало эту надпись здесь

Как вариант: "Приведите пример задачи из своего опыта работы, которая вам казалась сложной, трудной или непонятной ещё год тому назад, а теперь вы научились решать?" "Оглядываясь назад, какие материалы по данной теме посоветуйте новичку?" "А что профессионалу?". "Что изучаете сейчас?"

"Что изучаете сейчас?"

"Молот ведьм" - как Вам такое? :) А если скажу, что читаю "Учебник партизана" 42 года, то на какие три буквы меня направите? ;)

А если скажу, что читаю "Учебник партизана" 42 года, то на какие три буквы меня направите?

Если в России - то, боюсь, на буквы "ВСО".

Абсолютно бы нормально отнёсся. Например, человек любит копаться в словарях!

  • Дети дюны

  • История западной философии

  • Хочешь выжить - инвестируй

  • Библия (ветхий и новый заветы)

  • Handbook of applied cryptography

Вот я разработчик на С++. Что вам это даст?

Среди ваших книг есть книги по финансам, криптографии, фантастике, философии, религии. Мне это даст знание того, что вы всесторонне-развитый человек с интересами в разных областях, что дает вам понимание разных систем, их различий, сходств, и ограничений. И вместо того, чтобы обсуждать особенности работы промисов в JS, я бы лучше обсудил с вами книгу Рассела. Это дало бы мне гораздо лучшее представление о ваших способностях. Я не верю, что человек может с интересом прочитать "Историю западной философии" и быть при этом плохим программистом.

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

Неправильных ответа, в общем-то, только два:

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

  • Все пять книг по одной и той же тематике - тут нужно смотреть. Для специалиста по криптографии пять последних прочитанных книг про криптографию - это, в принципе, нормально, но вот при найме лидов и особенно C-level персонажей узость взгляда на мир это жирный минус.

Хотя тут я скорее теоретик, чем практик - лидов и C-level-ов никогда не собеседовал, но слышал от CEO крупных компаний примерно то же, что тут вещаю. Ширина интересов - это тот самый пресловутый diversity. Только не в рамках компании, а в рамках мышления отдельно взятого человека.

Я не читаю книги, потому я беру опыт и знания из других источников информации (и это не книги). Мышление и ширина интересов не задаётся книгами.

Ни в коем случае не буду с вами спорить, но просто интересно: если я могу вспомнить лишь 3 книги, которые начал читать относительно недавно (несколько месяцев назад) и читаю до сих пор, то это нормально?

И при этом с головой ушёл в настольные игры, и, например, могу перечислить 5 важных игр, в которые сыграл за последний месяц и которые сильно повлияли на меня, объяснить, почему так произошло, выделить авторские элементы в этих играх и указать на хорошие геймдизайнерские решения в них (не связан с разработкой игр вообще).

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

Часто джунов на собеседовании спрашиваю, что недавно читали, связанного с профессией (книга, статья на хабре, мануал, не важно). Что понравилось, что нет и т.д. Позволяет понять, имеет ли человек склонность развивать себя и узнавать что-то новое.

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

И строчка в резюме, не стоит забывать об этом

Мне вот непонятно, если я учился преимущественно по YouTube и StackOverflow, мне что по книгам говорить? По JS отличный учебник у Ильи Кантора, тоже онлайн. И я далеко не джун

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

И я далеко не джун

У меня +/-20 лет коммерческого опыта, я учусь до сих пор. Как и большинство моих коллег, бывших и настоящих.

У меня один раз спрашивали (точнее нет, просили сфотографировать и прислать) наклейки на крышке ноута. Наклеек у меня не было, и по итогу меня не взяли.

Наклеек у меня не было

А сейчас есть что есть?!

Блин. Я сейчас читаю книги по вязанию и книги о психиатрии, чтобы лучше понимать психические расстройства у себя и у близкого человека. Вот как это меня характеризует и стоит ли вообще заикаться о менталке? :)

Скажем, что не так с этой функцией?

С функцией есть один объективный "не так". Странно, что вы претендуете на профессионализм и не заметили, а для меня JS язык дополнительный

Джентльмены подобные категоричные заявления обычно аргументируют )) В чём же объективный "не так" заключается?

Что написано в сети - останется в сети. Живите с этим.

С функцией не так - это то, что она называется map, а эти вещи зарезервированы. Ошибки, скорее всего, не будет, зато будет путаница, где какой map

Глобально имя map не занятно. Детали того как она экспортируется и экспортируется ли вообще отсутствуют в примере. Согласен с автором, все зависит от контекста.

Нет, не зарезервирована https://www.w3schools.com/js/js_reserved.asp
Имеется метод у массива, но это не функция.

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

BTW я бы вот навскидку в первой строчке длину массивов сверил.

как я выяснил, ответ этот: «Число неизменяемо»

Даже потерял дар речи....

От создателей «Кем себя видите через 5 лет?» :)

От создателей "Почему вы выбрали именно нас?" , при том, что сами пригласили тебя)

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

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

Нормальный вопрос для джуниор-манагера, который просто обязан ответить, что через 5 лет будет директором этой замечательной конторы)
На самом деле польза может быть, но ответит на этот вопрос дай бог один из 10, реально задававшийся вопросом будущей карьеры и выстроивший план.. И да, таких лучше не брать, они ведь потом ещё и расти будут, зарплаты больше требовать, а не тихо сидеть в углу на той же ставочке..

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

Вижу себя человеком. Я буддист и для меня нет таких понятий как прошлое или будущее, я живу настоящим. И своё сознание я не загрязняю каким-то мнимым будущем

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

Сведения случайного характера
Неясное поведение

понять всё ли человек знает, чтобы ориентироваться в любом сложном вопросе по теме.

Частности

небось это никакие не частности. а проверка опыта. опытный человек так или иначе натыкался на эти "частности".

Туманные вопросы
Вопросы без контекста

понять как чел размышляет

Ну вот вы узнали, что человек не натыкался на пяток частностей, на которые натыкались вы. А он в свою очередь наткнулся на пяток частностей, на которые уже вы не натыкались. И что это доказывает?

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

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

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

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

А если джуниора будет собеседовать синоьр который думает что он джун но на самом деле синьор?

А вот если синьор собеседует джуниора, то джуниор часто не понимает "зачем мне задают эти вопросы"

Рассмотрим ваш пример детально

Синьор: Что в этом коде не так?

Джун: (смотрит код, думает)

С: (думает - "ага, он не понимает элементарного вопроса!")

Д: ("не понимаю, что он хочет... var вместо let? мутация массива? for of?...") Извините, могли бы вы конкретизировать контекст?

С: (победоносно) Map - зарезервированное слово!

Д: Ну вообще-то нет...

С: Как нет? Вон из класса! Приходят тут джуны всякие...

Приветик! Вроде как джуниором меня не называли лет 5) В целом посыл статьи — что интервью "на синьора" часто пытаются устроить по аналогии с "интервью на джуна", только выбрав более редкие темы, и это, как про мне, работает не очень хорошо.

"опытный человек так или иначе натыкался на эти "частности"." - ошибка субъективности. Я опытный человек, я недавно наткнулся на эти частности, значит другой опытный наткнулся на те же самые частности (и не раз раз до сих пор это помнит), а если не наткнулся то он неопытный. Не работает, возможных частностей слишком много.

Кто сказал что частности эквивалентные?

Например собеседую я бэкэндера, который ведёс себя как бэкэндер-синьор. Спрашиваю перечислить http заголовки, которые он знает и спрашиваю зачем нужно хэширование паролей. Удивительное дело, он не знает. Хотя с умным видом только что объяснял в каких случаях и как делать правильную микросервисную архитектуру, или не делать.

Такое сплошь и рядом случается. Это замаскированный джун. Он не сможет сам тянуть проект и сделать что нужно.

То есть вы задаёте синьору вопросы, на границе джун-миддл, и делаете вывод что он джун. Уже после того как он проявил компетенции синьора. Ну ок, ваш выбор, это про вас потом разработчики в баре будут рассказывать анекдоты. Это вы потеряете возможность нанять хорошего синьора из-за не умения собеседовать. Это ваша компания получит удар по репутации если такие примеры проскочат в общий доступ. Зато вы почешете свое ЧСВ, тоже хорошее дело. Когда я собеседую синьоров, я предпочту обсудить микросервисную архитектуру а не хэширование паролей, загрузку файлов через формы, работу с куками, сохранение файлов на диск и другие без сомнения важные вещи, которые мне ничего не скажут о компетенции синьора. С джуном на эти темы пообщаться в принципе можно.

P. S. А вы что реально помните все заголовки http запроса? Их же дохреналион, если учитывать все версии протокола.
P. P. S. Давненько я не хэшировал пароли вручную. Я люблю велосипеды, но чтобы на них кататься а не писать. Нет, я конечно помню про невосстановимость хэша, соль и прочие заморочки которыми мы страдали лет 10-15 назад, так как нормальных библиотек авторизации и acl просто не было. Сейчас я вполне допускаю что может существовать синьор который никогда в это не влазил. Я даже допускаю что может существовать синьор который вообще никогда не работал с паролями и клиентской авторизацией, бэкенд он такой, под капотом, "в этих ваших сервисах" дофига важной и интересной работы. Куча продуктов вообще хэдлесс и представляют только api. Если ему будет надо - он использует библиотеку. Если его заинтересует почему в поле pass лежит хэш - он узнает это за 2 минуты. Но как уже сказал, это ваш выбор кого искать себе в команду или компанию.

Очень много джунов-миддлов могут высокоуровнево беседовать про микросервисную архитектуру и знать все основные её вехи по статьям и рассказам, не углубляясь в детали, избегая ответов на эти вопросы, давая расплывчатые ответы. Эти же джуны -миддлы нормально попрограммируют на собеседовании. Но они сами не смогут тянуть проект, т.к. опыта нет и знания "книжные".

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

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

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

такое впечатление что вы считаете что может существовать синьор, который всё знает на высоком уровне, но не знает на уровень ниже.

А вы что реально помните все заголовки http запроса?

нужно знать не все, а сходу назвать хоть какие-нибудь

Сейчас я вполне допускаю что может существовать синьор который никогда в это не влазил. Я даже допускаю что может существовать синьор который вообще никогда не работал с паролями

видимо вопросы безопасностью он тоже не работал. с by-value токенами тоже, и с jwt не работал, с hmac не работал, про криптовалюты не читал.

или он работал с hmac, но никогда не интересовался как устроено хэширование паролей?

или он синьор, но никогда не интересовался что значит hmac?

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

но тогда он хотя бы помнит http заголовки.

з.ы.

Забыл. И главное - нельзя стать сразу синьором. Сначала чел джун, потом миддл, потом синьор. Он не мог пропустить все эти этапы, значит занимался более низкоуровневыми задачами.

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

"Что едят ежики"? С серьёзным выражением лица спросили у меня на одну из вакансий системного аналитика.

правильный ответ был "мозг собеседующего который задаёт подобные вопросы"?

ЯблОки

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

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


А в неволе едят, что дают. Жить захочешь, не так раскорячишься (с)

Яблоки могут накалывать на иголки в рамках борьбы с паразитами. Ёжики, в отличие от дикобразов, не могут нормально вычесаться (у дикобразов есть длинный коготь, которым хорошо чесаться), и паразитов всяких у них полно, даже количество клещей в зоне могут измерять в ёже-часах. Поэтому ежу по кайфу обмазываться всяким кислым, токсичным - для паразитов. Отсюда яблоки, грибочки.. а если дать ежу тряпку вымоченную в бензине, он замотается в неё и будет балдеть (не надо так делать) :)

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

Яблочки имеют свойство портиться и становиться заразой. И тем самым привлекать паразитов. Поэтому нет, ёжики никогда не натыкают яблоки на иголки ибо они их потом снять не смогут. Это всё фейк из мультиков

У меня на деревне живут вольные ежи и они жрут яблоки! Ну или куда-то уносят, хз. По крайней мере, долька яблока, выложенная перед ежом, исчезает. Весь процесс мне пронаблюдать не довелось т.к. ежи никуда не спешат, а у меня дела :)

А ещё они топочут! Если в темноте/сумерках на тебя по осенней листве движется боевой йожъ, полное ощущение что на тебя валит что-то огромное! Ты его слышишь, но не видишь! И это жуттттко... :)

Ежики хищники, ждали ответа Соответствующего, главное не яблоки)))

Ели мясо ёжики, пивом запивали

Вопрос либо на ширину кругозора либо на софт скилы. "Правильных" вариантов 2:

  1. Обсудить поведение ежиков, пищеварение, эволюционные особенности, методики дрессировки и их социальную структуру.

  2. Невозмутимо, плавно и незаметно перевести вопрос на особенности морения дубовой древесины в в новгородских племенах 12 века.

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

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

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

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

Так то понятно, что собеседование в две стороны и вообще делать экзамен - моветон. Но реальность рынка расстраивает и вынуждает адаптироваться.

Со стороны кандидата — да, просто нужно станцевать в этом корпоративном ритуале, так работает система.

С нанимающей стороны это "продуктивно" в том смысле что можно как на заводе быстро прогнать и ранжировать N кандидатов, но не гарантирует, что итоговый найм будет удачным.

собеседование является знакомством в первую очередь. у того кто собеседует цель найти подходящего профессионально и по характеру работника (ну и по деньгам). У того кто собеседуется цель найти подходящий ему (по важным параметрам) проект, компанию, команду и все это с той ЗП которую он хочет. Две стороны узнают друг друга. Оценка дается не по 5-10-100 бальной шкале а по "хочу/не хочу" с обоих сторон, если "хочу" совпало - значит можно работать вместе.

Кандидат который сидит и ждет экзамена, во многих случаях получит свой минусик, чисто профессиональные скилы обычно оцениваются только в компаниях которые называю галерами. Если кандидат не задает вопросы, если он целиком сфокусирован только на том что-бы "сдать экзамен", это очень тревожный звонок. Для джуна еще ладно, а вот для мидла и выше уже тревожный. Это значит что либо он стесняется/боится спрашивать, и все это выползет уже на испытательном, либо ему вообще на все плевать и он меняет деньги на задачи из жиры. И если второе еще где-то и пригодится, то первое это геморой, потеря времени и ресурсов.

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

Хорошо что долистал. Вы вот с "языка сняли"))))

Есть такая компания, EPAM называется. Белорусская, но из-за недавных событий покинувшая российский рынок. Я их собеседование проходил раз пять, как от них самих, так и для других компаний, которые их об этом просили.

Так вот. их собеседование - самый, что ни на есть, настоящий экзамен. Прямо по пунктам, должен рассказать что как есть. И задачки (я Angular-разработчик, но задачки были на нативный JS) тоже должен как на экзамене решить. Самые популярные задачи на отличие var (кто его вообще использует сейчас??) от let и про что является микротаской, а что - макротаской. У меня другого выбора не было, как выучить это наизусть) И на последнем собесе они выдали мне-таки оффер... но я отказался

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

Собеседование является экзаменом далеко не в первую очередь.

В этом месте Поднебесная смотрит на ляовая с конфуцианской улыбкой :)

Я с сыном-подростком сейчас стал заниматься подготовкой к ЕГЭ по тестовым заданиям. Еще несколько лет до этого, но всё же. Обратил внимание, что для решения некоторых заданий важен контекст, который не указан. Например решить уравнение типа (упрощенно):

x^2 + sqrt(x) = 4 + sqrt(x)

Если решать в области действительных чисел, то нужно учитывать ОДЗ и получается один корень. Если же решать в области комплексных чисел, то спокойно получаем два корня.

А какой ответ подразумевают составители таких задач? В официальном тестовом ЕГЭ за 2022 (или 2021) я видел несколько простых примеров с комлексными числами. Значит, в старших классах эту тему всё же затрагивают?

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

x^2 + sqrt(x) = 4 + sqrt(x)

Если решать в области действительных чисел, то нужно учитывать ОДЗ и получается один корень

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

От радикала можно "избавиться", но это будет уже другое уравнение, а не то, которое вам задали.

А можно и не избавляться. И интуитивно, и "на листочке" (-2)^2 + sqrt(х) = 4 + sqrt(х) является верным равенством вне зависимости от того, что из себя представляет х, потому что (-2)^2=4, а f(x)=f(x) при любых x.

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

И потом, что значит "другое уравнение"? Перенос слагаемых справа налево со сменой знака - допустимое действие, приводящее к эквивалентности.

Не все преобразования приводят к эквивалентному уравнению. Занимаясь "избавлением" от радикалов, вы можете получить вовсе не эквивалентное уравнение.

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

А разве не бесконечное (счетное) число корней? Ну там 2 * e^(N * Pi * i), где N - целое (или как там это записывается)?

e^(2*pi*i) = 1, так что третий корень совпадёт с первым (и далее по кругу).

НЛО прилетело и опубликовало эту надпись здесь

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

Что то я запутался ребята)

Я попробовал не сокращать sqrt(x), а, преобразовав уравнения, избавиться от радикала (возвел в квадрат обе части; вынес радикал отдельно; снова возвел). У меня получилось уравнение 8-й (ой!) степени:

x^8-4x^5-32x^4+32x^3-64x+256=0

а по основной теореме Алгебры (точнее следствие из нее) у него должно быть строго 8 корней. 2 действительных точно есть, осталось найти 6 комплексных.

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

Среди этих 8 корней будет только два различных. Можно по другому решить: заменить sqrt(x) на t, получим уравнение 4 степени, 4 разных значения t, но возвращаясь к х по формуле x = t*t, снова выйдем на два разных корня.

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

И которым я кстати совершенно никогда не владел сам

Но сколько не хвалили мои "сложнейшие и интереснейшие интервью" коллеги и кандидаты, так никто от них не отказался. Имхо, самое любопытное в интервью - слушать кандидата, формировать вопросы по опыту и из его собственного резюме и из ответов кандидата по ходу интервью.

Для меня процесс собеседования, - диалог, чем он интереснее получается, тем обычно интереснее кандидат. Зачем тратить лишнее время на вопросы "которые стоит заучить перед интервью" я так и не понял.

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

И ещё. что Вы посоветуете кандидату в кандидаты, у которого имеются некоторые трудности с установкой нового программного обеспечения и который из-за этого имеет не так много важного опыта проб, ошибок и "выкуривания" документации? А если ещё и лет много? Навсегда забыть о трудоустройстве и всячески избегать собеседований?

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

Второй, если честно, я совсем не понял. Не вижу связи между ни одним из вопросов. Может перефразируете?

Красавчик)

У меня ещё была идея что ни одна "задачка" не способна за час отличить хорошего Милла от синьора, тк задачи такого масштаба они должны бы решать одинаково хорошо, а задача "синьор-масштаба" за час в коде не реализуется

Существует ли какая-нибудь возможность узнать эффективность собеседований? Пусть, например, некто прошёл собеседование. Что случилось дальше? Сколько работников, оправдавших доверие? Сколько работников, которых "зарубили" "каверзными" вопросами на собеседовании, но которые весьма успешно работают на своих нынешних местах работы?

False positive (не прошел испыталку / плохо перформит) посчитать на данных внутри компании достаточно легко, уверен что ичары бигтеха таким занимаются (у них же бонусы от этого зависят)

False negative сложнее, тут только "а у меня один друг". Ну и не факт что чувак, успешно работающий в команде Y, так же прекрасно зашёл бы команде X

от вас ждут совершенно определенного ответа (как я выяснил, ответ этот: «Число неизменяемо»)

Когда авторы таких вопросов, заточенных под ответ, сами не знают чего-то (например, Object.freeze) - это прям особый шик, вишенка на торте.

Скажем, что не так с этой функцией? (...далее функция, которая мутирует массив)

Почти наверняка вопрос придумал заядлый ФП-шник. У них непереносимость такого.. Лично я поменял бы название на "mapInPlace" какое-нибудь.

----

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

console.log(Object.keys({ x: 0, y: 0 }).join()) — x,y или y,x? Я знаю, что при нормальных условиях ответы — x,y (в порядке добавления) ..., но спецификации нет

Спецификация есть. Начиная примерно с ES6, порядок перечисления ключей определён в https://262.ecma-international.org/#sec-ordinaryownpropertykeys

  1. Let keys be a new empty List.

  2. For each own property key P of O such that P is an array index, in ascending numeric index order, do

    • Add P as the last element of keys.

  3. For each own property key P of O such that Type(P) is String and P is not an array index, in ascending chronological order of property creation, do

    • Add P as the last element of keys.

  4. For each own property key P of O such that Type(P) is Symbol, in ascending chronological order of property creation, do

    • Add P as the last element of keys.

  5. Return keys.

Для истории, в спецификации ES5 порядок перечисления был implementation-specific:

  1. https://262.ecma-international.org/5.1/#sec-15.2.3.14

Object.keys()... If an implementation defines a specific order of enumeration for the for-in statement, that same enumeration order must be used in step 5 of this algorithm.

  1. https://262.ecma-international.org/5.1/#sec-12.6.4

The for-in Statement... The mechanics and order of enumerating the properties ... is not specified.

Кстати, в JSON, откуда на практике часто приходят такие данные, порядок ключей все ещё не определен?

Определен как unordered

Век живи век учись, придумаю какой-то другой пример, спасибо. Хотя можно понудеть что пока существуют браузеры без ES6+ глобально поведение остаётся неспецифицированным

встроенные структуры данных в JS не уточняют сложность операций

Некоторые всё-таки уточняют. Про Map и Set в спецификации есть указание по времени доступа к элементам.

https://262.ecma-international.org/#sec-map-objects

Maps must be implemented using either hash tables or other mechanisms that, on average, provide access times that are sublinear on the number of elements in the collection.

https://262.ecma-international.org/#sec-set-objects

Set objects must be implemented using either hash tables or other mechanisms that, on average, provide access times that are sublinear on the number of elements in the collection.

В реальности получается примерно так:

  Op     Avg  Worst
  Search O(1) O(n)
  Add    O(1) O(n) - перехэширование при росте размера
  Delete O(1) O(n) - перехэширование при уменьшении

Что не так с этой функцией

function map(arr, fn) {
  for (var i = 0; i < arr.length; i++) {
    arr[i] = fn(arr[i]);
  }
  return arr;
}

Позволю предположить. Как указано автором, функция меняет входной массив данных. Само по себе это не то чтобы плохо, проблема в том, что она одновременно меняет входной массив данных и возвращает его. Для пользователя этой функции, что не удостоверился в контракте или реализации, может создаться ложное ожидание, что раз функция возвращает массив, то он новый.
Например, метод javascript Array sort делает ровно то же самое - изменяет исходный массив и возвращает его же как результат. IMHO, это дизайн функции ведущий к ошибкам, но здесь видимо мое мнение расходится с авторами JS (как минимум, это позволяет за-inline-ить вызов в цепочке вызовов).

Разве в функцию передается не копия массива?

Нет, конечно. В js не настолько всё плохо )

Пожалуй, самая логичная проблема в функции. Что касается Array.prototype.sort - наверное пошли на это для удобства. Чтобы можно было и сортировать на месте экономя память, и method chaining работал

недавний вопрос на собесе

  • как запускается программа?

из серии "как программировать?" или "как жить?"

НЛО прилетело и опубликовало эту надпись здесь

Любопытно было бы узнать какое автор имеет образование.

Автор имеет образование бакалавра прикладной математики и информатики, а что?

Я обратил внимание на то, что многие вопросы, что вас раздражают, имеют характер более академический, нежели прикладной, отсюда и любопытство.

Какова цель подобных статей?

Научить плохих работодателей мимикрировать под хороших? Зачем?

Научить кандидатов пробиваться через плохие вопросы в плохие компании? Зачем?

Видишь подобные вопросы - вежливо попрощайся, и не обещай перезвонить.

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

"Интервьюер работал в Яндексе" — не повод выкидывать всю компанию в мусор)

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

Как это ни странно, собеседовать тоже нужно учиться.

Необходимо предубеждение - "мне на все пофиг", и аналогично смотреть на интервьюера. Тогда никаких сюрпризов не случится.

А я вот все жду статью от "молодых богов": встал и ушел с собеседования в фаанг когда услышал вопрос по типу "почему люки круглые".

Или не пошел на второй этап в Теслу, потому что там удаленки нет, а везде есть.

Или на вопрос рекрутерши из Майкрософт кем вы видите себя через 5 лет ответил "Твоим отчимом".

Так что не стоит выделываться, уверен что за оффер 600к будете не то, что на салфетке package.json описывать, ещё и docker-compose запилите под это дело с вебсервером бонусом ?

Без обид, но эту аргументацию я постоянно слышу лишь от шарашкоконтор с вакансиями по 90к руб/мес


— Да мне пофиг на форму ваших люков, вам работник нужен?


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




Если серьезно, то тут все понятно, это нормальный здоровый капитализм. Либо предлагай оффер на 600к и я тебе package.json с версиями на салфетке напишу, либо предлагай рыночную, но и веди себя адекватно. Ну, это… нормально же!?

На 600к в Москве есть достаточно вакансий. Точно напишите?

Задачку на алгоритмы на салфетке напишите? А гугл диск на второй салфетке спроектируете?

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

НЛО прилетело и опубликовало эту надпись здесь

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

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

НЛО прилетело и опубликовало эту надпись здесь

Полагаю, разговор о $600к/год а не о 600кр/мес

Это уровень руководителей faang’a. Мне кажется что те кого туда могут взять об этом знают заранее.

НЛО прилетело и опубликовало эту надпись здесь
На 600к в Москве есть достаточно вакансий.

Чо, серьёзно? Щас же вроде рынок упал, кандидатов куча, все плохо, все уехали?


UPD: Поискал, на hh что-то не нашел на js 600к+ =(

Чо, серьёзно? Щас же вроде рынок упал, кандидатов куча, все плохо, все уехали?

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

Поискал, на hh что-то не нашел на js 600к+

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

На самом деле даже до миллиона дать могут. Но это уже совсем отличиться надо. И в нагрузку отдел разработки чего-то еще всучить попробуют.

Пока только комментарий от "молодого бога":

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

НЛО прилетело и опубликовало эту надпись здесь

Так что не стоит выделываться

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

Меня спрашивали (ну не в МС, конечно) кем я себя вижу через 5 лет. Я сказал что не знаю что завтра будет, а вы про 5 лет спрашиваете. Просто хорошо делать свою работу и помогать разработке. Их вроде устроило.
Кстати есть видео на ютубе, где люди отказываются от офферов Гугла, потому что часть этой суммы выплачивается какими-то вкладами в страхование, часть какими-то другими малоликвидными средствами, а то что остается это для уровня жизни там весьма скромные деньги.

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

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

Тут, конечно, речь о вопросах "за извращенное программирование", а не вообще "за жизнь"

Так ведь компания всегда нанимает кадры соответствующие уровню ее компетентности. Ведь когда не знаешь то и не спросишь. Соответственно, по вопросам легко судить об уровне профессиональной зрелости компании.

Ведь когда не знаешь то и не спросишь.

Как работает GC в JS? Я вот не знаю, но спросил.

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

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

А вот накосячить с асинхронность может любой.

Из чего можно сделать вывод что выбранный вопрос - пустая трата времени. И фирма не умеет ставить приоритеты в условиях ограниченного времени. Тревожный звоночек.

В вашем комментарии ничего не было про ограниченное время. Зато было про соответствие уровня вопроса уровню компетенции. Но одно из другого не следует, на что я и указал.

Разумно предположить, что доступ к объекту obj[key] займет O(1), но на деле это определяется многими факторами — размером объекта, частотой создания / удаления etc...

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

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

Кандидат может не знать теорию, но справляться с задачами на должном уровне?

Кандидат может не знать теорию, но справляться с задачами на должном уровне?

Может, если задачи несложные.

Что в вашем понимании "сложные задачи"? А то ведь они разные.

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

Коррелирует ли техническое образование со способностью программировать — вопрос открытый ?

Я когда читаю темы о собесах, мне становится немного страшно. Дело в том, что я прошёл всего 2 собеседования и с первого мне перезвонили довольно скоро и пригласили на работу. К собеседованиям я готовился изучая теоретическую базу языка и готов был ответить на многие каверзные вопросы. Через пару недель будет 3 года, как я тут работаю и я не помню практически ничего. Боюсь, что на следующем собеседовании меня ждёт провал.

Боюсь, что на следующем собеседовании меня ждёт провал.

Опасения не лишены оснований, так что к собеседованиям, особенно если место интересное и попасть туда очень хочется, надо готовиться. разузнать что спрашивают, как спрашивают, что любят/не любят и т.д. по разным каналам, в т.ч. и по неформальным.

Можно прямо сейчас, не собираясь никуда переходить, поучаствовать в 4-5 собеседованиях:

  • узнаете, что примерно спрашивают по вашей специальности

  • освежите знания

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

  • оцените и улучшите свои шансы на успех на реальном собеседовании

Главное - чтобы HR и собеседующие не догадались, что вы их используете для тренировки :)

Однажды был на собеседовании вопрос "чем различаются архитектуры микропроцессоров?". Правильный ответ был - разрядностью.

В одном собеседовании спросили "Что означает число в top в третьей строке сверху четвертое слева. Причем ПК с Линуксом под рукой не было.

Не взяли.

Ушел с мыслью "что за люди работают в этой компании".

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

На третьем - я тут уже вел - собеседовании кандидат даже помог в решении проблемы. Тут кстати вот поди самое забавное.

Сидим общаемся, парень устраивается на джуна админа. Я задаю вопросы разного типа. Вдруг в мыле забегает один товарищ и скороговоркой жалуется на профиль в AD своего сотрудника и документы. Заворачиваю, показав на кандидата - "зайду, посмотрю, не переживай".

Кандидат так - "Хм, а вы вот так и так сделайте и он свой документ найдет."

Я же на самом деле не вник в проблему, вежливо просто послал нарушителя планов, а тут подумал и... "А хорошая идея!". Перезваниваю товарищу. Советую (кстати - сработало). Возвращаюсь к интервью.

Ситуация ну вот нифига не постановочная, а человека взяли потом, в том числе и из-за такой реакции.

Мораль? А вот хрен знает что с этим всем делать, особенно когда вот ты уже опытный чувак, сам сидишь на интервью, а тебя по привычке собеседуют на вакансию, в которой разом программист, девопс, сисадмин, питон разработчик и профессиональный траблшутер 24/7.

Такие вот интервью, бывает и с пользой. :)

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

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

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

(голосом Шелдона) Интересный факт. Занятие программированием, как правило, улучшает как мыслительные способности, так и моторику рук. Исходя из этого факта, имеет определенный смысл выбирать на вакансию разработчика не того, кто умеет вязать и играть на музыкальных инструментах, а того, кто лучше и чаще программирует.

Спасибо кэп :)

Терпеть не могу собеседования и работу в реале. Удаленка - наше все)

Кстати в копилку. Особо "веселит" когда в процессе общения интервьюер всерьез отстаивает прелести ubuntu или redhat или windows без особой аргументации - просто "потому что и все". И тут ты такой, кто использует ОС чисто для решения задач без особой фанатичности.

От общения веет холиваром прошлого, а как подумаешь что тебе с ними работать - ну его... :)

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

То есть они не просто вас перевели, а ещё дописали что-то?

Это правда комплимент, обычно переводы на Хабре пишут программисты и получается не очень связно) обидно, что при переводе потеряли мою великолепную блок-схему и нашли "мягкие навыки"

НЛО прилетело и опубликовало эту надпись здесь

О чем бы это могло говорить?

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий