Pull to refresh

Comments 263

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


И всякие книги, собственно, и пишут. :)))


А вот что вы скажете, если кандидат, прямо идеально подходя по остальным пунктам, на вопрос из п.19 открытым текстом вежливо скажет всякое нелицеприятное, причём кратко, но объективно обоснует, почему.


Это же противоречит классическим правилам ответа на этот вопрос!

Во всех этих инструкциях не пишут про умение «читать между строк». Ведь важно не только то, что человек говорит, но и как. Плюс контекст.


Пришёл человек в стартап устраиваться — там скорее всего все посмеются и не придадут значение.


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


А в России вообще с этим просто, по-моему.

В России такой человек банально не пройдет первичный отбор HR.
Если в конторе есть HR и HR проводят собеседование.
Меня как-то в отдел кадров привели со словами — этого человека оформляем.
Собеседование проводил человек, будущий руководитель, который и привел в меня в отдел кадров.
Когда у меня спрашивали, почему я пришел к ним на собеседование, я отвечал, что хочу у них работать. Когда спрашивали почему именно у них, я отвечал честно, что у них зарплата выше и работа перспективнее, плюс нравится эта область. Почему-то, как только люди слышат, что ты пришел к ним из-за денег, остальную часть ответа они уже не слышат. Это достаточно странно, ведь все прекрасно понимают, что человек ходит на работу ради денег, в первую очередь, и только потом ради развития, занятия любимым делом и тд.
Должно быть, мечтают о дауншифтере ушедшем с двое большей зарплаты и пришедшим к ним. :)

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

Работодатели! Скажите честно! Вы бы приняли на работу дауншифтера идущего на меньшие деньги?

На почасовую оплату крутого специалиста — с руками бы оторвали. Даже на 20 часов в неделю. Но таких найти крайне тяжело.

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


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

Ага, https://bash.im/quote/417928 — это кто-то цитату с моего давнего собеседования запостил на баш.


Вообще, кредиты, дети, количество денег — это личные вопросы, на которые можно не отвечать.

Именно это я и имел в виду. А вообще, самые больные на голову анкеты, с кучей личных вопросов, чуть ли не о кредитах родственников на восьми листах — обычно у мелко-средних контор «купипродай»-профиля. Собеседование со «Службой Безопасности» (именно с Больших Букв), где дядя сомнительного вида, старательно делая «тяжелый» взгляд, задает тебе вопросы, сходу переходя на «ты». Кто побогаче — те любят «проверку на полиграфе» устраивать. И попробуй им на любой вопрос не ответь — тут же «вы нам не подходите».
Другой вопрос, стоит ли в такое устраиваться, но ситуации бывают разные.
Собеседование со «Службой Безопасности» (именно с Больших Букв),


Да, был у меня как-то собес с безопасником одного банка. Предварительно надо было заполнить анкету. Одно из требований — данные отца, а я его 20 лет не видела. Как он выглядит не помню, а уж что там говорить о том кем работает. Матушка с большим натугой вспомнила год его рождения. Так безопасник крайне удивлялся, как это так, я не знаю. Даже велел матери звонить при нем.
Там вообще вопросов было.
Спрашивал пью ли я, курю и принимаю наркотики. Ага, даже если у меня алкоголизм, так я в этом признаюсь.
Интересовался адресами моей нынешней и прежних работ. вот зачем мне помнить столько не нужную информацию.
Есть ли у меня долги, кредиты, ипотека. Адрес моей новой строящейся квартиры(я в ней уже два месяца живу и знаю приблизительно адрес).
Есть ли машина и права. Вот не понимаю какое это имеет отношение к делу, как и про квартиру.
В общем мне хотелось от туда сбежать, хотя офер потом прислали
Есть ли у меня долги, кредиты, ипотека.


«А вы с какой целью интересуетесь?»

А так, да, я же говорю — СБшники очень любят делать вид. Со стороны это смотрится порой смешно.
«Работа у них такая» — показывать свою значимость, кто к успеху пришёл — выпускает законы о бесполезном хранении трафика, кто не начинал идти — сумки в супермаркете проверяет (или пытается), кто идёт и в органах не особо прижился — переходит в подобные конторы и показывает свою значимость. Раньше такие на «тёрки с бандитами» выезжали, теперь, вроде, не надо и не особо нужны, но «пробить человека» (отправить какому приятелю, который ещё в органах, чтобы он судомости посмотрел, что паспорт совпадает и регистрация, нет каких розысков по алиментам и от приставов) могут сделать, остальное — ещё большая ИБД. Отсюда и анкеты как на приёме в кейджиби, и полиграфы полиграфычи, и «грозный вид», а то вдруг руководство решит что не нужны (знаю конторы, где так и решили после конца 90х, т.е. лет десять назад — экономия вышла).
СБ и должно контролировать IT и HR. Не в смысле руководить, а именно контролировать. По уму это делается через политики и контроль их выполнения. Инсайдеров и дураков еще никто не отменял.
Если в целом объяснение похоже на правду и проверяется, например дичайший перегруз на предыдущей работе и уточнение у предыдущего работодателя подтверждает это, то можно брать.

FULL STOP!!!!!
А если он ещё не ушёл с этой работы, а только собирается уйти, вы что звоните и сообщаете его руководству «ваш сотрудник собирается уйти и ищет работу»?!
Более того — обычно никто и не увольняется заранее, зачем?
Я с предыдущей работы уволился и лишь после этого начал искать новую работу. Так на меня многие интервьюеры смотрели как на восьмое чудо света, настолько это было нетипично.
ну так это очень уменьшает потенциал торговли за зарплату. одно дело — пытаться переманить, и совсем другое — нанимать человека, у которого сейчас работы нет.
Вообще никак не уменьшает. Хороший специалист достаточно хорошо знает себе цену, и цена эта не зависит от того работает он где-то в данный момент или нет. Возможна конечно ситуация, когда у человека нет финансовой подушки, тогда он может и согласиться на меньшую ЗП, но смысл такого демпинга не ясен — он же спустя пару месяцев просто свалит туда где ему будут платить столько сколько он стоит.
цена зависит от спроса. это закон рынка. чем выше спрос, тем выше цена. спрос на человека определяется хорошими предложениями работы. при прочих равных, разумные предложения для человека с работой начинаются с цифр выше текущей зп. для человека без работы это уже не так. кроме того, даже если хороший специалист знает себе цену и уже за эту цену работает, он может получить больше своей цены при переходе. еще лучше, если у него будет больше одного предложения — это еще больше повысит его привлекательность, а так же цену.
У хороших специалистов нет недостатка в спросе, а текущее место работы это всего-лишь +1 к этому спросу. Ну и потенциальный работодатель не пророк, чтобы знать вашу текущу ЗП, так что она никакой роли в ценнике играть не может. А вот что действительно играет свою роль — это ваши зарплатные ожидания.
А что именно вас смущает? Допустим, что вас что-то не устраивает на вашей текущей работе. Слишком большая нагрузка, недостаточная зарплата, выгорание, кофе не того сорта. Что вы делаете? Правильно. Приходите к своему непосредственному начальнику и обсуждаете, а может еще потом идете к более вышестоящему и обсуждаете с ним. Если вы не достигли подвижек, то честно признаетесь, сразу или после обдумывания, что хотите поискать что-то на стороне. Если ваш начальник не совсем идиот, то он даже пойдет вам на встречу.
К сожалению, это распостраненная практика, но вообще-то это говорит о непрофессионализме руководителя. Руководитель должен быть отчасти психологом и улавливать такие моменты, а если сотрудник приходит просить повышение, то с психологической точки зрения, его смело можно и нужно увольнять, «шантаж» недопустим, да и вообще, попрошайничать стыдно и позорно. Мне можно возразить, что не всегда руководитель компетентен или системы оценок недостаточно прозрачны и эффективны, но в этом случае тем более, не имеет смысл держаться за кресло
если сотрудник приходит просить повышение, то с психологической точки зрения, его смело можно и нужно увольнять, «шантаж» недопустим

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


