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

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

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

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

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

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

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

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

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

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

Онлайн тестирование это с одной стороны хорошо, а с другой… Начали работать с ребятами по одному продукту, фирма сертифицирована, у самих куча сертификатов, а по факту обещали сделать за 2 месяца, прошло 6, сделано меньше 40% (а если совсем чётко ТЗ следовать то ещё меньше), любой вопрос вызывает ступор и панику, правильно ответить не могут. Но зато все сертификаты есть. Вот и думай, хорошо это или плохо. То, что сертификаты есть, это значит старалась как минимум, время тратили. Только толку от них нет. С другой стороны не будь у них сертификатов мы бы их даже не рассматривали бы…
Всякое бывает. Например, компания выполняет множество заказов одновременно, ресурсов мало, а ваш проект был с малым приоритетом
да это понятно, нам даже потом «доброжелатели» рассказали что ребята набрали слишком много заказов и не могли выполнить, но, тем не менее, всегда можно расстаться и сохранить лицо или хотя бы попытаться сделать это.

То есть, продолжая ваше многоточие выше:


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

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

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


Всякие дипломы и сертификаты вообще ничего не значат. Во-первых, корреляция, конечно, есть, но недостаточно значимая. Во-вторых, как раз в те 5-10 из 100, которые что-то умеют, часто попадают те, у кого ни дипломов, ни сертификатов нет (что вполне объяснимо, мотивация на самообучение ради знаний куда сильнее мотивации ради оценки).


Всякие codility я, правда, тоже не люблю.

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

Таких отсеет даже FizzBuzz.

Я с такого и начинаю. Не FizzBuzz, конечно, чуть сложнее, но что-то вроде. Второе задание уже посерьезнее, если есть сомнения, даю третье.


Автотесты, да, не люблю, прошу расшарить экран по hangouts/skype/zoom и наблюдаю за процессом. Конечно, заранее прошу подготовиться, чтобы привычная IDE и прочий инструментарий были под рукой — собеседование само по себе стресс, зачем дополнительный дискомфорт? Мне интереснее видеть, как человек работает в привычной ему среде, как мыслит в ходе решения (даже если человек молчит, все равно понятно). Гуглить разрешаю все, кроме решения задачи. Так сразу видно намного больше, чем с любыми автотестами.

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

А могли бы вы рассказать почему такой вариант не нравится. Мы в компании делаем 100% тоже самое и мне кажется это довольно удобным.
Не всем комфортно писать код, когда за тобой пристально наблюдают
Приведу пример как я провожу подобное собеседование. Нужно учесть, что так я делают только когда наримаем Senior Developers которые имеют 10+ лет опыта.
Я исхожу из предположения, что такой разработчик — это не тот кто хорошо код пишет, это и так понятно, т.к. он же что-то все эти 10+ лет делал. Мне плевать на каком стеке он раньше работал, т.к. имея столько опыта он в любой популярный стек зайдет глазом не моргнув.
Также я считаю, что такой человек будет не просто таски закрывать, а будет тянуть проекты, т.е. решать задачи от бизнеса которые будут приходить в таком виде: «нам нужна система биллинга», «нам нужно интегрироваться с банком Ч», «сейчас у нас подключен один банк и все захардкожено, мы хотим иметь возможность подключать другие банки, но нужно как-то так сделать, чтобы не нужно все приложение переписывать».

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

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

На что я обращаю внимание:
1. Какие вопросы задает кандидат (бывает, что человек решает задачу влоб не задавая ни одного вопроса, хотя я всегда делаю акцент на том, что ожидаю вопсов)
2. Как человек проектирует архитектуру, т.е. предожит ли он разделить приложение на слои. Если разделять не будет, какие у него будут аргументы против разделения. (бывают случаи когда кандидат с хорошими знания в ЯП и фреймворке, но просто не может спроектировать приложение)
3. Как он сможет адаптировать свое решение когда у меня появятся новые требования к системе. (бывает, что предлагают варианты решение такие, что расширить их невозможно, или придется все переделывать).

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

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

Возможно я неправильно понимаю смысл лычки Senior.
Я это как-то так вижу:
Senior Developer — ему можно поручить проект.
Middle Developer — ему можно поручить задачу.
Junior Developer — ему можно поручить задачу, но более опытные разработчики должны будут делать ревью.
То что Вы назвали Senior я встречал в виде Team leader. Но тимлид не тащит проект. В крайнем случае с ним советуется архитектор и аналитик. На проекте формируется команда (Product owner, PM, архитектор, аналитик, программисты, тимлид, тестировщики). В итоге, каждый разработчик получает конкретный тикет и пилит его в соответствии с Description, который отражает фрагмент ТЗ. Разработчик может быть на разных проектах одновременно.
В небольших компаниях ничего такого нет и да, каждому программисту дают в разработку существующую или новую систему. Иногда нет никакого деления на тимлидов, сеньоров и джунов, а в трудовую разрешают записать любую формулировку, например «Старший инженер-программист». Но это, конечно, уходит в прошлое, сейчас кругом сплошной Agile/Scrum

Вот интересно, проект в вашем понимании это что? 7 человек минимум, если один программист и один тестировщик. Где грань между проектом и "вот у бизнеса есть проблема, надо её решить, у Васи вроде есть опыт в этом, пускай поговорит с представителями бизнеса и запилит сам, если по его оценкам это не больше месяца. Если два — дадим в помощь Петю, ну и тестировщику Сереге скажем, чтобы их задачи в первую очередь тестировал"

То что я описал меня сначала тоже удивляло. Но в больших фирмах в РФ все так или почти так. Предположим есть некая система и ее надо слегка доработать. На разработку уйдет 6 ч одного программиста. При стоимости часа пускай даже 1000 р фирма ничего не заработает. А теперь представьте, что компания собирает команду из 2 разработчиков, тестировщика, аналитика, архитектора, менеджера проектов, владельца продукта. Эти 7 человек получают, предположим, по 100000/мес плюс соц выплаты, а проект берется на сопровождение на 1 год, плюс маржа. Контракт получается на 20 лямов минимум. Вот так можно вести бизнес, а мы тут сайтики за 50$ на вордпрессе делаем. Мы живем в таком месте и в такое время, что маленькая цена неинтересна не только исполнителю, но и заказчику, особенно если он государственный

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

А что они говорят, когда Вы в ответ на «ты что сам протестировать не можешь?» говорите, что хотите видеть согласованный с ними заранее конечный и фиксированый список тестов, по итогам выполнения которого подписывается акт приемки?

Я в контексте набора команды. В таких проектах команду выбивать приходится, а не ее навязывают тебе.

Т.е. работаете с заказчиками, которые экстаз с унитазом и интеренет с ethernet путают, и для которых ИТ — это ящик с вентиляторами и лампочками? А что хорошего от работы с такими?

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

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

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

Категорически не нравится такой формат. Очень не уютно, когда кто-то стоит над душой. В таком формате, я могу даже FizzBuzz запороть.

Я сам такие тесты проходил неоднократно, знаю, что надо брать поправку на неуютность, плюс к тому минимизирую видимость своего присутствия, пока сам кандидат не задаст вопросы — делаю mute и тихо поглядываю. Понятно, что ощущение стоящего над душой никуда не девается, но все кандидаты в одинаковых условиях, да и если не стоять над душой в том или ином варианте, как увидеть ход мысли кандидата, да и вообще быть уверенным, что он этот FizzBuzz не нагуглил или что ему никто не помогал? Да и всяко меньше стресса, чем у доски с маркером. Этакий компромисс.


А какие еще варианты?

Я считаю, что важность такого интервью сильно преувеличена. Человек может знать синглтон, алгоритмы, что-то еще, но совершенно не уметь писать грамотно структурированный, понятный код. Для того, чтобы это оценить, существует испытательный срок. В статистику по FizzBuzz я не верю. Скорее всего, люди оказывались в таких стрессовых условиях, при которых им сложно было расслабиться и сосредоточиться. Если человек некомпетентен, это можно понять из простой беседы или в течение первого месяца работы.
Забавное наблюдение. Когда собеседует инженер, его как правило интересуют только технические вопросы. SOLID, алгоритмы, что-то подобное. При этом никого не интересует, как часто это используется в реальной жизни или в их собственном проекте. Когда собеседуют управленцы (не редко бывшие инженеры), до технических вопросов часто вообще не доходит. И я вижу смысл такого отличия в том, что последние понимают важность именно психологической стороны вопроса. Они ищут в первую очередь не грамотного инженера, но адекватного члена команды. Заинтересованность, опыт и достижения можно оценить из простой беседы. Конечно, если речь не идет о совсем сыром джуне.

Даже по тому, как человек делает абстрагированное от реальной жизни тестовое задание, можно в первом приближении оценить, насколько он грамотно структурирует код. По крайней мере, есть масса red flags, по которым видно, что не умеет. Разумеется, coding тестом все не ограничивается — его задача в том, чтобы отсеять кандидатов, которые не умеют программировать, и не тратить на них времени больше необходимого. С теми, кто программировать, вроде, умеет, дальше идет беседа.


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


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

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

Из недавнего. Красиво и ёмко. Но это уже под конец, когда все всё про всех поняли — развлекушка типа :) pastebin.com/2XDsYnsy

C или C++? Если плюсы, то ::x. C я знаю недостаточно, чтобы сказать, будет ли работать там такая конструкция — скорее всего нет.


Если таки чистый C, то… Переименовать локальную переменную? Поменять местами printf и объявление? Заключить объявление локальной в фигурные скобки?

C или C++?

А из исходника не очевидно? Следующий!

Нет, это валидный код на плюсах.

На плюсах валидно всё что C. Но плюснутый заюзал бы stdio как минимум.

Вложенный блок с extern,


Да :)
Но плюснутый заюзал бы stdio как минимум.

cstdio. Боюсь, что я вам перезвоню.


А если чуть серьезнее, то я одно время коллекционировал вопросы (возникавшие на практике, естественно) типа «чем и в каких стандартах C++ различаются


template<typename T>
T mkT1() { return {}; }

template<typename T>
T mkT2() { return T {}; }

», но спрашивать загадки на собеседованиях — ну такое, имхо.

спрашивать загадки на собеседованиях — ну такое, имхо.

Если работа предполагает написание ядерных модулей, драйверов и перепиливание glibc под разные архитектуры — почему бы и не? Тут знание «tips & tricks» имеет немалый вес (хотя не факт что ими нужно пользоваться).
BTW, только что нашёл. Чем не трюк :) Опять же, не факт что это нужно использовать в реале. И что оно везде будет работать. Но изящно:

#include <iostream>
int main()
{
  for(int i = 1; i <= 100; ++i)
  {
    std::cout << i << '\r'; // return to beginning of line for overwriting with "Fizz" or "Buzz"
    if(i % 3 == 0) std::cout << "Fizz";
    if(i % 5 == 0) std::cout << "Buzz";
    std::cout << '\n';
  }
  return 0;
}

Вложенный блок с extern, разве что. Но это какое-то извращение :-) Нормальный ответ — переименовать и не выпендриваться.

В проекте могут быть полезны как те, так и другие.

Бесспорно. Но задача стоит выбрать одного-двух наиболее подходящих кандидатов из 50 или 100.


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

Очень просто попадает, присылает резюме, причем там вроде опыт и все дела. Уж не знаю, сами они это сочиняют или реально проработали пару лет копипастером со stackoverflow :-)

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

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

Почти все современные codility/hackerrank предлагаю потренироваться на кошечках чтобы не терять время в момент тестирования.
Почти все современные codility/hackerrank предлагаю потренироваться на кошечках

Да, проблема высосана из пальца. Недавно собеседовался, открыли страницу в ideone и попросили код написать. До того никогда не пользовался, но проблем не вызвало.
В декабре было собеседование, попросили расшарить экран с локальной IDE через zoom.us, вообще супер.

То есть с одной стороны, всегда можно найти удобные средства. А с другой «мешает непривычная среда разработки» — что такого непривычного там может быть? Клавиатура с иероглифами вместо латиницы и текст сверху вниз набирается, а не слева направо?
Проблема есть, причем не только у кандидатов, но и у кадровых агентств.
Ссылки я привел, и еще много можно найти по теме.
Какая именно проблема? Я говорю только о «непривычнавя среда». Что может быть непривычного в банальном текстовом редакторе? Даже если это textarea — чай не с ворда на vim перескакивать. А если задание настолько сложное, что требует отдельной инфраструктуры, библиотек, зависимостей и прочих свистоперделок — то это плохое задание.

И да, про расшаривание экрана вроде говорил…

Ну, например, мой первый опыт с макос (если не считать часик в 1992) был во время собеседования, да ещё мышь не дали. Там даже ctrl+c/v/x не работали. Почти всё отведённое время на задачу я гуглил с телефона как в Макосью работать в принципе

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

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

Отказаться от онлайн тестирования но предложить выполнение тестового задания?