… и нанять на его место следующего бедолагу.
Это крайне омерзительная точка зрения, работать с такими людьми — себя не уважать.
интересный подход. то есть, вот есть человек, чья работа меня полностью устраивает, заменить которого мне будет очень тяжело (найти замену, потом дождаться, пока он разберется в продукте так же хорошо), которому предложили в 2 раза больше денег, чем он получает у меня. ему нравится у меня работать — задачи интересные, коллектив хороший, но 2х — это 2х. Если этот человек пришел ко мне и рассказал об этом, я буду ему очень благодарен. Целесообразно с моей точки зрения или нет платить ему 2х (а лучше 2.5х, чтобы уменьшить риск на ближайшее будущее) — это другой вопрос. Возможно, окажется, что нет. Но человек дал мне возможность все взвесить и предпринять какие-то шаги для снижения рисков. Может быть, я смогу дать ему те же деньги и это будет целесообразно с точки зрения бизнеса. Тогда я не потеряю работника, а он не потеряет работу, которую любит только ради денег. Может быть, я смогу дать 1.8Х, но ему коллектив и задачи скомпенсируют недостающие 0.2Х. Неизвестно, договоримся ли мы вообще. Но ситуация, в которой я нахожусь, благодаря тому, что он ко мне пришел и рассказал об этом, гораздо лучше, чем та, где он просто принес бы заявление об уходе.
Не зная вас, но при всем уважении, если человек пришел к вам с таким обсуждением, повторюсь, больше говорит о вас как о некомпетентном руководители, который не смотрит и не интересуется о своих сотрудниках, ведь руководитель — это не только отдавать приказы и заниматься стратегией и развитием компании/продукта. Если сотрудник хороший, справляется с работой, проявляет инициативу, то это должно регулярно поощряться, иначе он к вам рано или поздно придет на «разговор». Ну дал он вам возможность все взвесить и предпринять какие-то шаги для снижения рисков, дальше что? Зачем вам такой сотрудник, который периодически будет попрошайничать? Наймите другого и поработайте над собой по части психологии, узнайте чаяния ваших подопечных, станьте ближе, а не возводите стену в виде субординации и ограничений, при этом, нельзя забывать о правильных поощрениях за конкретные заслуги, а не просто так за стаж. Что касается о целесообразности для бизнеса платить больше или нет, то если не можете или не хотите платить больше за качество, то тем более такие беседы вам точно не нужны.
Я не руководитель, а обычный разработчик, мое мнение сложилось по опыту, поймите меня правильно
Зачем вам такой сотрудник, который периодически будет попрошайничать?

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

Или по-твоему, сотрудник проявивший лояльность не сменив работу — «лох, который должен страдать»?
в крупных корпорациях обычно есть бюджеты и зарплатные вилки. плюс есть всякие полиси, которые регламентируют правила повышения компенсаций. для того, чтобы сильно поднять компенсацию сотруднику, часто требуется утверждение от какого-то крупного босса. и обычно это сопряжено с кучей бумажной волокиты, объяснительных, почему этот человек нам важен и нужен и все такое. пока форс-мажор не возник, сильно поднять зарплату (если она и так уже высокая по рыночным меркам) обычно не получается. в случае же, когда у человека на руках предложение от другой компании, это может послужить достаточным аргументом для получения утверждения (при условии, что человек действительно нужен). и вы абсолютно правы в том, что даже если дать ему эти 2х, то нет никакой гарантии, что он не придет потом снова и не попросит еще больше. возможно попросит. и возможно снова дадут. зависит от целесообразности на тот момент. как это не прискорбно для некоторых работодателей, но крепостное право давно отменили.
Зачем вам такой сотрудник, который периодически будет попрошайничать?


Слушайте, мне вот прямо нравится эта негативная коннотация. «Попрошайничать». Слово-то какое подобрали.
Ну да, конечно — задача любого бизнеса — заплатить поменьше, а заработать побольше. Владелец и наемный сотрудник тут на разных сторонах баррикад, как бы ни хотелось представить это иначе. И до тех пор, пока сотрудник не придет явно за деньгами — прибавлять ему больше установленного контрактом (премии, бонусы за КПИ всякие) нет никакого практического смысла.
UFO just landed and posted this here
Делают, конечно, но ни разу в моей карьере такого не было, чтобы прямо вот сами пришли и предложили больше денег на том же месте (премии, бывало, сами выплачивали). Всегда нужно было идти и просить прибавки в явном виде.
знаю случай, когда человек попросил после интервью X денег в год, а ему дали X + Y. сказали, что он попросил ниже рыночной цены, а они заинтересованы в том, чтобы он у них работал долго, а не ушел через пару месяцев, потому что кто-то предложил больше. дали немного больше рыночной.
UFO just landed and posted this here
Тоже было однажды — я сидел на теплом ненапряжном месте, ждал визу и тут рекрутеры с позицией. Я им с порога назвал сумму почти вдвое превышающую зп по рынку, только чтобы отстали — а в итоге ушел туда работать
UFO just landed and posted this here
А в магазине когда цены повышаются — это не унизительно?
UFO just landed and posted this here
Пф…
Поэтому я и утверждаю, что нах… такого владельца идиота, пусть ищет себе рабов-студентов, если уж он мыслит в таких категориях, ну и конечно, удачи ему!
Любой бизнес строится на умении договариваться. Понятно, что должна быть прозрачная схема регулярного повышения зарплаты, но и такой вариант исключать не стоит.
В каких еще категориях? Просто если работник не приходит поговорить о зарплате — то его все устраивает. В моей карьере всегда так было — ни разу повышение существенное не происходило само по себе. Нужно было идти, разговаривать, аргументировать и договариваться.
Я вам сочувствую…
Если у вас всегда так было, это не значит, что так должно быть везде и у всех
Ни разу не видел и не слышал про контракты, где бы оговаривались условия СУЩЕСТВЕННОГО повышения зарплаты, если это не топ-менеджер с компенсацией, привязанной к результатам работы фирмы или крупного направления. Про повышение в пределах инфляции, разве что…
А при чем тут контракты? В контрактах как минимум должен быть прописан механизм повышения, а на сколько, это на усмотрение руководителя. Выше я написал, но почему-то меня никто не понимает, что руководитель — это не только тот, кто тупо выдает приказы, но и тот, кто думает не только о бизнесе, но и о людях, кто помогает ему этот бизнес развивать. Именно руководитель должен быть немного психологом, поощрять лучших сотрудников, мотивировать других на результаты. Если сотрудник проявляет себя, но руководство этого не видит или не хочет замечать, то какой смысл идти разговаривать, если тебя не ценят и не уважают? Просто подумайте на несколько шагов вперед о последствиях и мыслях с вашей стороны и стороны руководителя после того, как вы пообщаетесь о повышении, постарайтесь мыслить критически, будьте независимы, удачи!

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

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

С позиции работника можно уточнить, например, что нужно сделать, уметь и знать, чтобы получить повышение или рост зарплаты. Или например уточнить, что тут вам пришло приглашение на более выгодную зарплату(должность) и уточнить, что ближайший полгода-год вы точно не уйдете, что когда решите уходить — за три месяца(или сколько надо для первичного обучения замены) предупредите, что вам вообще нравится тут работать, но можно что-нибудь подумать на счет зарплаты(должности).
И вопрос по зарплате(должности) не подымать чаще чем раз в полгода, а лучше год. Если он не решился положительно — можете думать над тем чтобы искать новую работу, только предупредите руководство если начнете поиск и отработайте достаточный срок для подготовки замены.
Так если вы проводите переговоры не чаще раза в полгода, то это не попрошайничество, а периодическая оценка ваших рабочих качеств и соответствия оплаты за них. А если при этом четко скажете, что в случае решения поменять работу вы однозначно отработаете время для подготовки замены, то это не шантаж. Это нормальный ход работы.
У каждого руководителя есть определенный люфт в плане зарплат подчиненным, и тут вступает в силу вопрос — что ему проще, выбить вам зарплату побольше или нового человека найти. Если люфт по зарплате есть, то это значительно проще, чем искать другого сотрудника.
А если зарплату поднять не могут, значит у вас по крайней мере есть определенность. А это уже очень хорошо.
В идеальном мире конечно руководитель он все видит и все знает. А в реальном мире руководитель иногда замечает, а иногда нет. И если он этого не заметил — дайте ему шанс. Помогите ему исправить эту ошибку. Переговоры с руководителем о своей карьере это нормально!!! Однако делать это нужно аккуратно и деликатно. Чтобы это действительно не выглядело как шантаж или попрошайничество.)))
А вы не задумывались, что возможно у вас такая ситуация.

Именно потому я так и утверждаю, что считаю, что у меня такая ситуация

И если он этого не заметил — дайте ему шанс. Помогите ему исправить эту ошибку.

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

Стыдно и позорно после очередного повышения цен оказаться не в состоянии нормально обеспечить свою семью! Если зарплаты стало не хватать — СТЫДНО И ПОЗОРНО смотреть в глаза своей жене и своим детям!
Правильно, сотрудник должен требовать, а если требование не выполняется — посылать такого работодателя, потому как на словах они «индексация раз в год», «премии, надбавки по результатам», а по факту ровно то, что ожидаешь — установленная контрактом зарплата.
Илои просто заявление на сто, если руководитель начинает подлизываться и предлагать больше — решительно отвергать, подкуп недопустим.
попрошайничать стыдно и позорно

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