Не только тестовое задание, тут комплекс мер и методов отбора. Да и задание можно не давать, везде нужен индивидуальный подход
Если Вы видите, что кандидат закончил непрофильный вуз, а специальность не связана с ИТ или вычислительной техникой, или ВУЗ не является техническим, то лучше провести тестирование или опрос с пристрастием. Если ВУЗ профильный и технический — это уже хорошо, к такому кандидату больше доверия. Если ВУЗ, выдавший диплом, входит в перечень элитных (МГУ, МГТУ, МИФИ, МФТИ и им подобные), то нужно бороться за такого кандидата, предлагая наилучшие условия с наименьшими препятствиями при приеме на работу.

Муа-ха-ха. Ну то есть мяу.

Мяу — очень абстрактно. Однажды я проводил отбор двух инженеров из 20-ти человек. 18 были из МАИ, двое из МГТУ. Эти двое не оставили никаких шансов конкурентам. Более того, мне не пришлось ничему учить этих ребят, они справлялись с любыми задачами. Нагрузка и объем информации в некоторых ВУЗ-ах таковы, что факт окончания уже является огромным достижением. Просто доучиваются далеко не все. Задачи, которые решают программисты, во много раз примитивнее того, на что способны выпускники той же Бауманки

Вы никогда не слышали выражение anecdotal evidence?


PS


Задачи, которые решают программисты во много раз примитивнее того, на что способны выпускники той же Бауманки

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

Программистом надо быть по призванию. Эта работа не всем подходит. Но диплому надо доверять. Если выясняется, что человек 'не тянет', увольте его, на то и испытательный срок. В некоторых. лучаях увольнение — это большая услуга, человек в итоге находит себе другое призвание.
Вам в любом общении требуются доказатедьства? Что именно Вас смутило?
Эта работа не всем подходит.

Так про любую работу можно сказать.


Но диплому надо доверять.

Зачем?


Если выясняется, что человек 'не тянет', увольте его, на то и испытательный срок.

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


Что именно Вас смутило?

То, что вы предлагаете предлагать "наилучшие условия" или "опрос с пристрастием" просто по факту диплома.

То, что вы предлагаете предлагать «наилучшие условия» или «опрос с пристрастием» просто по факту диплома

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

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

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

В моём написано: биолог, биохимик. Стаж работы программистом — с 1994 года. Чему верить?
Однозначно стажу (трудовой книжке)! У меня, например, кроме дипломов и трудовой книжки есть еще и рекомендательные письма от прошлых работодателей.

… а чтобы этот стаж получился, нужно было, чтобы кто-то на предыдущих местах работы тоже не смотрел на диплом.

Начинать без опыта всегда трудно, тут нет новости

… поэтому давайте же сделаем некоторым людям еще труднее, чем другим. А то что они, и правда?

«на что способны выпускники той же Бауманки» — бауманцы бывают разными, так же как и все остальные люди. По большому счету, наличие диплома говорит лишь о том что у человека хватило сил и упорства доучиться до получения диплома. Конечно, где то упорства требуется больше, где то меньше. Но судить о кандидате только по этой характеристике опрометчиво
у человека хватило сил и упорства доучиться до получения диплома
Бинго! Такие люди на многое способны. Дальше надо просто суметь увлечь их за собой
Сколько человек отчислили за списывание или плагиат? Как думаете, какой процент выпускников списывал на экзамене? И всем этим людям нужно доверять?
Каков процент программистов пользуется StackOverflow?

Могу привести контр-пример (да, вы сейчас скажете, что исключение как раз подтверждает правило) — моя двоюродная сестра закончила МГУ с красным дипломом, училась на программиста.


По специальности я с ней пересёкся всего один раз — будучи ещё школьником (10/11 класс, уже точно не помню) помогал студентке 4 (или даже 5) курса писать курсач. За полтора часа обсуждения и кодинга она чуть не потеряла сознание от нагрузки, её реально потом чаем отпаивали, а я спокойно всё доделал. И да, я в последствии на красный диплом не потянул (и ВУЗ попроще и а другом городе, да и цели такой никогда не было).


После получения диплома она смогла отработать всего несколько месяцев по специальности, уволилась и поступила на второе высшее по совершенно другой профессии (экономика)… теперь это взрослый состоявшийся преподаватель крутого ВУЗ'а на другом конце земного шара.


Вот вам и профильный диплом МГУ.

Конкретно МГУ сильно переоценен. Несколько знакомых было оттуда, все отзываются о вузе очень плохо.

Вот я как-то раз помогал человеку писать диплом (ну как помогал… почти все написал), при том что у самого меня его и нет.


Вот и думайте. :-)

Тоже понравилась эта часть. Приходилось как-то собеседовать двух студентов из МГТУ на джунов. Знаний, необходимых для работы, у них не было, рассказывали про какие то проекты в вузе, код в которых писали не они. До этого взяли парня без высшего образования, но показал он себя лучше этих ребят и достаточно быстро вырос как специалист.
Хм, если у парня без высшего образования знания необходимые для работы были, а у двух студентов из МГТУ их не было, и он показал себя лучше этих ребят, то чем эта история замечательна?

Ну и прекрасно, считайте дальше.

Вы все еще планируете проводить онлайн тестирование?

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

Проблема не в online-тестировании, а в адекватности теста.
Действительно, любой инструмент хорош в умелых руках. Если Вам удается эффективно использовать тесты, продолжайте, почему нет.
Подбор человека в команду программистов сравним по сложности с подбором музыканта в оркестр (требуются и природные склонности, и усидчивость, и опыт). Вы удивитесь, узнав что делает дирижер (или ведущий музыкант группы, если оркестр большой) с кандидатом! Он просит его… сыграть! Да, блин! Оказывается, чтобы определить умеет ли человек играть на музыкальном инструменте (и на каком уровне он играет) — надо просить его делать именно это! И ни у одного вменяемого дирижера не хватит ума брать человека в оркестр на основании онлайн-теста типа: «Дека скрипки изготовлена из 'а' — бука, 'б' — сосны, 'в' — ясеня...». Потому что человек играть (!) у него будет на скрипке, а не дерево на зуб пробовать… И да — оценка качества игры субъективна. И да — отличный музыкант может не сыграться в оркестре. И да, если вы не можете, послушав, определить — стоит ли брать кандидата в оркестр (группу) — значит снимайте фрак, ломайте палочку и идите подметать улицу. Там тоже нужны профессионалы…

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

Зачем тратить неделю на того, про кого за 5 минут понятно, что он играть не умеет?