Поэтому чтобы не попрошайничать, лучше сменить работодателя.
По остальным вашим пунктам это вы работодателям втолкуйте
Если кандидат работает, то во время интервью ему ОБЯЗАТЕЛЬНО задается вопрос — сообщили ли вы текущему работодателю, что ищете новое место работы.
Если ответ — нет, то выясняю почему. Это ведь очень важный звоночек, это элемент нечестного отношения к текущему работодателю и нужно выяснить это ответная реакция на неправильное поведение руководства или низкая планка ответственности перед работодателем. Если на уточняющий вопрос, почему не сообщили, ответ — А я не обязан, не знаю, не хочу и т.п. То нет смысла брать такого сотрудника, он потом точно так же кинет вас.
Если есть адекватная обида со стороны кандидата на текущего работодателя, то проверяется это очень аккуратно и только косвенными методами. Само собой что в этом случае звонить напрямую нельзя. Если не получается так проверить, значит остается рисковать и верить на слово. Вопрос важности сотрудника и критичности ошибки при найме.
А если говорит, что предупреждал руководство, то это нормально — позвонить и уточнить. Многие фирмы предпочитают не увольнять человека сразу, а дать срок для поиска новой работы — в этом случае чем звонок плох? Конечно еще неплохо спросить кандидата, можно ли позвонить на его текущую работу. И если он предупреждал об уходе, а позвонить нежелательно — это еще одна хорошая зацепка узнать лучше кандидата.
UFO just landed and posted this here
UFO just landed and posted this here
Видел нечто подобное. Тетенька, 1С-ница, уходила с позиции ведущего разработчика конфигураций в очень крупном франчайзи на должность начальника участка ПО муниципального предприятия. Теряя в зарплате (в номинальной) в 2 раза, в фактической — почти в 3.
Сказала — хочет мужа и детей)
Коллега ушел на понижение с должности тим лида, в рядовые разрабы. Отвечал за бэк, там командовал тремя разрабами, но еще и всякие спорные вопросы с фронтом урегулировал.
Соответственно и зарплата ниже. Ему руководство мозг знатно выносило, он не выдержал и сбежал.
Ну в России пока не особо распространена причина отказа overskilled. На Западе бы вряд ли проканало…
Пфффф, никто даже не будет проверять на этот счет — наоборот порадуются, что классного спеца взяли задешево

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

Вероятно, дело как раз в «явном озвучивании причины».

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

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

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

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

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

Другими словами, нужно не просто говорить «ах, мне это не нужно, а нужно то и то», и рассчитывать, что «то и то» тебе дадут, а нужно прежде всего внутренне измениться, и действительно хотеть и мочь пойти туда, где есть вот это «то и то».

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

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

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

Поэтому в России предпочитают нанимать молодёжь с горящими глазами, готовые заниматься интересным делом за заниженную зарплату.


Ну и много эффективных менеджеров, не читавших классику (Брукса, например) и верящих, что одного сеньора можно заменить 2-3-5 джунами/миддлами.

Потому что у джуна гибкое мышление и если он не идиот, то вполне способен вытянуть проект даже без опыта.
А Опытный зажрался и считает, что ему должны выдавать зарплату только за факт совего существования. «Вы хотите чтобы я еще и работал? Тогда платите в два раза больше!»
UFO just landed and posted this here
А я не с позиции работодателя пишу. ;)
UFO just landed and posted this here
Скорее всего вопрос идет о мидах, но не джунах. Или же друнах первые 2 недели, а далее работают на уровне мидов и выше. А только джуны… есть исключения, но это не правило.
Просто вариант, когда выпускник ВУЗа — формально является джуном, но на самом деле уже имеет несколько лет опыта, и потому заслуженно претендует на нормальную зарплату и способен действительно вытянуть проект.
Говорил один преподаватель, что удовлетворительно — это очень высокая оценка, её еще нужно заслужить. Не каждый выпускник дотягивает даже до джуна. Есть и обратная сторона, есть один знакомый, так он, будучи еще в выпускном классе уже был на уровне выше мида (скилл со стороны мне сложно сказать), но в 16 лет он уже работал.
Не каждый выпускник дотягивает даже до джуна.
Около 80% (или даже 90%) выпускников до джуна не дотягивает, по той причине что раньше все поступали на юристов и финансистов, а теперь поступают «вайти-в-айти» надеясь что корочка им автоматически гарантирует сверхвысокую зарплату.
Как правило, не знаю как сейчас, но будучи на 3-4 курсе тот кто хочет войти, то уже работает. Опять случай, товарищ подсел на WoW от Близзард, почти выгнали. Он еле удержался. А потом обратился к одногруппнику, который на ВоВ забил ранее и работал — кто вам нужен. За 2 месяца подтянул Джаву и успешно начал свой труд еще на 4м курсе. А вот если ждать окончания ВУЗа и потом претендовать даже на джуна… то да, 90% — это еще много.
Обычно говорящие такое преподаватели сами не особенно до джунов дотягивают и считают своим долгом самоутведиться за счет студентов. И, что самое страшное, таких большинство. И не удивительно, что после ВУЗов выходят не джуны, а люди с дипломами.
А у вас, что опытный получает наравне с джуном?! И какая же у вас там текучка кадров?
джун… если он не идиот, то вполне способен вытянуть проект даже без опыта

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

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

Хелло ворлд безусловно дешевле заказать у джуна. Всё, мало-мальски более сложное, просить сделать юниора без надзора — самоубийство.

Будучи по факту джуном, я сделал вот такой проект с нуля, на самописном движке, в возрасте 20 лет:
www.youtube.com/watch?v=aeSOLJnw8p4
На видео там только сама сцена. Но за бортом там еще достаточно мощный редактор уровней, терминал управления с поддержкой плагинов и система синхронизации, позволяющая запускать сцену на кластере. Это с учетом того, что там вообще то скрипты, которые синхронизировать — та еще задачка.
Сделано всё удаленно и без надзора.
Если бы наняли сеньёра — проект скорее всего не состоялся бы, потому что врядл сеньеор согласился бы работать за 400 долларов.
Ну нужно же понимать, что это не как правило такие случаи.
Да ну. ВСе Джуна с горящими глазами(те, которые хотят быть прогерами) смогут вытянуть проект средней сложности.
Плюс рано или поздно работодатель встречает способных джунов и начинает думать, что проще найти таких джунов, чем платить тыщи сеньеору.
Поэтмоу, кстати, многие компании делающие не слишком сложный софт имеют постоянно открытые вакансии на тыщи позиций. Просто перебирают варианты, в надежде наткнуться на способного новичка.

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


А набросать проектик на коленке в своё удовольствие — так это и студенты делают на курсовых.

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

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

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

Ну, честно говоря, у HR свои взгляды на многие вещи.


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


Вот только, как и в любой сфере человеческой деятельности с широкой степенью охвата общества, и в этой сфере "люди всякие бывают"… :)


digore — а вот вы почему-то так и не ответили на мой вопрос насчёт 19-го пункта…

А вот что вы скажете, если кандидат, прямо идеально подходя по остальным пунктам, на вопрос из п.19 открытым текстом вежливо скажет всякое нелицеприятное, причём кратко, но объективно обоснует, почему.

Тут ведь нужно смотреть не только на то, ЧТО он скажет, но больше на то, КАК он это скажет. Нужно быть немножко психологом.
Не так давно девочка на этот вопрос ответила спокойно и рассудительно: потому что меня заставляли выходить в выходные и перерабатывать без оплаты сверхурочных. Зато когда она это говорила, ее губы задрожали. Не все из присутствовавших на собеседовании это заметили…

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

К примеру, вопросы и ответы взяты из головы быстрым сочинительством: Почему вы хотите уйти с текущей работы? Я выучил все, что мог у них выучить, достиг своего потолка, работодатель не меняет не то, что стэк, даже версию ПО и не считает это нужным. Технический долг копится, а мы продолжаем подкладывать костыли под Windows XP Embedded. Надеюсь, у вас это не так, и вы та компания, которая идет в ногу со временем?
Кем вы себя видите через 5 лет? (До этого вопроса надо было сделать ДЗ и узнать немного про компанию и оргструктуру, куда собеседуемся). Далее, в зависимости от предпочтений: 1) мне кажется, я бы смог приносить наибольшую пользу компании, значительно улучшив свои профессиональные навыки и получив должность (называем должность 1-2 позиции выше той, которой собеседуемся — техлид, тимлид, архитектор решений) через 3-4 года. Это позволило бы повысить уровень ответственности за принятие решений, а сами решения влияли бы не только на скорость сортировки, но и на архитектуру разрабатываемых мною решений. Б) Вариант менеджера: мне кажется, что через несколько лет я буду не настолько молод, чтобы иметь такую же работоспособность как у меня сейчас. Но с годами приходит опыт, и окончив (MBA/экономический/юридический факультет чего-нибудь) я бы смог сначала занять позицию менеджера команды, а впоследствии, может быть, получить должность менеджера продукта. Имея сильный достойный технический бэкграунд в вашей компании, я бы смог быть на одной ноге с разработчиками, а с полученным образованием, я бы смог смотреть на разрабатываемые продукты с точки зрения бизнеса — мы же хотим, чтобы бизнес был успешен, ведь так?
в целом красиво, но вот ответ номер 1 (и я это видел в реальной жизни) может опытному кандидату стоить позиции. как-то в MS на моей памяти не взяли человека с обоснованием «если при 15 годах опыта в индустрии и зоне ответственности, описанной в резюме, он не смог убедить руководство в необходимости сменить технлогию X на технологию Y, значит у него не очень все гладко с leadership, taking responsibility и прочими софт-скилс».
Учитывая, что профессию программиста выбирают в основном интроверты, весьма странно требовать с них «leadership, taking responsibility и прочие софт-скилс».
UFO just landed and posted this here
Потому что желание «вайти-в-айти» привело к тому, что выпускников ВУЗов с дипломом IT теперь больше, чем юристов и финансистов. А поскольку кадровички любят бабников и не любят задротов, то теперь у них появилась возможность брать с удовольствием на работу экстравертов, лихо отказывая интровертам, которым теперь всё труднее найти новую работу пробившись через кадровичек.
UFO just landed and posted this here
Очень часто первое собеседование именно с кадовичками, и они решают будет ли следующее собеседование уже с техниками или нет.
Поэтому интровертам стоит проучить умение «притвориться экстравертом». Даже если использовать это умение стОит дофига Очков Выносливости.
Есть даже пособие на эту тему, и не одно.
В западных компаниях эти самые софт-скиллз очень часто, если не более важные, то сравнимы с профессиональной точки зрения с техническими навыками. Никто не хочет работать с угрюмым немытым интровертом, с которым и парой слов не о чем перекинуться.
UFO just landed and posted this here
Правильней всего «продавать себя», пользуясь «глупыми» вопросами. То как отвечать, зависит от того, кто вас собеседует. Если это HR менеджер, то он оценивает психологию человека, его адекватность и его карьерный потенциал. Если это технический руководитель, то ему нужно оценить пригодность кандидата к конкретной работе. Если это просто типовой сотрудник, то, скорей всего, собеседование будет напоминать экзамен. Если это директор предприятия, ему нужно оценить перспективность кандидата, его стоимость и расходы на его содержание. Так что, всегда интересуйтесь, кто именно перед вами и попробуйте определить, какова сфера его ответственности.