Однажды, мне дали проект на Java + Spring. Просто отгрузили исходники. На тот момент я ничего не знал о Spring, можете представить мои ощущения? На сборку и запуск у меня ушло 3 дня, проект еле запускалая — съедал всю память. Позже я узнал, что 3 дня — это очень хороший результат даже для опытных разработчиков. Еще через пару дней я фиксил баги. Зато тесты со Spring я точно бы не прошел. Мой пример не является уникальным. Я к тому, что некоторые кандидаты могут быть успешными на ваших проектах, даже если ничего не знают о вашем стеке. Большинство современных языков программирования имеют много общего, переход с одного на другой бывает не так уж и труден.

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

А если десяток кандидатов на позицию?

10*2 недели, очевидно)
Почему Вы считаете, что брать надо всех подряд?

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

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

Все понятно. а) Это зависит от корпоративного юриста б) Снижая риски потем онлайн тестирования компания приобретает другие — вероятность пропустить ценного сотрудника. Какой риск больше это еще вопрос
Это зависит от корпоративного юриста

Вопрос, долго ли продержится на рынке (на рынке соискателя, я замечу!) компания с зубастым юристом, у которой в порядке вещей будет нанимать сотрудников с целью отсева в ходе испытательного срока? Мне кажется, примерно до втрой-третьей статьи на Хабре "Как меня ни за что ни про что уволили из компании %name%".
Увольнение по причине не прохождения испытательного срока действительно практикуется, но остается и должно оставаться исключительным случаем, т. к. приводит к потерям (финансовым, временным, репутационным) и требует четкого соблюдения множества формальностей, чтобы у уволенного таким образом сотрудника не было шансов оспорить решение через суд. Более того, даже если компания со всех сторон постели поломки, и все суды будет выигрывать, даже небольшого их количества достаточно для серьезного ущерба репутации.
Так что, повторюсь, сильно безопаснее провести несколько раундов собеседований и нанять сотрудника, в котором мы уверены на 95%, упустив, возможно, тех, в ком мы уверены лишь на 80% (цифры сугубо условные).

  • по причине непрохождения, *подстелит соломки. Чертова автокоррекция.
Вопрос, долго ли продержится на рынке (на рынке соискателя, я замечу!) компания с зубастым юристом, у которой в порядке вещей будет нанимать сотрудников с целью отсева в ходе испытательного срока? Мне кажется, примерно до втрой-третьей статьи на Хабре «Как меня ни за что ни про что уволили из компании %name%»


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

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

А программист-то в курсе, что ему надо уволиться с текущей работы, чтобы «поиграть» две недели с неизвестным результатом? Лично я лучше пройду «тест» и несколько собеседований, но буду на 95% уверен, что мы с компанией подходим друг другу.
Лично я лучше пройду «тест» и несколько собеседований

… в рабочее время? А руководство Ваше что, верит Вам в сказки про больничный раз в неделю? Или Вы только по онлайн собеседованиям «ходите»?
… в рабочее время? А руководство Ваше что, верит Вам в сказки про больничный раз в неделю? Или Вы только по онлайн собеседованиям «ходите»?

Конечно в рабочее. У большинства программистов относительно гибкий график. Выделить среди рабочего дня несколько часов на собеседование, а потом эти часы отработать я могу. В крайнем случае, могу взять один день отпуска или один день за свой счёт.
про онлайн-тестирование.
как-то, лет десять тому назад, работал я в третьей в отрасли конторе. и позвали меня во вторую, причем почти что с самого верха. я тогда изменять никуда не собирался, но почему бы и не побеседовать. это все спускается до кадровиков, и предлагают мне пройти онлайн-тест. не прошел, да и грех с ним.
года через три судьба свела с коллегами опять. и — снова тот же тест. на этот раз до штирлица дошло стали заметны некие нюансы типа нескольких правильных ответов на один вопрос и т.п. обнял одной рукой томик Страуструпа 91 года издания, другой — Кернигана и Ричи, всплакнул и забил.
три года назад в конторе случился конфликт акционеров, и несогласным вроде меня показали опу на дверь. ну ок, постучался в ту контору, тем более что взаимную интеграцию изделий никто не отменял, и я мог принести много практической пользы, не нарушая при этом никаких соглашений с прежними коллегами. и — опять все тот же тест. с теми же результатами.
я, конечно, далеко не гений, но в Клаузевица Александреску тоже заглядывал. а куда не заглядывал, то найти можно. в гугле или в бумаге (да, бывает еще и такой носитель).
в общем, история именно про прикрытие некоторой части тела отделом кадров. что ж, проходя мимо тещиных окошек передаю привет несостоявшимся коллегам, которые появляются и на здешнем агрегаторе вакансий (на моей памяти уже три названия, всех не упомнишь).
Уверен, многие из экзаменующих сами не в состоянии ответить на многие вопросы собеседования без подготовки. Т.е. тех специалисты работодателя сами иной раз готовятся к проведению интервью. Возникает вопрос «А судьи кто?». Не многие из действующих сотрудников в состоянии пройти тесты в свою же компанию. Абсурд.
там сам тест был глючный. помимо вопросов с несколькими правильными ответами, были и варианты, когда правильного ответа не было в принципе. возможно, что-то было поломано в подтягивании вопросов и ответов из базы… багрепорты после второго раза ушли. когда при третьем прохождении наткнулся на те же баги, понял, что всем пофиг и фиксить никто ничего не будет.
помер Максим, и черт с ним
Проверка диплома и, по возможности, среднего балла.

Во-первых, диплом мало о чем говорит, во-вторых, дискриминирует кандидатов, которые получали опыт вне вуза.

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

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

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

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

Привет, когнитивные искажения.
Во-первых, диплом мало о чем говорит, во-вторых, дискриминирует кандидатов, которые получали опыт вне вуза.
Это не так, говорит о многом. Дискриминация исходит не от диплома, а от того кто принимает решение. Подходите к каждому случаю индивидуально и не будет дискриминации.
Откуда, по-вашему, у человека должно быть портфолио в гитхабе, если он уже давно работает?
Не понял. Т.е. если человек давно работает, то в GitHub он не зарегистрирован? Может быть, зависит от разработчика. Если нет, попросите его что-нибудь туда выложить. Если не умеет, поинтересуйтесь, умеет ли он пользоваться Git. Если нет, это может быть проблемой.
Привет, когнитивные искажения
Вполне ожидаемо. Конечно, способ принятия решения может быть чисто техническим, но это ненадежно. Использование собственного опыта чтения людей и интуитивного принятия решения в условиях недостатка информации может быть очень полезным. Да и невозможно принять решение чисто технически, всегда присутствует личное отношение, ни Вы ни кто-либо другой не может полностью избавиться от влияния субъективного восприятия и личного отношения.
Подходите к каждому случаю индивидуально и не будет дискриминации.