Кем видеть себя через пять лет — это не совсем идиотский вопрос. Он слишком заезженный, и задается порой не в тему, отсюда и кажется глупым. Работодатель хочет оценить амбиции человека и его способность к саморазвитию без того, чтобы его гнать в эту сторону. Можно смело рассказать о ваших планах развиваться как профессионально, так и человечески, включая культурный уровень, достижения в хобби и т.п. Глупым ответом на этот вопрос будет ответ в духе «в вашей компании я стану руководителем» (или иные карьерные изменения). Еще вообще ничего не известно о компании, о работе, о принципах и правилах, а кандидат уже губу раскатывает.
Я не вижу связи между тем, зачем я к ним пришел на собеседование и почему именно к ним и тем, как я веду себя под давлением/влиянием других людей. Если бы я услышал от программиста, который пришел на собеседование, что он пришел не ради денег или интереса к этой сфере/конкретно того, над чем он будет работать, а ради того, чтобы внести в мою компанию какую-то пользу, я бы его тут-же отправил домой. Потому что это лицемерие чистой воды и такому человеку я бы не смог доверять. И никакого проявления ума в том, чтобы говорить девушке о том, что она красива, но при этом не считать её таковой я тоже не вижу. Если вы пытаетесь таким способом переспать с девушкой, то вы таким способом поднимаете свою самооценку, но тут противоречие. Ведь это значит, что те, кого вы сами считаете красивыми, вам не дают, что должно понижать вашу самооценку. И вы не очень-то умны, если этого противоречия не понимаете.
Я хожу на работу не ради денег в первую очередь. Зарплата у меня хорошая, но мне предлагали и предлагают зарплату на много выше. Но я их всем посилаю куда по дальше, так как у меня сейчас ооочень интересная работа и коллектив.

Зарплата конечно важна, но стоит на втором месте.
Что-то мне очень слабо верится в правдивость ваших слов. Во-первых, «посылаю куда подальше», выглядит как выпендреж, а люди, которым предлагают намного больше, обычно не выпендриваются. Во-вторых, когда тебе предлагают зарплату намного больше, не посылают, а пытаются понять перспективы и круг задач на новой позиции. Очень часто бывает, что с очень интересной работы можно перейти на еще более интересную, где «предлагают зарплату на много выше».
В остальном, я согласен, что бывает интересная работа или сфера, в которой хочется работать, даже если получаешь меньше. Этот случай я указал в своём комментарии выше.
Эм… Ну понятное дело я не шлю всех сразу. Это как бы подразумевается, что я навожу справки о компании и даже прохожу интервью. Я думал, что это итак очевидно…
Вам зарплату предлагают до прохождения интервью?
Я сам им говорю мои ожидания. Если они в принципе не готовы, то и разговора не будет. Адекватные компании сами спрашивают ожидания.
UFO just landed and posted this here
Супер, всё по делу.
Первые пункты, казалось бы, очевидны, но даже их не все соблюдают, увы.

> ведь скорость овладения новыми знаниями важнее, чем текущие знания кандидата.
Количество интервьюеров, которые это понимают, ускользающе мало :)


> Спросите его цели на ближайшие 1-3 года. Знаю, что многие кандидаты не любят этот вопрос и не знают, что ответить
По моему опыту, если спросить «кем вы себя видите в компании через …» то это ставит в ступор и потому, что это клише, и потому, что речь идёт о статичной цели в довольно отдалённом будущем (в IT даже 1 год это уже срок). Дать хороший ответ (а не продолжить игру в клише) на это мало кто может.


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

Вопрос в ответ — где видит себя компания через 1-3 года. Если они развивают авиатранспорт, а человек будет рассказывать, что видит себя капитаном судна… то о каких вариантах можно говорить. Просто выдается стандартное клише, не более.
UFO just landed and posted this here
Если был человек с юмором.
ну никто не говорит про цели 1-3 года в этой компании, а вообще цели в жизни. поговорить о более общих вещах, куда человек хочет двигаться, может он сейчас английский учит усиленно и через 2 года уедет. такой вопрос и soft skills поможет узнать. самое главное не давить и не требовать ответа

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


Вопрос в том, сколько он пользы принесёт за эти два года.

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


У меня есть прекрасный, но неприличный ответ на этот вопрос. Пару раз я его применил. Эффект потрясающ. Главное — сохранять крайне серьезные щи. Точнее, его можно применять, если HR не употребил словосочетание «в компании». «Кем вы себя видите через пять лет?» — вот тут-то и можно подсекать.
Знакомый грозился сказать на такой вопрос: «Руководителем вашей компании, уволившим вас за такие вопросы»
Если интересно, в личку могу ответить, а то забанят за такое)
Предположу, что что-то вроде «отцом ваших детей», но несколько менее корректное?
Нет. Ладно, приведу в том варианте, в котором мне случалось его озвучивать в паре мелких компаний. Надо сделать доверительно-серьезные щи, и пониженным голосом сообщить — «Вы знаете, я только что начал принимать препараты для… увеличения. Через пять лет я вижу себя обладателем огромного достоинства...».

Может, конечно, меня за такой юмор ниже пояса и заминусят, но я искренне считаю, что это один из самых идиотских вопросов, которые могут только быть на собеседовании, вместе с «почему наша компания должна нанять именно вас?»
UFO just landed and posted this here
Тут такая дилемма:
— если претендент через пять лет видит себя начальником отдела, то начальнику отдела проводящему собеседование это может не понравиться;
— если претендент не говорит о желании повышения, то это может не понравиться кадровичке.
UFO just landed and posted this here
Самый эпичный вопрос на собеседовании это «почему вы должны нанять именно вас?». После этого всегда хочется встать и уйти.
Если бы мне задали такой вопрос, то я бы ответил вроде: «Потому что я помогу решить такую-то важную для вас проблему»
Это в случае, если вы очень-очень хотите работать в этой компании.
А после этого спросить: «А почему я должен выбрать именно вашу компанию"».
А интервьюер должен ответить: «А потому что мы будем платить тебе в полтора раза больше, чем в любой другой компании на этой позиции!». А после этого должен грохнуть свадебный марш Мендельсона
UFO just landed and posted this here
Не зная проблемы, говорить, что она будет решена… Кто задает такой вопрос ЭйчАр или руководитель/ответственный за тот участок? Если первый вариант — то ответ на вопрос, просто играешь на эмоциях. А во втором — нужны конкретные ответы, а не воду лить.

Хотя вспоминается «мегапихарь»… так сказать, нашлись люди в реале…

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

UFO just landed and posted this here
Я могу понять этот вопрос для людей, которые работают в продажах или же являются менеджерами. Продажники должны убедить ЭйЧара станцевать стриптиз, а потом еще и продать им же их одежду по цене раритета или коллекционки. Да, спецам такие навыки тоже полезны, но не в такой степени… если специалист отличный продажник, то и работать он будет по такому же принципу… красиво продавать то, чего нет. А будут работать другие. Но часто срабатывает человеческий фактор… и спецы остаются за бортом, потому что не продали «себя».
Потому что кадровики проводят собеседования по шаблону одинаковому для всех независимо от специальности. А ещё некоторые начальники IT тупо копируют манеру проводить собеседование кадровиков.
UFO just landed and posted this here
UFO just landed and posted this here
О да, это как вопросы в школе «а зачем нам понадобится эта математика?».
Правильный ответ, ИМХО, всегда один: «не понадобится, она нужна только умным детям».

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

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