Так это прямо противоречит тому, что вы советуете про дипломы.

Дискриминация исходит не от диплома, а от того кто принимает решение.

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

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

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

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

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

Диплом и достижения важны, знания не важны. Ок, записали.

Можно выкладывать тестовые задания.

Т.е. вы посвящаете статью критике «онлайн-тестов» и теперь предлагаете делать некие тестовые задания и выкладывать их на гитхаб?

Вот, например, при игре в дартс человек попадает в яблочко,

Fun fact: при игре в дартс бОльшая часть бросков идет в 3х20 поле, а не яблочко. Ну и аналогия некорректна. Такой же аргументацией можно обосновать любую дичь, в духе астрологии или экстрасенсов.
Диплом и достижения важны, знания не важны. Ок, записали.
Такое ощущение, что Вы не читали. Важно фундаментальное образование, интеллект, аналитические способности, способность находить информацию, приобретать знания — вот что дает ВУЗ в первую очередь.
Т.е. вы посвящаете статью критике «онлайн-тестов» и теперь предлагаете делать некие тестовые задания и выкладывать их на гитхаб?
Ничего не навязываю, но уверен, мои рекомендации могут быть полезными. Если Вам они не подходят — нет проблем.
при игре в дартс бОльшая часть бросков идет в 3х20 поле, а не яблочко
Зависит от бросающего и его навыков. Если бы Вам предложили какой-нибудь алгоритм, вы бы вообще не попали. Вы же знаете, что на данный момент некоторые задачи может решить только нейронная сеть. Так используйте же свою
Важно фундаментальное образование, интеллект, аналитические способности, способность находить информацию, приобретать знания — вот что дает ВУЗ в первую очередь.

Это ВУЗ дает безотносительно технической или не-технической специальности.

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

В смысле, любой программист с гуманитарным образованием "существенно слабее" любого программиста с техническим образованием?

ажно фундаментальное образование, интеллект, аналитические способности, способность находить информацию, приобретать знания — вот что дает ВУЗ в первую очередь.

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

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

Так речь же идет не о пользе, а о противоречиях.

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

Логическое заключение вида «вы умеете решать некоторую сложную физическую задачу без осознания алгоритма её решения» => «вы можете составить объективное мнение о человеке за несколько секунд» не имеет никакого смысла. Я даже не знаю, что тут еще добавить.
Можно выкладывать тестовые задания.


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

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

публичные хобби-проекты.

Имею код на github уже почти пять лет, причем не просто какие-то библиотеки, а завершенные проекты, которые, конечно, не дотягивают до коммерческих, но некоторый код в них мной переносился и работодателям. Так вот с этого времени, только в одном собеседовании что-то спросили (меньше минуты), а остальным было мягко говоря «начхать».
ИМХО, но разбирать github нужно время, которого часто у интервьюера нет.

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

попросите его что-нибудь туда выложить


NDA нарушать? Ай-яй-яй, гражданин начальник.
Я отвечал, вот комментарий
Можно выкладывать тестовые задания
У многих есть собственные проекты на GitHub, он практически из них и состоит
Ну, если профиль там состоит из тестовых состояний, то это, в первую очередь говорит о том, что:
— человеку приходится часто проходить собеседования ( а значит, его скорее всего, часто увольняют). Значит, и Вы его, скорее всего, выставите за дверь, убив время на то, чтобы убедиться в том, что предшественники Ваши были правы, выставляя его на мороз;
— человек — адепт развития в стиле resume driven development. Значит, и Вы ему будете нужны только для того, чтобы набить свое резюме, а не решать проблемы Вашего бизнеса;
— у человека до фига свободного времени, что опять же, может косвенно говорить что ему плевать будет на Ваши проблемы, если этим ему не интересно заниматься. И пошлет он Вас легко, если у Вас падение боевого приложения, а у него настроение не фонтан.

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

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

В любом случае, это указывает на его нестабильность и предсказуемость так себе, что плохо совместимо с образом работника в голове типичного руководства.
значит, его скорее всего, часто увольняют
Почему сразу увольняли? Например, меня, за более чем 20 лет карьеры увольняли всего 1 раз по надуманной причине и не смогли уволить. В итоге я ушел сам через 3 месяца, причем получил грамоту от Минкомсвязи. Я меняю сместо работы довольно часто, в среднем раз в 1.5 года. Но это становится нормой в ИТ сфере, поскольку длительность всовременного стартапа (взлетная полоса) варьируется в интервале 6 мес — 1.5 года. Зайдите на Upwork и посмотрите какова длительность проектов. И long term позиции там не в большинстве.
адепт развития в стиле resume driven development
Именно! Попробуйте сегодня устроиться без резюме. От качества резюме зависят ваши шансы. Существует целая наука о том как составлять резюме. Каждый разработчик заботится о собственном резюме. Понятно, что за резюме должно быть что-то реальное.
Вы ему будете нужны только для того, чтобы набить свое резюме
Разработчик заинтересован в том, чтобы в резюме красовались знаменитые бренды, в этом нет ничего странного. Это как в универе, первые три сессии ты работаешь на зачетку, остальные сессии зачетка работает на тебя.
у человека до фига свободного времени
далее идет очень странный вывод, комментировать его не могу, но что касается времени, то его действительно много, только большинство тратит его не на карьеру. Попробуйте отказаться от компьютерных игр, сериалов и тиктока и Вы заметите, что сможете делать по одному тестовому заданию в день
Я знаю далеко не одного разработчика (некоторых — лично), которые работают в топовых мировых или российских компаниях и параллельно тащат свои open-source-проекты. Иногда с поддержкой компании, иногда — без оной. Проекты, хорошо известные в коммьюнити. Увольнять их, вроде, пока никто не собирается.
Охотно верю в таких людей монстров. Но на одного такого супермена приходится сотня калибром попроще. А вот им, скорее всего, такое увлечение посторонней деятельностью вряд ли простят при случае. Может, в жирные годы и не поставят на вид, но на карандаш возьмут. И припомнят при случае.
Тут как бы такой момент: адекватного работодателя не должно заботить, как именно сотрудник тратит своё личное время. А от неадекватных лучше держаться подальше — это раз. Второе: собственные проекты позволяют прокачивать скилы и пробовать технологии, которые не позволяет прокачать/потрогать работодатель. Грубо говоря, программист устраивается на работу и попадает в суровый C++-легаси. Такой, 90-ых годов выдержки. Но чтобы не потерять навыки и продолжать быть востребованным на рынке — он, по сути, вынужден работать над своими проектами так, и с такими технологиями, которые позволяют ему оставаться востребованным. Это, в общем, нормально.
адекватного работодателя не должно заботить, как именно сотрудник тратит своё рабочее время

Рабочее?

А от неадекватных лучше держаться подальше


Согласен. Но бывает так, что приходишь в адекватную контору, она остается адекватной пару лет, а потом там меняется руководство и начинается игра в «приходизм-уходизм», брюки не по уставу, контроль за тем, что и куда пишешь, включая посты в ЖЖ в НЕРАБОЧЕЕ время. А на дворе 2008 год, на тебе ипотека, завязанная на эту самую контору (взятая в 2006 году на кредит от конторы, когда она была адекватной). И что делать?
адекватного работодателя не должно заботить, как именно сотрудник тратит своё рабочее время.

Разве что в том случае, если бэклог пустой. Если там задачи висят, то даже адекватному работодателю вполне логично спросить у сотрудника, почему он их в работу не берёт, а вместо этого работает над какими-то личными проектами в то время, которое он по договору отдал на решение задач работодателя?
Там должно было быть «личное». Я поправил. В плане рабочего — некоторые работодатели могут позволить работать на OSS-проектами и в рабочее время. Но тут звёзды должны определённым образом сойтись.
некоторые работодатели могут позволить работать на OSS-проектами и в рабочее время.


Мало Вы в мире компаний знаете. Гугл, например, запрещает в НЕРАБОЧЕЕ время ковырять свой проект.
Такие тоже есть, но к счастью, они в меньшинстве, и да, они не адекватные, даже если это Гугл.
С каких пор «некоторые» стали эквивалентном «всех», а? :) И, честно говоря, про гугл первый раз такое слышу. Так то можно и ещё более суровые примеры взять: игровое подразделение Sony запрещает своим геймдизам любую профессиональную активность, не связанную с дизайном игр, которые они делают по работе. То есть попилить что-то своё дома — это хороший способ лишиться работы и попасть под суд за нарушение NDA.
Тут как бы такой момент: адекватного работодателя не должно заботить, как именно сотрудник тратит своё личное время. А от неадекватных лучше держаться подальше — это раз.

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


Я так на прошлом месте патч на 20 строк в одну никому не нужную пердюльку пару месяцев согласовывал.

Вам передают привет почти все крупные фирмы в США

Спасибо. Не только крупными фирмами США живы, как говориться. :) Так то я в сети и на конференциях самые разнообразные примеры видел.
Увы, не везде контракт позволяет OSS даже в свободное время (выше Гугл приводили, и не он один из крупных). Понятно, что часто эти пункты контрактов на грани закона, но судиться с многомиллардными корпорациями так себе затея.

Бахвальство сплошное, уж простите.

Грешен. Исправлюсь
Сейчас, в процессе поиска работы, тоже с таким столкнулся. И возник вопрос: а какой именно скилл, полезный для компании, таким образом тестируется? Ответ найти не смог. А поскольку от результата такого теста зависит дальнейшее продвижение по интервью — скилл, получается, ключевой.
Просто сразу объявите работодателю, что покажете дипломы, сертификаты, рекомендации (если есть), трудовую, но тесты решать не будете. Как ни странно, но работодатель часто соглашается. В некоторых случаях этот отказ подогревает интерес, поскольку Вы будете выглядеть уверенным и знающим себе цену. Удачи!
За пожелание — спасибо. Проблем как таковых нет. :) Но предложенное вряд ли сработает с топовыми международными компаниями. Они вряд ли согласятся — им проще послать и попросить следующего из очереди. :) Вопрос был больше риторический.
Однажды на собеседование пришел кандидат, которому предложили решить пару задачек, из тех что решаются примерно за пару минут в уме, наливая чай на корпоративной кухне.
Интервьювер, руководитель отдела разработки, был вполне вежлив и корректен.
К слову, кандидат был очень позитивен — принес распечатанное цветное резюме, принес диплом (мы его не просили). А самое забавное, кандидат принес с собой бумажный сертификат, выданный основателями крайне известного фреймворка для популярного ЯП.
И с первого шага в офис начал рассказывать, что он первый в России, кто получил такой вот сертификат от самих вот разработчиков фреймворка, и разворачивал его перед нами показывая свое имя (мы его не просили).
Возвращаясь к задачке. Собеседование закончилось примерно через 5 минут. На первую задачку, по базам данных — составить SQL-запрос (select from ...) длиной символов в 60 с пробелами — он сначала выдал грубо неправильный вариант, после уточнения — снова неправильный, а потом сказал «ну, мне нужен отладчик». Потом ему дали элементарную операцию, гораздо проще, чем Fizzbuzz.
Когда кандидат стал утверждать, что в байте — два бита, руководитель разработки поблагодарил за уделенное время, и покинул встречу.

Мне кажется что вы, gbr, либо никогда не нанимали программистов, либо никогда не отвечали за результат деятельности тех, кого нанимали.
Вот простой вопрос: как алгоритмическая задача в стиле «сделайте с двумя векторами вот такую вот фигню» проверит умение кандидата работать с многопоточным кодом, его знание основных подводных камней акторных архитектур и прочей, гораздо более полезной в хозяйстве фигни? Ну хорошо, мы поняли, что на leetcode и прочих ресурсах он натренировался. А реальные то задачи он умеет решать? Это я сейчас говорю как человек, который занимался подбором и собеседованием кандидатов. Мне вот лично пофиг, может ли кандидат смержить два неотсортированных вектора (погуглит — и сможет). Мне гораздо важнее, чтобы он фигни в коде не написал, от чего потом рейс-кондишены случаются, например. Или buffer overrun'ы по незнанию. А опыт он чаще закопан именно в таких вот тонкостях.

А "дипломы, сертификаты, рекомендации (если есть), трудовая" как-то показывают нужные вам умения кандидата? Ну про рекомендации еще могу понять, хотя тоже есть вопросы. А остальное?

Нет. Лично мне на них пофиг. Вот на github-аккаунт с публичными репозиториями — уже нет. Хотя там, выше, в камментах, кто-то и не очень жаждет его заводить. На статьи здесь, на хабре, на публикации, на выступления на конфах — тоже не пофиг. Но, понятно, далеко не у всех такое есть в анамнезе.

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