Ну после собеседования послушайте HR'ов.
Часто «опоздания и бодуны» можно вычислить вопросом: «Почему уволились с предыдущего места работы?». Обмануть опытного собеседующего в ответе на этот вопрос очень сложно. А на 100% от такого всё равно не защититься. Потерять контроль над собой может любой человек по личным причинам или семейным обстоятельствам (и такое случалось).
после одного неудачного опыта (человек очень аргументировано описал почему уходил с каждого из предыдущих мест работ, которых за два года было 6 или 7 что ли, его взяли, а оказался любителем опоздать или припереться с бодуна) звоним в предыдущие места работы и просим рекомендации.
А вы точно уверены, что сможете найти человека способного дать отзыв о сотруднике с места, где он работал больше десяти лет назад?
естественно не во все предыдущие места :)
а вот если в резюме перерыв на 10 лет (обычно пишут — был свой бизнес) то тут можно попросить рекомендации клиентов. но всё равно на кандидата уже косишься, при прочих равных выберешь другого.
Тогда уж, сразу справку о несудимости?
звоним в предыдущие места работы и просим рекомендации.

Надеюсь, до собеседования.

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

Бывают ещё начальники не любящие «предателей»:
— человек, который ушёл от него сам получит максимально гадкую характеристику, как «предатель»;
— человек, которого он УВОЛИЛ, наоборот получит от него хорошую характеристику, как «не предатель».
Обмануть опытного собеседующего в ответе на этот вопрос очень сложно.

Но и негатив про предыдущего работодателя говорить не принято, так что абсолютно искреннего разговора не получится.
Основной посыл 21 пункта — составить собственное независимое мнение о кандидате на собеседовании, не принимать на веру хороших отзывов и не давать авансов кандидату.
Если кто-то мне скажет, что кандидат раздолбай, я просто не стану звать его на очную встречу.
Тогда может подправить? «относиться к рекомендациям очень критично.» В сборе рекомендаций до собеседования все равно есть смысл — если скажут что откровенный раздолбай или сильно конфликтен, то можно сразу не приглашать. Но с другой стороны в процессе интервью информацию из рекомендаций можно использовать, уточнить у кандидата непонятные вещи, узнать мнение кандидата по известному тебе вопросу и тому подобное. Ну и рекомендация это оценка человека, пусть того кто знает или работал с кандидатом, но это всего лишь оценка человека.
Хотя, конечно, как совет новичку в качестве интервьюера — согласен. Сколько раз было — приходит по рекомендации вроде ничего, а по факту…
Я принимаю инженеров на производственное предприятие — головоломки даю не часто, но бывает))) А вот что даю всегда — так это задачи по математике и физике за 4-8 класс до 3 действий.
А то когда инженер не знает формулу площади круга, как решать задачи на трудоемкость и тому подобное, то какой он тогда инженер?
К айти конечно только косвенно относится, но по опыту могу сказать, что люди которые решают — практически все толковые. За остальных сказать сложно, так как не брал))) Но многие из них приходили с рекомендациями, а потом ни одной задачи не решали)))
Если мне на собеседовании скажут, что опоздания недопустимы, я тут же встану и уйду.
Всё сильно зависит от занимаемой должности в том числе. В каких-то случаях(совещания, встречи с заказчиками или коллегами из других городов) они в любом случае недопустимы, в каких-то могут быть исключения. А вообще, желательно работать без фиксированного рабочего дня, тогда опозданий не может быть в принципе)
За всё время проведения собеседований я понял, что самое главное — определить уровень IQ собеседника, то есть его способность соображать, осваивать новые знания и развиваться. Каким бы крутым не был кандидат по текущим знаниям, через 2-5 лет им будет грош цена. Но не давать же кандидату тест на IQ в самом деле (см. правило про уважение к кандидату). Поэтому часть вопросов сводится к небольшим практическим задачкам, требующим размышления и математических расчётов. Если человек живо мыслит, можно закрыть глаза даже на очень большие дыры в его знаниях при условии его желания развиваться.
40 минут на решение задачек, 25 минут на разбор. А потом 1,5 часа обсуждения резюме и прочее на инглише. Через 3 дня — полчаса общение с центральным офисом по скайпу. Как итог — взяли знакомого ЭйчАр… который проработал 2 месяца. Все потуги и трата времени — просто для фона. Кто бы такие варианты еще убрал — было бы очень отлично.
Откуда взялись 40 и 25 минут. Не провожу собеседований дольше 30 минут, в среднем 10-15 минут хватает, чтобы понять, подходит ли кандидат.
40 минут — решал задачки, потом объяснял логику, может не 25, а 20, лет 6 назад это было, точно по минутам не скажу.

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


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

А какой IQ был бы для вас достаточным, если бы вы могли проигнорировать правило 1? Какой разрыв IQ кандидатов был бы существенным, чтобы предпочесть одного другому?
Я тоже часто провожу собеседования и согласен со всеми пунктами!
Разве что вместо целей на 1-3 года я спрашиваю более конкретны вещи, например если это программист, то собирается ли он дальше развиваться в узкой области (фронт-энд, например) или хочет быть более универсальным, хочет ли попробовать руководить коллективом, изучить другой язык, и т. д. Из ответов можно получить полезную информацию о кандидате.
UFO just landed and posted this here
Игнорирование пунктео 7-10 прям раздражает.
Проходил на днях собеседование.
Профильные вопросы спрашивали так:
"- Представление о шейдерах в UE имеешь?
-Конечно. Писал свои движки, поэтому с шейдерами на ты. И в самом UE тоже немного ковырялся."
КОНЕЦ ВОПРОСА.
В таком духе по всем профильным вопросам.
«Знаешь?
Да.
ОК.»

А в конце началось: «Как проверить что односвязный список не зациклен?»
Чего?? За 10+ лет в геймдеве я ни разу не использовал односвязные списки. Я не мыслю односвязными списками. Зачем вам это?

Еще замечательный вопрос:
"- Как создать экземпляр класса в фиксированной области памяти?
— Эээ. Перекрыть new?
— Почти. Есть стоковое решение."
WAAAT? Зачем? Зачем это в геймдеве?! Я могу представить свой менеджер памяти, которому понадобится такой функционал. Я могу представить ситуацию при работе с драйверами, когда нужно создать объект в фиксированной памяти. И то, я бы 10 раз подумал прежде чем использовать такой инструмент. Но геймдев? Особенно при работе с таким движком как UE, в котором использовать new в любом виде — прямой путь к проблемам…

Ребята еще не ответили, но после такого собеседования, таких вопросов — работать с ними уже не хочется.
Простите за оффтом, бомбануло. :(
Я хотел уточнить про такие вопросы. Я уже пару раз сталкивался с ситуацией, когда человек приходит на позицию С++ разработчика с уклоном в алгоритмику. Читаешь резюме — все отлично, интересные задачи, успешные проекты. А потом задаешь примитивный вопрос типа вашего про односвязный список, и оказывается, что собственно писать код для решения примитивной задачи человек и не умеет, потому что привык из готовых кирпичей собирать решение, не заботясь особо ни о производительности, ни о качестве кода.

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

У нас, например, довольно много низкоуровневого С++ кода, и не умеющий с ним работать человек нас автоматически не устраивает. С моей точки зрения, джун должен уметь решать как минумум простые задачи, его этому в универе на лабах учили. Мы его уже в свою очередь научим, как из простых решений собрать большие, как думать в контексте системы и так далее. Учить программированию все же не наша задача, а собирание решения из готовых деталек — это не программирование сложной системы со всеми ее низкоуровневыми нюансами.
Ну так и надо задавать вопросы на алгоритмы, профильные.
Я не решил сходу задачу на проверку списка, потому что я не работал с односвязными списками, и построить мышление быстро я на это не могу.
Если вдруг такая задача возникнет, я за 5 минут её не решу сходу. Я буду думать пол дня над вариантами. Потому что незнакомая тема(односвязные списки), потому что не сталкивался раньше.
Этот вопрос не на умение придумывать алгоритмы, это вопрос на «ты уже встречал этот вопрос на собеседовании?»
Полностью солидарен. Причем большинство таких задач решаются одинаково:
1. Берем второй указатель
2. ??????
3. PROFIT!!!
Если знаешь пункт 1, дальше как раз за время, отведенное на задачу, можно найти решение для большинства самых хитровыдуманных задач на односвязные списки. Если не знаешь — шансов очень мало.
Соискатель: Берем второй указатель…
Собеседующий: Брать второй указатель нельзя.
Соискатель: WAT?
=)
Ахаха, тогда в зависимости от задачи подбираем более удобную структуру данных и перегоням в нее)
Ну и в некоторых задачах прекрасно работает предварительный подход (если гарантируется отсутствие цикла).
Работая больше десяти лет разработчком алгоритмов и повидав разных людей, я много размышлял на тему «обучения в гугле», популярный ныне подход, когда зачем учить, если можно нагуглить. Мой опыт показывает, что если задача выходит за рамки применения стандартной библиотеки, то далеко не всегда можно нагуглить хоть что-то. Часто задачи приходится действительно решать, читать статьи, проводить параллели. Этот процесс невероятно затягивается, если вообще не становится невозможным, если человек не знаком с областью и не обладает системой знаний, как общих, так и узкоспециализированных.

Так вот, с моей точки зрения, в контексте разработки алгоритмов в конкретной компании, оба вопроса — и про списки и про размещение в памяти — были бы уместны. Первый покажет ваши знания структур данных, без хорошего понимания которых в алгоритмах делать нечего. Второй покажет, что вы имеете представление о методах оптимизации размещения объектов в памяти. Не теоретически, а практически. Причем, задачу даже не обязательно решить, я бы просто смотрел, как вы ее решаете, этого более чем достаточно. Опять же, уместны только в том случае, если в работе этим приходится заниматься. Но при разработке алгоритмики игры вам разве не прийдется с этим столкнуться? Неужели движок UE все, ну вот прямо все сделает за вас?
UFO just landed and posted this here
при разработке алгоритмики игры
Ну скажем как пример: если ваша задача делать интернет-странички в C#/MVC

А если ваша задача, например, свести бухгалтерию на калькуляторе?
UFO just landed and posted this here
Я писал свои движки. С нуля. Более 10 лет я этим жил и зарабатывал.
За это время я использовал односвязные списки ровно 0 раз.

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

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


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

Поэтому я и уточнил, что речь не об абстрактной работе, а о вакансии на UE программиста.


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

Там есть вторая часть высказывания. Про 0 раз.
Я считаю этот вопрос идиотским и не уместным.
Потому что он не про «стандартыне структуры данных». Он про «решите ка мне быстренько задачку, которая в нашей области не встречается, на структуре данных, которая используется чуть реже чем никогда, за ближайшие 5 минут, пока мы ждём»
Ну собственно, на собеседовании вы и показали, что у вас это было 0 раз и вы не знаете основ Computer Science, хотя работаете в отрасли 10+ лет.

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

В моей практике ковыряния в недрах кода встречалось такое, что Кнут и в страшном сне представить не мог. Так что если это вам не встречалось, то это еще не значит, что это не нужно на работе, на которую вы хотет попасть.
На работе для решения задачи гораздо больше времени, можно гуглить, пользоваться отладчиком, писать свои варианты и проверять их в работе.
Я не большой фанат TDD, но если все равно звучит вопрос о составлении тест-кейсов, то почему бы с них не начать? Для этого вряд ли потребуется гугл или отладчик. Из них достаточно легко перейти к вопросу о граничных случаях и особенностях структуры. И обоснование рождается само собой.
Ну вот не работает кейс, ошибка какая-то, что дальше?
Использование new это ошибка. В UE свой менеджер памяти с GC, что-то выделять в обход него — большая ошибка, которая аукнется очень быстро.

Я не могу удержаться, когда вы второй раз на этом акцентируете внимание. Расскажите, пожалуйста, уже нам чем это аукнется? Опережая ответ: зачем тогда вообще писать на C++, когда все доступно на блюпринтах?
Знания структур данных крайне важны. Как и (хотя бы) основы алгоритмов работы с ними. Но подавляющее большинство задач на собеседованиях именно с односвязными списками скорее на смекалку + опыт собеседований, чем на реальные знания.
Мне очень сложно провести границу между вопросом на знание и понимание алгоритмов и структур данных и подавляющим большинством задач на собеседованиях. Расскажу, пожалуй, историю из жизни.

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

Чуть позже я проходил собеседование в другой компании, из Долины. Там задачи на алгоритмы были действительно сложные, а рабочие задачи, о которых рассказали инженеры, были совершенно с алгоритмами не связаны. Ну разве что одна из них, мне ее и дали на собеседовании, я ее решил за час с маленькой подсказкой. Зачем им были нужны крутые алгоритмисты и такое сложное собеседование — я так и не понял, и в этом случае с вами согласен, такая форма собеседования там была, скорее всего, не нужна.

Как соискатель вы, возможно, не знаете, зачем задают те или иные вопросы. То что кажется вам совершенно излишним, может оказаться ежедневной реальностью работы.
я проработал много лет в майкрософт и гугл, проинтервьюировал множество людей и могу рассказать вам, зачем нужно на интервью решать задачки на алгоритмы. причина номер один в том, что за время интервью нет нормального способа определить, будет ли кандидат вам полезен или нет. уволить человека из компании такого уровня в США не просто (если нет сокращений и если он ходит на работу и что-то как-то делает) — может занять месяцы, если не годы. все это время позиция занята и вы не можете его заменить хорошим. если кандидат может решать сложные алгоритмические задачи, это одно уже говорит о том, что он способен сесть за книжки/литкод/хакерранг и за какое-то разумное время набить руку на решение сложных алгоритмических задач — то есть, у кандидата есть сила воли, и кандидат обучаем. это все еще не гарантия, что он будет полезен, но это уже хоть какой-то сигнал. ну и причина номер два — даже если большую часть своего рабочего времени вы будете заниматься задачами, не требующими применения каких-то умных алгоритмов, время от времени будут появляться задачи, где-таки надо будет делать что-то по-умному. и если человек не способен придумать эффективное решение, в продакшн пойдет какой-нибудь условный бабл-сорт. при попадании в продашкн критической массы таких бабл-сортов продукт начнет проигрывать конкурентам.

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

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

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

А касаемо списков — это тот минимальный уровень владения алгоритмами, который реально нужен почти в каждом проекте. Деревья у меня почти не используются (кроме реализаций стандартных библиотек), но списки практически повсеместно. И списки самые разные. Умение писать список и работать с ним, на настоящий момент времени, — это основной навык после умения писать циклы и работать с граничными условиями. Редко в каком коде не используется динамическая память, так что объекты, так или иначе, надо группировать и как-то проходить по ним. Минимум — это связывать их в список.
За все двадцать лет ни разу не строил вручную списки! В случае надобности хватало стандартного TList.
Так что, необходимость знания алгоритмов работы со списками зависит от задач.
идея такого вопроса на интервью — не проверить, знаете ли вы алгоритм, а посмотреть, как вы придете к решению, использующему хороший алгоритм. далеко не всегда алгоритм можно нагуглить. бывает, что его надо придумать. если вы моментально выдаете решение на алгоритмическую задачу, значит,
с огромной вероятностью решение вы знали. интервьюера интересует не «знаете или нет», а «как вы до этого решения дошли».
Часто задачи приходится действительно решать, читать статьи, проводить параллели.

Вот это и имеется в виду, когда говорят про "найти в гугле". То есть где-то прочитать дополнительный материал. Это не означает "найти готовое решение".

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

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

Умение гуглить, т.е. быстро получать факты и подсказки очень условно соотносится с системой знаний. Факты — это не знания. Знания — это книжка, или курс, это дни чтения. Если мне нужен специалист по алгоритмам, я буду ожидать от него умение оперировать базовыми понятиями без помощи гугла. Если мне будет нужен спец по нейронным сетям, то на базовые вопросы он тоже должен будет отвечать без помощи гугла, пусть даже без терминов, пусть своими словами.

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

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

Это все менее касается разработчиков, которые больше работают с приклаными библиотеками, где нюансов больше чем принципов, а нюансы действительно сложно запомнить в таких количествах, и тут уж гугл в помощь. Но чем позиция ближе к Computer Science, тем больше нужно держать в голове, просто потому что CS — это логичная система знаний, а не необъятная совокупность фактов.
это гипербола, если что

Я с учетом этого написал)


Позиция алгоритмиста подразумевает

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


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

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


Если простую задачу он сможет решить

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


Если же в голове каша

Ну вот опять. Вы приравниваете "загуглить незнакомый термин" к "в голове каша". Рассматриваете 2 взаимоисключающих варианта. Если человек что-то не знает, это никак не означает, что у него в голове каша.


это логичная система знаний, а не необъятная совокупность фактов

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

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

Если человек перевел факты в систему знаний до собеседования, то вы на собеседовании могли в этом убедиться. Если же нет, то вам надо верить ему на слово, что он сможет это делать после собеседования. Скажем, незнание сигнатуры какой-то функции или синтаксиса использования делегатов — это ерунда и гуглится. Неумение найти эффективный алгоритм для решения задачи, которая для решения требовала знание о существовании делегатов (колбэков) — уже не факт, что нагуглится. Может оказаться, что «параллелей», как вы это назвали, проводить надо будет слишком много, чтобы хоть что-то похожее нагуглить.

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

Он мог не перевести к моменту вопроса конкретно тот факт, о котором его спросили.


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

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


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

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


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

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