Ну, одних просят SQL-запросы составить. Других — что-нибудь с векторами-строками поделать. Зависит от области. На самом деле всё это сводится к одному: собеседование должно быть релевантно реальным требованиям позиции и предполагаемому (по резюме) опыту кандидата. Как-то так. Но такое собеседование предполагает индивидуальный подход, что не все могут (хотят?) себе позволить.
На самом деле всё это сводится к одному: собеседование должно быть релевантно реальным требованиям позиции и предполагаемому (по резюме) опыту кандидата.

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


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

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

Бывают. А бывают люди, которые любят таким образом ум разминать в комфортной обстановке, а не в ситуации дикого time pressure и малознакомом окружении. :) Есть люди, которые любят ум разминать совсем другими задачами. Есть ещё 100500 типов людей, которые такое не пройдут просто потому, что.

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

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

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


Как кандидат я такое видел пару раз, и оба раза — у рекрутинговых агенств.

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

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

Тут не столько в хантерах дело, сколько в выстроенной системе отбора кандидатов. Хотя, иногда и в хантерах. Из недавнего. Другая контора (буржуйская). Собеседовался в неё год назад и вот сейчас. Год назад — адекватный подход, релевантная тестовая задача, потом onsite, все друг от друга в восторге, но не сговорились по з/п — не срослось. В этом году — «пройдите онлайн-тест». На этом всё и закончилось. :D
Тут не столько в хантерах дело, сколько в выстроенной системе отбора кандидатов.

Кем выстроенной-то?

HR-отделом.

… то есть теми самыми хантерами. Которые пытаются сделать свою жизнь легче.

Я в своем опыте набора людей такой ситуации не видел никогда.


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

Нет, остальное — это "дипломы и сертификаты".


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

Ну устроился же я как-то на свою первую работу.


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

А здесь, вроде как, речь о собеседовании идет, нет?
Пункт 2 (см. текст статьи) — наличие стажа. Он подтверждается трудовой книжкой.

Нет, второй пункт — это наличие опыта работы. Я прямо вот процитирую:


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

Для вас единственное подтверждение опыта работы — трудовая?


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

Забавное совпадение. На следующей неделе в наш нидерландский офис переезжает сотрудник, который в начале осени устраивался в наш московский HQ без какой-либо трудовой книжки. Так получилось у него — отчисление из вуза, потом три года фриланса в соседней республике, потом два года работы «по-черному» в России. Но он отличный сотрудник и просто хороший человек.
Получается, вы бы его отклонили из-за отсутствия диплома и стажа в трудовой. А в нашем случае он прошел успешно короткий (5 минут) опросник на тех.базис, и потом достаточно сложное техническое интервью с двумя интервьюверами, полуторачасовое. Само собой, потом — успешное прохождение испыталки и эффективная работа; это лишний раз подтвердило правильность наших методик оценки (благо довольно большой отдел был таким образом и создан почти с нуля).
Задачу он решал на бумажке и без доступа в интернет, а вся добродушная команда стояла над душой, так все происходило? Ваше решение гуглится за 3 секунды. И тезис о том, что разработчик сам должен и что все в уме держит, даже не пытайтесь, пожалуйста. Да, поинтересуйтесь, пожалуйста, где этот парень сейчас работает. Хорошо, хотя бы компьютер человеку дали и оставили в покое на время, но даже эту ситуацию нельзя сравнить с привычной.
Мне кажется что вы, gbr, либо никогда не нанимали программистов, либо никогда не отвечали за результат деятельности тех, кого нанимали.
Вам кажется
Задачу он решал на бумажке и без доступа в интернет, а вся добродушная команда стояла над душой
. Вы хотите найти оправдание неумению написать на бумажке ответ на вопрос без подвоха «сколько будет 2+2»?
Если вас спросят, вы ведь не скажете, что «ответ гуглится», или «дайте мне калькулятор»?
Задачки были примерно такой же сложности, непосредственно из предметной области программиста (у которого, к тому же, в резюме был заявлен опыт проектирования и оптимизации структуры БД).

Да, поинтересуйтесь, пожалуйста, где этот парень сейчас работает.
Я примерно отслеживал потом его карьерный путь, т.к. в разные года в последующем периодически получал его резюме. К сожалению, хронология опыта и названия организаций не дают мне уверенности, что его профессиональная карьера сложилась удачно (на момент 2017 года, а первое интервью было в 2008). Сейчас linkedin профиль этого человека удалён.
Есть вполне грамотные люди, которые в стрессовой ситуации даже 2 х 2 не могут решить. Т.е. стресс мешает трезво мыслить. Существуют даже разные виды мошенничества, которые основаны на том, что человека вводят в состояние стресса и он становится очень уязвим. Я понимаю, что ссылка, которую я дам не вполне по теме, но явление отражает:

Практически все люди на собеседовании так или иначе испытывают стресс; однако вы предлагаете отменить проверку профессиональных навыков кандидата ради душевного спокойствия 0.01% кандидатов (среди которых вряд ли, очень вряд ли будет большое количество профессионалов).



Найм, видимо, будет выглядеть так: (монолог HR-а):

«Здравствуй, солнышко-кандидат, я так рад что вы пришли к нам, а вот случайно диплома у вас нет с собой? Ах, прекрасно, вы его с собой взяли! вот, печеньку скушайте, пожалуйста, хотите ещё чаю? А с малиновым вареньем? да, а помните, в том письме с котиками, которое я вам отправлял приглашая на встречу, мелким почерком было написано про трудовую книжку? ах, вы и ее взяли даже? оу, еле могу дышать от счастья; вы разумеется прошли собеседование, когда сможете приступать?»

Кстати, вы ведь, надеюсь, экзамены и дипломы тоже предлагаете отменить?
Помнится, каждый раз на экзамене — такой стресс был, когда тянул билет! А уж диплом так вообще… Как я выжил — не знаю.
Я считаю, что того факта, что я ходил в университет, достаточно, чтобы сделать выводы о моей достаточной квалификации, ведь в электронной базе охраны на проходной фиксируются мои входы в здание? Значит я имею право получить диплом об окончании вуза безо всяких там экзаменов и защит.
Есть вполне грамотные люди, которые в стрессовой ситуации даже 2 х 2 не могут решить. Т.е. стресс мешает трезво мыслить

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

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

Я много лет фиксил баги и считаю, что это скорее как решение интересних ребусов

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

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

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

Программирование — это творческая профессия.