Дело в том, что если человек регулярно «читает статьи и проводит параллели», у него накапливается приличный слой относительно систематизированных знаний. Есть риск, что задача, которую ему дали на интервью, окажется далекой от всего, что человек знал. Но обычно интервью состоит из нескольких раундов. Конкретно у нас — это 5 разных секций. В предыдущем месте было 4-6. Если во всех пяти секциях человеку надо гуглить, то что-то не так. Или ему прям очень не повезло, или недостаточно он читал статей.
Не, ну если всё завалил, то конечно. Просто я немного не о том.
Я писал об обучении в гугле в контексте позиции алгоритмиста, подразумевающей наличие знаний, которые указывают вам направление, куда решать и что гуглить. Если мне нужен именно алгоритмист, что я буду делать? Правильно, буду проверять знание и умение оперировать хотя бы базовыми понятиями, дам несложную задачку, чтобы человек ее решал, а не решил. Даже если кандидат знает заранее решение задачи, это не означает, что он сможет полноценно ее проанализировать на собеседовании.

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

Если человек делал это до собеседования, то он сможет ответить на вопросы. Даже в стиле «о, я помню было такое, напомните мне вот это, а я додумаю дальше». Это вполне приемлемо.

Вопрос только во времени и иногда в желании, а не в принципиальной невозможности.

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

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

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

А можете какой-нибудь пример привести? Просто для интереса.

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

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

Не смотря на многолетний разнообразный опыт, данный товарищ с кейсом на дизайн не справился вообще в принципе, а при построении алгоритма не смог внятно построить тесты и запутался в std, причем ладно бы в сигнатурах библиотеки, я и сам, бывает, в них путаюсь, но он не знал и концепций. Оказалось, что на практике он не дружит ни с UML, ни с С++11, ни с оптимизацией кода. Интересно, что этот кандидат прошел первый раунд собеседования, который проводил не по-наслышке знакомый с технологиями человек, но не разработчик, а продакт менеджер. И пока мы во время второго раунда спрашивали о технологиях, он очень бойко отвечал, но как только дело дошло до задачи, так сразу и оказалось, что все грустно.
Что же он делал все эти годы, если знал технологии, но не знал как их применять? Тем более не «попрыгунчик»…
> опыт показывает, что если задача выходит за рамки применения стандартной библиотеки, то далеко не всегда можно нагуглить хоть что-то

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

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

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

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

Конечно, в задаче генерации случайной последовательности редкая, но встречается.

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

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

Вы мне напомнили собеседование в Joom:


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

Занавес.

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

Неверно. После выяснил, что товарищ собеседующий знал алгоритм с O(nlogN) и именно известный ему и допытывал.

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

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

знал алгоритм с O(nlogN)

что-то я не вижу, где написано, что дерево сбалансировано.

лучше чем за O(1) по времени вполне может оказаться O(1) по памяти в каких-то условиях. лезть в бутылку на интервью не стоит. лучше уточнить требования и понять, что именно вам требуется оптимизировать.
UFO just landed and posted this here
Подозреваю, что заранее. Каждый раз, когда добавляется узел, мы знаем на какую глубину он ставится, остается сравнить с прошлой глубиной. Разумеется, если максимальная глубина уже посчитана, то ее легко вернуть за О(1)
Однако, модифицировать существующую структуру не всегда разумно, ибо может требовать повышенного внимания к деталям и усложнять поддержку. В некоторых случаях может быть разумно уметь посчитать что-то на существующей структуре без модификации существующей кодовой базы.
А ваше модифицированное дерево поддерживает удаление элементов? Потому как если поддерживает, одной переменной, в которой хранится максимальная глубина, уже не хватит. Придется заводить что-то посложнее — типа прайорити кью, где уже (в зависимости от реализации) не все операции могут оказаться О(1).
Остались нераскрытыми вопросы:
1. План собеседования? Как Вы выстраиваете встречу? Сколько она длится?
Ну например:
15 минут — рассказ о проекте
5 минут — уточняющие вопросы кандидата
30 минут — тест
15 мин — обсуждение результатов теста

2. Что Вы читали / смотрели по теме? Что действительно полезным оказалось?
План собеседования строится в зависимости от позиции, на которую пришел кандидат. Например, собеседование для ведущих спецов и руководителей начинается с рассказа о нас и наших проектах, чтобы предвосхитить большое количество вопросов у кандидата. На собеседовании начинающих — рассказ о компании после вопросов кандидату.
Обычно собеседование длится не более часа, этого вполне достаточно чтобы сформировалось мнение о кандидате.
По пункту 5: еще отлично если такой залипающий хмыканьем и мимикой на что-то реагирует. Толи на ответ кандидата, то ли то что увидел на экране. Отвлекает и раздражает.
ИМХО самый ужасный пункт номер 8.
Собеседующие просят сделать тестовое задание, получают, хвалят твой код, а после просят расшифровать значение каждой буквы SOLID. Вот с таких собеседований хочется бежать.
А что на счет обсуждения самого щекотливого вопроса для каждой из сторон?

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

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


Спросите, почему он ищет новую работу.

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

Из своего опыта добавлю:
  • если планирую давать задачу на собеседовании, уточняю заранее согласен ли кандидат.
  • всегда начинаю собеседование со 'small talk': «спрашиваю как погода/добрался/дела/и т.д.». Возможно кандидат мыслями ещё на работе или в своих делах, нужно дать возможность расслабиться.
  • во время выполнения задачи можно гуглить, я считаю что иначе факт невыполнения задачи показывает не совсем то, что нужно.
Дополнение. Если ощущаете, что кандидат технически подкован, не останавливайтесь на этом уровне, а спросите его о том, какие меры он принимает для борьбы со сложностью и что он будет делать с унаследованным кодом. Есть программисты, кто все выучил наизусть, блестяще разбирается в каких-то деталях, но результат, какой они получают, соответствует только их реальному опыту как кодировщику, умеющему писать код по заданию руководителя. Также есть специалисты, кто привык к идеальньму коду, но не смогут нормально работать с реальным кодом обычного качества, считая, что у организации есть деньги на полную переделку и наведение лоска.

Технически-знающий детали специалист может вызвать ошибочное представление о себе как о кандидате высокого уровня. И получаем «сеньоров» с опытом работы в 1-2 года.

Большая часть новичков не сможет адекватно держать сложный проект в рабочем состоянии. Можно наизусть знать фреймворк, библиотеку, разбираться в тонкостях языка, в паттернах, но создавать код, живущий только одну версию, до первых модицикаций. Дальше все скатывается в тягую неповоротную смесь кода, какую сложно модицифировать и развивать. Особенно актуально для продуктовых компаний.
Сейчас полно областей, где средний возраст технологий исчисляется годами — откуда там взяться 10 годам опыта?
Откуда взяться опыта у человека, кто только вчера научился писать циклы? Умение проектировать и писать код, которому жить и жить, переживать изменения, вплоть до полной переделки, без потерь и потрясений потребителей этого кода, дается только с опытом участия во многих проектах самой разной направленности, с самыми разными технологиями, как с самыми свежими, так и с теми, которым десятки лет. В умении запоминать библиотечные функции и стандартные приемы работы с фреймворками нет ничего выдающегося — это простая зубрежка или природная хорошая память. А опыт писать надежный и изменяемый код набирается годами граблей, бессонными ночами, сотнями часов в отладчиках, сотнями часов раздумий в поиске решений в нетривиальных положениях.

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

И еще, про 10 лет в моем тексте упоминания нет.
Речь не про 10 лет опыта разработки на PHP 7, а про 10 лет опыта как такового. Просто за 1-2 года во скольких крупных проектах от начала до конца такой «сеньор» успел поучаствовать? В 1? В 2? Ну максимум в 3 и то не факт, что во всех стадиях жизненного цикла проекта. А интересен опыт от формирования ТЗ и до подписания контракта на сопровождение и обновление проекта после его приемки заказчиком.
И если меня спросят, участвовал ли я в провальных проектах за много-много миллионов денег, то у меня есть о чем рассказать. ИЧХ, я, хоть и не менеджер, теперь проблемные проекты вижу сильно заранее)
UFO just landed and posted this here
HR ещё бывают как пофигистки, так и те которые пытаются показать свою крутизну.

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

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

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

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

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

А он должен как линуксоид веган об этом всем рассказывать по своей инициативе, или вы его об этом спросите? Т.е. каким образом это выяснится?
У нас бывало и так, что эти вещи (политические взгляды) выяснились спустя значительное время, полгода, год… А чтобы в койку лезли — за 6 или 7 мест работы был только 1 коллектив, в котором практиковался вопрос «а с кем ты спал в эти выходные». Правда, это выяснилось не на собеседовании, а на испытательном сроке.
был только 1 коллектив, в котором практиковался вопрос «а с кем ты спал в эти выходные».


Простите, но я немножечко ох.. удивился. Это что, реально спрашивали???
Да. Там работали люди, так сказать, э, простые, и молодые к тому же. В общем, коллектив такой. А еще там коммерческий директор временами бил подчиненных ему начальников отделов, за что регулярно платил штраф (депремировался) на круглую сумму.
Это в какой стране вы работаете? *в крайнем офигени*
Это было в самом центре Екатеринбурга в дорогом офиснике, в крупной компании (ЗАО), с исключительной деловой репутацией (ни 1 проигранного иска), и т.п. и т.д.
Сейчас я работаю в другой компании, недалеко от меня наш колл-центр, коридор у нас общий, а работает там сплошь молодые люди — в общем, общение у них тоже будь здоров.
Дичь какая-то, прости господи. Я б послал за такие вопросы, какое ваше дело с кем. А на драчуна никто заяву не накатал? И в ответку не звезданул?? Ну и коллектив, честно говоря…
Пострадавшим полагалась половина суммы депремирования, в качестве моральной компенсации.
Блин, ну я, конечно не знаю, что там за суммы были, да и не мое это дело в общем… но быть битым за свои деньги… хз. Я бы чисто на рефлексах втащил — у меня была суровая юность :)
Ну это у вас рефлексы, а меня моя юность научила быстро и далеко бегать. У меня худощавое и не очень спортивное телосложение, очки и т.п. Что взять с бывшего игромана? Бегать умею и то хорошо)
Так это… я тоже не Шварценеггер :) и «самый лучший прием карате» применять приходилось… ну просто блин, я не выношу, когда начинают в направлении меня руками махать, ответку — а вот потом можно и бежать :)
Не понимаю, как это может выясниться на собеседовании, если не прийти, размахивая флагом?
Во-первых, спасибо автору. Хорошая статья, что-то для себя отметил и обязательно буду использовать.
Прошел нормальное количество собеседований, сам некоторое количество провёл сам и хочется добавить свои 5 копеек.

Мне кажется не хватает такого пункта, как наведение контактов. Часто бывает так, что кандидат волнуется, его трясёт, переживает. Представьте какого когда тебе 38 лет, а тебя собеседует пацан 23-х лет, да еще и глушит? Надо сразу настроить кандидата на благоприятную атмосферу (идею за 'smaltalk' лайк), расположить к себе человека, чтобы он психологически настроился. Да, со всеми бывает когда тебе очень нужна эта работа, но психологически тебя давят и ты не можешь уже выдать тот результат, который нужен, а ты понимаешь что ты способен на большее. Даже если человек чего-то не помнит, можно подтолкнуть его к правильному ответу, потому что информация имеет свойство вылетать из головы.

Мой личный опыт, когда я проходил собеседование и переезжал в Москву (конец апреля 2018).

2 недели, не включая выходные, каждый день по 4 собеседования.
Итого 40 компаний. Вакансия: Full-stack developer / Spark developer / Java developer

Прохождение собеседований
Руководитель разработки
  • Количество — 16
  • Успешных — 9

Старший специалист / специалист
  • Количество — 10
  • Успешных — 2

PM — проекта
  • Количество — 7
  • Успешных — 5

HR
  • Количество — 7
  • Успешных — 2


За успешными я считаю свой субъективный взгляд + наличие офферов. Из общего числа получил 15 офферов (18 успешных). Откинул из успешных компании, которые хотели встретиться лично пообщаться, но у меня не было возможности всё бросить и ради компании ехать в другой город. Свои неудачные собеседования делятся на несколько категорий:

  • Задавили морально. Настолько в глубь капать под кандидата, я хз зачем это нужно. Одна мадам меня просто задавила вопросами, особенно бомбит до сих пор с: «Мне неважно, что вы понимайте как работает контракт между hashCode() и equals(), я хочу получить ответ как это написано в JLS». Мне просто трубку бросить хотелось, когда настолько идиотские вопросы спрашивают;
  • Каждое первое собеседование нового дня было слито. Хз не выспыпался я, потому что параллельно работал или просто не в настроении был, но этот факт за мной;
  • Личная встреча. Конечно, я всё понимаю, что рассчитывать на большую зарплату и доказать через Скайп, что ты реально тот, кто им нужен — непростая задача + многим необходимо посмотреть на человека в живую, чтобы окончательно составить портрет;
  • Не сошлись в стеке технологий. Зачастую видят одну технологию и считают, что ты в ней гуру. Мало того, что гуру, так еще и пытаются подсунуть свой стек, который тебе вообще никак не лежит. И есть обратная ситуация, когда я сам понимаю, что имею недостаточно практического опыта в конкретном направлении и нет смысла продолжать беседу.


Наверное это всё что хотел сказать) Главное — быть адекватным и стой, и с другой стороны. В остальном всё обязательно сложится и каждый найдет своё место :)
Что-то, как-то поверхностно очень. У меня вот тоже сотни собеседований за плечами, в основном, правда на программистов. Я для себя вывел следующие непреложные правила, без которых собеседование не может для меня считаться полноценным:
1) Перед выявлением уровня скилов всегда спрашиваю насколько человека сам себя оценивает в том или ином скиле, что он считает своей более сильной стороной. Очень помогает понять на сколько человек правильно себя видит и определиться с глубиной вопросов по скилу, что задавать. Очень редко встречаются люди, что оценивают себя правильно. Обычно или недооценивают или переоценивают. Особенно молодежь.
2) В процессе проверки скилов обязательно нужно найти то, что человек не знает. Реакция у человека на это должна быть адекватной. Все что-то не знают, и это нормально. Если чел начинает на это злиться или юлить или вообще переходит в ответные вопросы… бывают, в общем варианты.
3) Обязательно надо задать задачку. Или на скилы или, если человек не особо опытен, то на общую логику, типа головоломки. Это по сути модель дальнейшего взаимодействия с человеком. Ему ставится задача, он оценивает свои силы и решает ее… ну, или не решает. Очень часто бывает, что на первом же этапе постановки задачи уже начинаются нюансы. Человек не услышал половину, а уже погнал что-то творить. Или, наоборот, все приходится три раза объяснять. И, вроде, все выяснили, а делает человек опять не то. Или все вопросы начинаются уже ближе к концу решения… Далее говоришь, что на эту задачку всем обычно дают столько-то времени. Хватит/не хватит? Очень полезно поглядеть как человек оценит время на решение. Если сказал, что хватит, а потом все равно не решил, даже с дополнительный временем — повод задуматься. Далее… скажем, решил. Внимательно слушаешь как объясняет решение. Или, если не решил, то как объясняет что пытался делать. Если все четко и понятно, даже если и неправильно — один колинкор, если вообще не понятно как решил, — другой. И сразу видно старался вообще или нет. Проверил решение за собой или нет.

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

Ага, ответные вопросы — это вообще катастрофический исход. Ужасно! Как он посмел что-то вякать, когда «здесь вопросы задаю я» ©? Сразу увести такого с охраной.
Если чел начинает на это злиться или юлить или вообще переходит в ответные вопросы… бывают, в общем варианты
Иногда знания и опыт позволяют видеть подводные камни в казалось бы совершенно простых вопросах Ну например частый вопрос: чем POST отличается от GET есть «общепринятое определение» есть «определение W3C» и они разные. И кроме этих двух вариантов ради хохмы могу набросать код который опровергает общепринятое определение. То есть если я уточню, что Вас конкретно интересует, то это я буду по Вашему юлить, злиться, или не нужные вопросы задавать?
Я бы еще дополнил следующим (как расширение к пункту об уважении к соискателю и обратной связи): если человек не подошел взяли другого кандидата — его нужно об этом проинформировать. Очень часто сталкивался с ситуациями у друзей, что прошел собеседование, получил ответ «мы вам перезвоним обязательно и скажем, да или нет», и… в ответ тишина. Ведь человек потратил тоже свое время и ждет ответа, любого!!! И это, таки да, элементарное уважение. Не могу понять, в чем проблема: боятся, что ли, работодатели отказывать?
Говорят, что у них сотни кандидатов и обзванивать каждого невозможно физически. Но, имхо, это бред.
Если выделили час на беседу, неужели не найдут ещё немножко на обратную связь? Думаю, просто никто не любит сообщать отказы, потому что неприятно.
На емейл много времени не нужно и наверняка есть автоответы в базах резюме.
Я вообще считаю, что если было телефонное интервью — то это правила хорошего тона сообщить о результате (тк я потратил свое время и если его не уважают — то не стоит там работать). Достаточно одной строки письма «спасибо, что уделили время, но мы решили продолжать с другими кандидатами». Ок, без вопросов.

Если просто «пришлите резюме, мы посмотрим» — то на их усмотрение (тк я время не тратил, мне пофигу).
Мне иногда не сообщали результаты не то что телефонных, а очных интервью.
Да никакие не сотни… Фирмы компьютерные… зачем же тогда говорить — мы Вам ОБЯЗАТЕЛЬНО перезвоним? Ну так и говорить нужно: наберите нас тогда-то, может быть, еще и такой вариант. С имейлами — прекрасная идея, кстати.
Sign up to leave a comment.

Articles