Я бы сильно поспорил. Есть некоторые творческие направления, но для 99% программистов она в общем случае творческая первые пару лет, когда вы ещё нарабатываете опыт, придумывая себе решения, которые вы ранее не использовали. А потом это просто складывание хорошо знакомых кирпичей в очередное здание знакомой конструкции. Творчества остаётся столько же, сколько и в работе каменщика или там сантехника.
Разве ошибки в проде не являются чем-то ненормальным и нестандартным, редким?

Ошибки в проде являются чем-то очень нехорошим, но я ничего не слышал про существование компаний, в которых их не бывает. Это время от времени происходит в любой компании, от ЧП Пупкин до гигантов вроде Google. И также ничего не слышал про отсутствие авральных ситуаций, когда надо это исправить в сжатые сроки, и чтобы менеджер не дёргал программиста с вечным вопросом «ну когда же?».
Корпоративная культура — единственная причина, по которой компания будет существовать, это как билет в будущее, многие этого не понимаю

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

Видели слово "качественно" в определении? Это то самое слово, которое отличает творчество от сборки по схеме, и которое, в случае программирования, формализовать весьма непросто.


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

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

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

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


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

Да ладно вам. Мне казалось, это каноническое определение велосипедного кода.

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

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


сравнение со шкафом неудачное

Аналогии вообще врут, это им свойственно.


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

"С точки зрения программиста" что угодно может быть творчеством, потому что приятно же думать, что творчеством занимаешься. Но нас-то интересует, творческая ли это профессия (и более ли она творческая, чем профессия установщика шкафов на заказ).


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


Да и абсолютно одинаковых велосипедов Вы не встретите

Я и двух абсолютно одинаковых икейских шкафов не видел, даже если я сам их собирал.

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

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

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

Engineers are creative too!

Фраза «мы его не просили» и весь Ваш текст обнажает Ваше отношение к кандидатам. Оно встречается часто. Между рекрутерами и кандидатами часто возникают сложные взаимоотношения и частые взаимные обиды, даже неприязнь. Я бы призвал вести дела позитивно и относиться к найму как к бракосочетанию или как к равноправному сотрудничеству. Не только кандидату нужна работа и деньги, которые заплатит работодатель, но и работодатель нуждается в навыках и умениях кандидата. Подходя к делу таким образом можно извлечь больше обоюдной выгоды. Но работодатель часто ведет себя так, как будто делает одолжение, а HR менеджер начинает злоупотреблять властью решать чужие судьбы, хотя власти то никакой и нет.
и весь Ваш текст обнажает Ваше отношение к кандидатам
… и так далее.

Воздержусь от ответа на этот комментарий; слишком уж он напоминает историю про коньяк по утрам.
Автор неоднократно приводит наличие диплома как нечто основополагающее. У меня есть пара аргументов против:
1. Я собеседовал ~100 человек за последние годы, и не нашёл корреляции между полученным дипломом и эффективностью сотрудников.
2. Да, у меня нет профильного диплома высшего образования, я благополучно работаю ведущим разработчиком/тим-лидом много лет в разных компаниях, и никогда это не было препятствием к трудоустройству.
Что я делаю не так?

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

А разве все эти темы не субъективны?


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


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


И тимлидов я в своей жизни повидал не мало.
9 из 10 как руководители представляли из себя ничего


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


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

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

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

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

сам проходил много тестов, и хорошо и плохо… опыт 15 лет промышленной разработки, full stack, опыт разработки электроники, менеджер проекта — решал очень сложные задачи, от распознавании образов до онлайн 3D конструктора, написал свой ёфикатор… на собеседовании в Фейсбук не смог догадаться что задача на нормализацию скобок решается стеком — начал на ходу изобретать своё решение, в итоге не успел за 45 минут… задача решается за 15 минут если сталкивался с ней раньше…
на мой взгляд, вместо того чтобы давать задания нужно подключиться удалённо к кандидату и дать ему возможность рассказать о его проектах.

Из собственного опыта таких интервью могу заключить, что громкое «problems solving», которое они, типа, проверяют, сводится к тупому «знаешь/не знаешь». Потому что если не знаешь — то есть высокий шанс, что уткнёшься в sub-optimal-решение, не учтёшь какие-то corner case'ы, о которых, разумеется, знает интервьюер, и совершишь ещё кучу подобных ошибок.

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

Я как раз о таких случаях. Они ищут программистов-спорсменов, хотя компании они на самом деле не нужны. И вообще, можно быть нулевым, но научиться проходить интервью. В штатах выходят специальные книги на тему прохождения интервью. Поиск работы превращается в самостоятельную профессию.
В том то и дело, что на решение таких задач можно натренироваться. Если есть время и желание. О реальном опыте умение их решать не говорит ничего.
Наткнулся на статью «Собеседование в Додо Пиццу», там много поводов для спора, но сама идея тестового дня мне нравится. Это еще один прекрасный способ выяснить уровень кандидата, не прибегая к тестам. Наверное самый эффективный, причем он намного лучше проверки на испытательном сроке, пускай даже очень коротком. Кроме того, это честно по отношению к кандидату тоже, поскольку тестируют тебя как в Гугл, а работать в итоге приходится с очень кастомным и махровым легаси. Только я считаю, что тестовый день должен оплачиваться.
Кстати я проходил тестовый день, точнее это была тестовая ночь — компания работает по американскому времени в Москве. ЗП предлагали сильно выше чем у сеньора по рынку, (ЗП была просто конская). В этот тестовый рабочий день я пофиксил баг в незнакомой мне системе, мои шансы стали очень высоки, но на следующий день я отказался. 1) Компания не софтверная, два разработчика пилят CRM-ку для себя. 2) Работать с 18:00 до 3:00 (1 час на бед) оказалось нереально сложно. Даже адаптировавшись я не смог бы нормально общаться с семьей, поскольку днем я бы отсыпался, да и в выходные дни был бы вынужден жить по такому же распорядку. 3) Бэкенд на Node.js и взаимодействие с БД представляет собою спагетти-код от земли до неба и глядя на все это, и вспоминая .net, EF, Linq, я понял, что это будет не работа а мучение.
Будет работать только с теми компаниями, руководство которых не параноит по поводу доступа к исходникам «третьих лиц» в таком вот режиме.

Очень расстраивают компании, которые ища джунов, дают им 12 часов на реализацию решения задачи на самостоятельно написано фреймворке
Джун — понятное растяжимое, но не настолько ИМХО

Я добавил 12-й пункт «Тестовый день»
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.