Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 5
×

Как не надо собеседоваться

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

Очень много слов не по существу

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

Пример:

«Что вы делали на прошлой работе?» — «Всё!»
«Что всё?» — «Всё что скажут»
«Расскажите поподробнее» — «Ну я....»

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

Скрытие своего кода

Мне вот интересно что все так серьезно поддерживаются NDA? Что правда?! Вы живете по букве закона?! НЕ ВЕРЮ! Да вашему бывшему(?) работадателю в принципе всё равно кому Вы покажите кусок своего кода. Вы же не продаете его конкурентам. Вы показываете кусочек того что ВЫ сделали. Если Вы такой принципиальный — OpenSource Ваш выход. Покажите мне то что Вы умеете! Я хочу видеть Ваш github! Я хочу видеть там код! Вы подниметесь еще на одну ступеньку в рейтинге в моём понимании, если будете приносить пользу другим. Вы же используете Ruby On Rails/Zend/Etc! Почему бы не отдать долг этим проектам? Они Вас кормят!

Безответственное отношение к тестовому заданию

Если я даю Вам задание я хочу его получить готовым. Я Ваш Пользователь. Может быть и единственный, но пользователь. Мне должно быть удобно пользоваться результатом Вашей работы. Меня пока не интересует что там «под капотом». Я хочу получить продукт которым удобно пользоваться. На который приятно смотреть. Не знаешь HTML или CSS — возьми Twitter Bootstrap, Zurb, etc... Всё! С минимум усилий ты получишь приятный глазу UI.

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

Велосипеды с квадратными колёсами

Зачем Вы делаете то что уже есть? Причем хуже чем есть?!
У Вас уже есть столько библиотек что можно вообще не напрягаться.
Ruby Toolbox, Node.js Toolbox, JS Toolbox ...

Почему не читаете документацию по тому интсрументу что используете? Документацию придумали лохи? Так что ли?

Итог

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

Если Вы хотите создавать что-то интересное, и как бонус к этому получать достойную оплату — исправляйтесь. Хватит тратить своё и чужое время на ветер. Учитесь экономить своё и чужое время. Будьте пунктуальны и покажите все свои положительные стороны.

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

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn

Найкращі коментарі пропустити

Эхх...вставлю-ка и я свои пять копеек.
Наибольшее возмущение вызвали два пункта: требование показать код под NDA и требование к вылизанности тестового задания.

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

1) Самое главное, чтобы у человека не было проблем с родным языком. Если кто не умеет связно излагать свои мысли, это клиника и никакие знания фреймворков горю не помогут.

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

3) Потом задаю провокационные вопросы. Например: «почему вы хотите сменить работу?» или «расставьте в порядке приоритета интересный проект, большую зарплату, хороший коллектив, стабильная компания и т.п». Если человек явно врет, будет врать и в процессе работы. Если становится агрессивен, общаться с ним будет очень тяжело. Ботаник с горящими глазами тоже на проекте не нужен, по крайней мере в количестве большем одной штуки. Оно может быть работает и неплохо, но много хорошо тоже не хорошо: сидеть будет с утра и до забора, бесплатно. Вышестоящее начальство начнет гундеть о производительности и командном духе. Если один человек такой можно ещё съехать, мол это его проблемы, что он сидит с утра и до забора.

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

4) Потом спрашиваю сколько человек прочитал в этом году книг по специальности и каких.
Читает, значит учится. Если не учится, no hire. У меня нет времени заниматься обучением людей в рабочее время. Могу помочь, подсказать, но если чел не учится сам и дома это будет как о стенку горохом.

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

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

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

если кто-то попросит меня показать код, который под nda — я сочту это провокацией (ну или проверкой на вшивость)

Слишком много восклицательных знаков и хамства. Хорошего разработчика таким не заманишь.

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

Знаете, когда-то давно когда я в первый раз проводил собеседование на работу и оказался по ту сторону стола, я тоже почувствовал свою важность и сразу же принялся рисовать обложку для своей будущей книги «Искусство эффективного собеседования»

Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Прекрасная статья. Грамотно, ёмко, по существу раскрывает все причины не посылать в вашу компанию резюме, спасибо!

Мне вот интересно что все так серьезно поддерживаются NDA? Что правда?! Вы живете по букве закона?! НЕ ВЕРЮ!
Вы предлагаете нарушить письменное соглашение. При таком подходе возникает мысль что вы со своей стороны также можете наплевать на контракт(договоренность/соглашение) и не выплатить человеку зп например или еще что-нибудь.

Как можно,доверять человеку который кладет на NDA? Он же потом при возможности все у Вас на работе может слить конкурентам или просто в интернет. У меня был случай, когда работодатель хотел подробно узнать какие проекты я делала на предыдущих работах + ещё топ лучших сотрудников по моему мнению и их номера телефонов. NDA это проверка на вшивость если человек не разглашает информацию которую мог бы рассказать при желании, такому человеку можно доверять.

А зачем за бабки, давайте просто так расскажите какими проектами занимаетесь, покажите свой гитхаб, я с удовольствием посмотрю. Можете заодно контакты своих колег дать, прямо тут напишите всю информацию о себе. Хотя, а зачем ? Вас и так тут все знают, вы месный завсегдай доу, более 12000 комментов. Вам новое звание ’ dou comment developer’

И ещё ключи от сейфа где деньги лежат

Сказание мною не было с целью обидеть если что.

Нащет кода под NDA. Много ли скажет об уровне профессионализма пара стандартных геттеров-сеттеров или кусок какого-то паттерна?
Тем более в большом проекте их может поочередно править три-четыре человека.
А вот о внутреннем устройстве программы они могут сказать много. Собственно на таких утечках и строится промышленный шпионаж.

Требование показать свой код под NDA (нарушить договор) порождает вопрос: а стоит ли доверять такому человеку?
Если человек нарушает договор/слово — это явный сигнал не иметь с ним дел. Но если вам нужны именно такие люди...

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

PS Данная статья должна быть с заголовком «Как не надо проводить собеседования».

Очень много слов не по существу

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

Скрытие своего кода

Если есть возможность я стараюсь не подписывать договора о соглашении. Но даже в этом случае я не показываю код проектов. Если очень хотят, я могу показать 1 файл на 500-1000 строк, в котором есть классы, иерархия и прочая ООП, но который сам по себе никуда нельзя приткнуть. Этого более чем достаточно для получения первого впечатления. Более полное впечатление даст только конкретная работа, тем более, что отличные исходники с прошлой конторы никак не гарантируют, что на новой работе кандидат будет также успешен. И все честно — я не показываю Вам мой старый код, но и Вы можете быть уверены, что впоследствии я не покажу код, написанный у Вас.

Безответственное отношение к тестовому заданию

Все зависит от текущей ситуации у конкретного кандидата.

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

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

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

Велосипеды с квадратными колёсами

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

Коментар порушує правила спільноти і видалений модераторами.

Если аффтара немедленно не уволят за пренебрежительное отношение к НДА, то Phenomena Group Ltd. выйграет приз на лучшего работодателя -))) (даже круче вареных Софтсервов)

>> «Я хочу видеть Ваш github!»
Напомнило: «Любите ли Вы театр так, как я люблю его, то есть всеми силами души Вашей, со всем энтузиазмом, со всем исступлением, к которому только способна молодость, жадная до впечатлений изящного.»
Виссарион Белинский, ЛИТЕРАТУРНЫЕ МЕЧТАНИЯ, ЭЛЕГИЯ В ПРОЗЕ.

поддержу топикстартера.

я один из тех, кто осилил тестовое задание в пределах 20-ти часов. (Для людей, работающих с этим стаком ежедневно, задача бы заняла =~ 10 часов)

Мне известны как минимум двое людей, забивших на разных этапах. У всех свои причины. У меня нашлось АЖ СТОЛЬКО времени, т.к. на тот момент я заканчивал с текущим проектом, и оставался без работы.

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

Саша, на твоем месте я попробовал бы срезать все возможное, чтобы
* снизить время до 4-6 часов (2 часа для тех кто очень в теме)
* кагбэ намекнуть в вакансии, что это чуть менее, чем фронтенд девелоперская позиция. (имхо, конечно)

Эхх...вставлю-ка и я свои пять копеек.
Наибольшее возмущение вызвали два пункта: требование показать код под NDA и требование к вылизанности тестового задания.

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

1) Самое главное, чтобы у человека не было проблем с родным языком. Если кто не умеет связно излагать свои мысли, это клиника и никакие знания фреймворков горю не помогут.

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

3) Потом задаю провокационные вопросы. Например: «почему вы хотите сменить работу?» или «расставьте в порядке приоритета интересный проект, большую зарплату, хороший коллектив, стабильная компания и т.п». Если человек явно врет, будет врать и в процессе работы. Если становится агрессивен, общаться с ним будет очень тяжело. Ботаник с горящими глазами тоже на проекте не нужен, по крайней мере в количестве большем одной штуки. Оно может быть работает и неплохо, но много хорошо тоже не хорошо: сидеть будет с утра и до забора, бесплатно. Вышестоящее начальство начнет гундеть о производительности и командном духе. Если один человек такой можно ещё съехать, мол это его проблемы, что он сидит с утра и до забора.

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

4) Потом спрашиваю сколько человек прочитал в этом году книг по специальности и каких.
Читает, значит учится. Если не учится, no hire. У меня нет времени заниматься обучением людей в рабочее время. Могу помочь, подсказать, но если чел не учится сам и дома это будет как о стенку горохом.

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

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

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

Вполне адекватно, единственно что, не судите строго тех которые «врут», ибо ХРы приучили рассказывать про интересный проект :-(

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

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

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

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

адекватно. но я бы по 4) не прошел. стыдно признаться, за последний год ни одной книжки по специальности не прочитал. читал в основном всякие requirement documents, доки по системе и декомпиленные исходники ее же.

Почти аналогично. Я правда прочёл пару книг, ещё одну перечитал, а так не хватает времени на чтение книг, поэтому перешёл на чтение статей, в основном хабр + англоязычные блоги. Плюс в том, что чтение 1 статьи занимает макс 5-10 минут, и за день можно легко прочитать 10-20 статей, просто когда есть небольшой перерыв. Книги если читать по 5-10 минут, то толку будет мало.
Ещё 1 плюс — т.к. статьи читаю на разные технические темы, то этот значительно расширяет кругозор. Книги, например, по геймдеву или по робототехнике или по дизайну я вряд ли бы читал, т.к. не мой профиль.
Минус конечно тоже большой — ни одну тему досконально по статьям не раскроешь.

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

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

Вы таких действительно встречали или это сферический образ?

В игрострое сплошь и рядом. Есть даже штрихи, которые не моются

4) Потом спрашиваю сколько человек прочитал в этом году книг по специальности и каких.

Толстая пачка англоязычных pdf-ов — научных статей в области компьютерного зрения считается? Ну и главы из англоязычных книг типа «Efficient Implementations of Machine Vision Algorithms using a Dynamically Typed Programming Language».

И юбилейное издание документации к FireBird.

1) Самое главное, чтобы у человека не было проблем с родным языком. Если кто не умеет связно излагать свои мысли, это клиника и никакие знания фреймворков горю не помогут.
Модно це називати lack of communication. Справді, нафіга код писати, будемо вчитись правильно говорити.
2) Дальше спрашиваю, о сделанных проектах. Если начинает мямлить, нихрена не умеет. Напротив, грамотный рассказ о многом говорит.
Реально було в мене таке на співбесіді. Кажуть — розказуй що робив. І хз що відповісти. Питання мають бути конкретні. По типу — ’чи працював з ххх?’, якщо працював — то що саме на цьому робив, які були проблеми, чим xxx сподобався.
3) Потом задаю провокационные вопросы. Например: “почему вы хотите сменить работу?” или “расставьте в порядке приоритета интересный проект, большую зарплату, хороший коллектив, стабильная компания и т.п”.
Завжди на співбесідах вбиває от така народна психологія.
4) Потом спрашиваю сколько человек прочитал в этом году книг по специальности и каких.
Читает, значит учится. Если не учится, no hire. У меня нет времени заниматься обучением людей в рабочее время.
Для джунів це справедливо. Інакше не факт хто кого буде вчити в робочий час.
Только потом начинаются вопросы по специальности.
Як на мене це єдине що має питати технічний спеціаліст на співбесіді. Інші питання мають рекрутери та менеджери питати.
Справді, нафіга код писати, будемо вчитись правильно говорити.
Именно так, если у человека не развиты базовые навыки а ля устная речь, письмо и т.п. он не подходит, как бы хорошо не кодировал. Мне нафик не нужно объяснять челу пол дня, потом выяснить в конце выделенного времени, что он все не так понял и не смог спросить.
По типу — ’чи працював з ххх?’
Мне это не важно. Если чего не умеет, научится.
Інші питання мають рекрутери та менеджери питати.
Если что не так, претензии будут ко мне, как к руководителю и пофигу по какой причине они возникли
связно излагать свои мысли
!=
правильно говорити.
ти хоча б різницю розумієш?
Кажуть — розказуй що робив. І хз що відповісти.
Висновок — робив щось, як бібізяна, лопатив код, не вникаючи в суть.
Завжди на співбесідах вбиває от така народна психологія.
Висновок — людина не може розставити пріоритети або обгрунтувати свої дії/рішення.
Як на мене це єдине що має питати технічний спеціаліст на співбесіді. Інші питання мають рекрутери та менеджери питати.
Тобто техспеціліст — такий собі задрот, а менеджери і ХРи — люди з якими можна поговорити про життя.
Тоді взагалі тре напиасти тест, дати ХРу правильні вівдповіді, як у ЗНО, і немав чого залучати технарів, хай код педалять, не холопське це діло.

Ці висновки стосуються девелоперів котрі тільки починають. В інших випадках вони неправильні.

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

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

Про здібності програмістів-аутистів не чули?

И? Строить команду в надежде на аномалии?

Ну аномалії це, чи ні — це вже питання. Але із того, що я читав в інтернеті, то аутисти не гірші програмісти за нормальних людей.

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

довольно странный вопрос. Возможно удивлю, но знания сегодня получать можно далеко не только из книг) Особенно по IT, книжные знания по которому устаревают быстрее, чем по чему-либо ещё.
Последняя англокнига, которую прочитал по с++17, была года 2-3 тому, даже не помню точное название, на амазоне заказывал. Для тонуса — новости (сайты), код, даже ютуб с соотв. контентом вполне себе заходит.

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

Все рубисты такие как автор данного топика?

Я не «девочка HR».
ну слава Богу, а мы то подумали... спасибо что развеял сомнения
Очень много слов не по существу
конкретно в этой статье, да, согласен
Скрытие своего кода
Код под NDA не показывают, и правильно делают, а плодить очередной бесполезный говнопроект на гитхабе, коих там 100500 ради того чтоб потешить ЧСВ или попонтоваться перед тобой на собеседовании? соискатель плюнет и найдет контору с адекватными людьми.
Вы подниметесь еще на одну ступеньку в рейтинге в моём понимании, если будете приносить пользу другим.
Охохо, я рыдаю просто, в твоем понимании... а ты кто такой? Саша, ты никак уже дето на уровне Столлмана и Патрега? Почему претендента вообще должно парить мнение Саши Симонова из провинциального Николаева? Претенденту не насрать на на твой рейтинг?
Безответственное отношение к тестовому заданию
радуйся что вообще пишут а не посылают в глаза. Вроде как безработицы на рынке програмистов нету, а ваша чудо-контора совсем не гуголь или фейсбук. Чего вообще кто-то должен делать то что делать не обязан.
Если Вы хотите только получать деньги — продолжайте в том же духе. Вы скоро дойдете до своего потолка.
сколько пафоса, как же ты правду-матку то режешь! вы плохиши, за бабло кромсаете корпоративный говнокод, а мы- рыцари опенсорса делаем мир светлее и чище комитя на гитхаб няшные модули для руби, твою ж мать, у тебя ЧСВ в офис помещается?
Учитесь экономить своё и чужое время.
давать тестовое задание на 20 часов — пустая трата времени, я бы просто его не стал делать вообще

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

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

И да, давай будем чесными, ты ведь не для того чтоб улучшить ситуацию его написал а просто чтоб ЧСВ почесать. Такое случается с «молодыми начальниками», главное чтоб на затягивалось.

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

Уж извини что так вот пишу, но каков пост — таков комент.
За сим все.

PS: к руби не причастен, и вообще мимопроходил

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

как же лихо товарищи инженеры пояснили скрипткиду

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

«Нам насрать на низшие существа!» — раздался пронзительный голос со стороны параши.

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

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

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

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

Меня пока не интересует что там «под капотом».

Как на ДОУ минусовать пост?

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

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

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

Написать на C# small app: Выводить в цикле цифры от 1 до миллиона на форму.
Свободный доступ в интернет, к всевозможным хелпам и т.д.

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

Тестовые задания на 3-4 дня, это конечно жесть.

Написать на C# small app: Выводить в цикле цифры от 1 до миллиона на форму.
Свободный доступ в интернет, к всевозможным хелпам и т.д.
Таким образом отсекаются люди которые в принципе умные, могли бы разобраться, но не имели раньше дел с десктопными апами на ц#.

Да, конечно, а что именно смущает?

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

Боюсь, что такими заданиями отсекаются и люди, которые собаку съели на десктопных апах C#
Люди которые собаку сьели на десктопных апах делают это задание закрытыми глазами без хелпа максимум за 3-4 минуты.
делают это задание закрытыми
С закрытыми глазами — это дополнительное требование для проверки опытных? Проверяется владение методами слепого набора текста и манипулирования мышью?
Ну а если серьезно, конечно, опытные кандидаты сделают его вам за 3-4 минуты. Хотя я бы дольше думала в чем подвох, и что такое-этакое собеседующий может держать в уме. Ну, невозможно по моим представлениям оценить разработчика на позицию любого уровня только на основании этих действий.
Другое дело, если это первый входной фильтр. Но вы, вроде, пишите, что это и есть полное тестовое задание.

Человек не прав, он уже сам наверное догадывается. Хватит пинать его ногами

В тестовых условиях я не указывал дополнительные требования типа

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

По Вашим нет, а по моим для начального отсева вполне хватало.

Это может быть вполне осознанной позицией нанимателя, например, когда человек нужен срочно и времени на «раскачку» (в смысле, изучение Windows Forms) нет.

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

Після цього завдання були ще якісь задачки? І чому не якусь головоломку, щось хитре?

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

Что то мне подсказывает, что в 10-ной системе исчисления(например) , всего 10 цифр, откуда вы взяли миллион,я не представляю ...

Идеальное тестовое задание — на один вечер. На гонка с быдлокодом на эрудированность как вы предлагаете, но и не занимает много времени

Идеальное тестовое задание — на один вечер.
А пример?

Алгоритм какой-то, сервер небольшой, какой-то walker по файловой системе. Любая задача + concurrency, получается нормально. Запилить какой-то server push чатик.

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

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

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

не могу не согласится. Но вот почему-то от Епама, Циклума или Глобал Лоджика, Когнианса я не получал тестовые задания. А вот от всяких говноконтор: Да. Вопрос, почему так?)

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

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

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

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

А если есть маленькая компания и у нее есть деньги на одного человека, то они будут присматриваться.
Так а маленькие, но __адекватные__ так же не дают ДЗ. (Чисто из личного опыта)

Ну так о чем мы спорим если у вас такая 100% верная и достоверная информация что адекватные компании просто не могут давать ДЗ. Мне остается только склониться в лучах истины

100% верная и достоверная информация
Я такого не говорил. Это чисто из моего опыта.

Вполне может быть что были такие случаи и часто. Я не уверен в общей корреляции

Я от епама получал

Это зависит от заказчика. Если клиент захочет — дадут.

в эпаме заказчик разве принимает какое-то участие в собеседовании?

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

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

можно задать еще один вопрос типа «Значит циклум» ) И из логического или выплывет название конторы=)

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

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

Ну или в случаях когда сверхвкусная вакансия. Ради гуглов многие бы месяц кодили на шару

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

Но мне кажется 70% от silver bullet — позволить человеку рассказать о самом крутом и интересном проекте или своей разработке, о чем то, что ему самому нравится и он этим гордится

Алгоритм какой-то, сервер небольшой, какой-то walker по файловой системе. Любая задача + concurrency, получается нормально. Запилить какой-то server push чатик.
И чем человек будет заниматсо на работе? Я конкретные тексты задач хочу, а не абстракции.

Делать архитектуру приложения с которой потом не будет проблем. Способ мышления виден даже если кода до 1000 строк. Грамотные операции и структуры данных, не классический ArrayList/HashMap-programming

Собственно что вам не нравится в

ArrayList/HashMap
у меня практически все алгоритмы на этом построены. И часто архитектурой приходится жертвовать ради скорости.

Откройте для себя persistent data structures, Prefix Tree, Range, Range Map, Range Set, BiMap, MultiMap, Bitset, Ctrie, SkipList, Cache (внезапно можно кешировать не только фоточки в браузере), etc, etc, etc.

persistent data structures, Prefix Tree, Range, Range Map, Range Set, BiMap, MultiMap, Bitset, Ctrie, SkipList
Я вам, по-доброму, завидую, ибо в моем мире в 9х% случаем — эти структуры не нужны. А в остальных <10% дают прирост производительности/читаемости <10%. Поэтому, какой смысл проверять знает ли их собеседуемый?
Cache (внезапно можно кешировать не только фоточки в браузере)
А когда это (внезапно) кеш успел стать структурой данных?

Нет, мне тоже далеко не все надо, и собеседующего никто не просит мучать. Просто тут уже тема зашла такая что некоторые утверждают что кроме ArrayList/HashMap ничего никогда не надо и сбив пальцы о клавиатуру можно навелосипедить их если надо. Вместо того чтобы точно знать о существовании структуры данных и взять ее где-то из готовой библиотеки когда будет задача строго под нее. А вдруг в тестовом задании человек внезапно использует что-то лучше чем банальные списки (если надо)?

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

А почему эти структуры данных вдруг стали называться персистентными, и почему hashmap не персистентный?
И что за структуры данных RangeMap, BiMap, MultiMap? Это какие то интерфейсы очевидно, могущие иметь 100500 реализаций.

Не эти, а просто есть такие персистентные, через запятую же.

Это какие то интерфейсы очевидно

Браво, что сказать то хотели?

Хотел сказать что у тебя все в кучу смешалось.

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

Ну так я те и написал, что половина твоих «структур», структурами не являются.

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

Ты что то успел курнуть уже с утреца?

Давай так, я сначала ненавязчиво намекал, теперь скажу прямо. Я знаю разницу между интерфейсом и реализацией. Но если бы мне это было критично, то я именно это и спросил бы у человека. А если он скажет что знает что-такое Prefix tree, то ее реализации — другой вопрос. Если зашел разговор о алгоритмах и сложных структурах данных, то уже стыдно допускать что человек не понимает разницу между интерфейсом и реализацией и глупо придираться к словам чтобы тратить свое и его время. «О, Боже, когда я просил о структурах данных вы сказали RangeMap вместо TreeRangeMap — вон там дверь, в нашей компании не место таким как вы»

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

А еще, KD-tree, decision-tree, octree, fuzzy decision tree, 2D-hashmap, Red—black tree, summed area table, и пр. Вот только часто это производные от «ArrayList/HashMap», точнее построены на них.

И понятно что для словаря лучше использовать «Prefix Tree» и считать расстояние Левинштейна между строками на нем (с отсечением по уровню ошибки), чем прост все строки загнать в ArrayList и тупо проверять расстояние с каждой из строк, до упора. Вот только все эти структуры заточены под задачу и легко выводятся из стандартных.

И понятно что для словаря лучше использовать «Prefix Tree» и считать расстояние Левинштейна между строками на нем (с отсечением по уровню ошибки), чем прост все строки загнать в ArrayList и тупо проверять расстояние с каждой из строк, до упора. Вот только все эти структуры заточены под задачу и легко выводятся из стандартных.
Я так понимаю ты рассказываешь как решить задачу нахождения наиближайшей строки из множества к входной строке? Есть конкретный код который это делает? А то пока что выглядит не совсем понятно.

Вообще-то наоборот, поиск совпадения входной строки с одной из множества строк. тогда скорость поиска составляет O(log(N)) вместо целого O(N)
marknelson.us/...1/suffix-trees

Если решать обратную задачу то там никак не получится быстрее O(N), по сути фулскан.

С совпадением это очевидно, но ты же упомянул расстояние Левинштейна?

Есть код на Delphi который реализует метод конечных автоматов при поиске по дереву, но он под NDA.

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

заточены под задачу

И это хорошо, именно потому для таких задач лучше подключить какую-то гуаву и все написать кратко и очевидно, а не

выводятся из стандартных

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

Мы библиотеки разрабатываем, так что у нас есть свой внутренний пул структур. У нас нельзя guava.

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

Не получится выкинуть, так как саще всего используются структуры данных ArrayList, Array и 2D Bitmap. Ну и куча других структуру, часто которые нужно оптимизировать для увеличения произодительности.

Собственно специфика обработка изображений, распознавание/генерация баркодов и OCR (которая пока еще не вышла на рабочий режим).

Йду в монастир, бо ніколи в житті не чув більшості вжитих Вами термінів. Скажіть будь ласка, вони що, здебільшого стосуються якоїсь конкретної галузі програмування ? Чи, можливо, стосуються здебільшого теорії, і нечасто зустрічаються на практиці ?

Расстояние Левенштейна
ru.wikipedia.org/...ние_Левенштейна

Еще можно расстояние Хеминга между строками посчитать
ru.wikipedia.org/...тояние_Хэмминга

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

Попросили же — конкретные задачи а не абстракции

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

Хм, я вот недавно параллельно сериализовал дерево.
Как часто у вас стоит такая задача?
И, если не секрет, зачем оно вам понадобилось, какой формат и объем данных?

Just for lulz, дома. Сериализация может означать другую задачку, когда обработка одного узла действительно тяжеловесная. Просто меня терроризировать в треде начали — давай задачу, давай задачу. Если мы обсуждаем собеседование на просто девелопера, то лучше спросить как OneToMany замапить в Hibernate. И тестовое задание если подходящая ситуация соответствующее. А вот если прийдется дизайнить систему почти с нуля, на проекте много алгоритмов, то вот задача

Just for lulz, дома.
Просто меня терроризировать в треде начали — давай задачу, давай задачу.
Читайте внимательнее, вас просили дать задачу для ДЗ которая занимает 1-4 часа, соотносится с работой и при этом не нудная шо убейте.
А вот если прийдется дизайнить систему почти с нуля, на проекте много алгоритмов, то вот задача
Не задача, так как сначала надо показать что не подходят (для этой задачи) все популярные сериализаторы, которые есть для джавы. На практике, это маловероятно, так как слово параллельно предполагает большие объемы данных и требования по скорости, но тогда хранить их в дереве (при этом просто дереве, а не каком-то специфическом) не хорошо для памяти и той же скорости (это все счастье надо поднять из хранилища)
Делать архитектуру приложения с которой потом не будет проблем.
Таких людей нет. И я просил конкретный пример, а не абстракции :)
Способ мышления виден даже если кода до 1000 строк.
Угу. И сколько времени у вас уйдет на написание кода на 1К ЛЛОКов (логических ЛОКов), по новой задаче?
Грамотные операции и структуры данных, не классический ArrayList/HashMap-programming
1) Что не так с ArrayList?
2) Усложнение кода, и в том числе, применение узкоспециализированных структур — это первый шаг к увеличению вероятности «проблем с кодом». Чаще лучше пожертвовать Х% ЦПУ и ОЗУ, но при этом получить более простой код.
Что не так с ArrayList?

Ничего, все классно. Но насилуют его похоже для всех задач. Почти всегда вместо Set, причем иногда именно как множество, когда повторение — ошибка.

Чаще лучше пожертвовать Х% ЦПУ и ОЗУ, но при этом получить более простой код.

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

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

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

Почти всегда вместо Set, причем иногда именно как множество, когда повторение — ошибка.
Угу, есть люди без базового КС-образования, печально. Но таких можно отсеять на собеседовании, и ДЗ тут — оверинжениринг.

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

Александр, я правильно понял, это задание — цифроцикленный аналог «Hello, world!»?
Еще и свободный доступ к инету и хелпам. Если так, то Вы очень добрый человек.

Главная идея была отсеять явно слабых, так как тест этот — уровень 4-5 курса университета.
Если давать тесты посложнее — но был высокий риск не взять никого очень быстро, а программист был нужен на «вчера».
Кстати, результатами был очень доволен.

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

Главная идея была отсеять явно слабых, так как тест этот — уровень 4-5 курса университета.
Написать на C# small app: Выводить в цикле цифры от 1 до миллиона на форму.
Или я чего-то не понимаю, или это скорее уровень школы, а для тех у кого не было программирования — 1 курс, первая лаба.

вероятно предполагается, что многопоточность не объясняют на 1 лабе первого курса

Ты думаешь что предполагалось еще прочитать мысли интервьюера и догадатьша что прога должна быть многопоточной?

там иначе будет 1 а потом миллион. как-то так

там иначе будет 1 а потом миллион. как-то так
А апдейтить вывод при каждой итерации (или группе итераций)?
вероятно предполагается, что многопоточность не объясняют на 1 лабе первого курса
Угу, и работу с сетью. Очевидно же что потоки должны общаться через сеть!

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

Хватит этого.
msdn.microsoft.com/...s(v=vs.90).aspx

Конечно правильнее — многопоточность и это для синхронизации
msdn.microsoft.com/...ioncontext.aspx

Я в десктопном программировании нифига не понимаю, но где в этой задаче конкретно вылазит обработка событий?

просто если написать
for(i=1; i <=1000000; i++)
component.text = i.ToString();

то форма замерзнет и выведется только 1000000

Если сделать это в обработчике событий, то да.

В Winforms все обработчик событий:
— и подсчет
— и рендеринг
— и получение информации от устройств ввода.

И все в одной нити.

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

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

Ну так оно для любого десктопа. В QT или WxWidgets то же самое(синхронизация на основной).

Даже в Android это есть:
runOnUiThread
developer.android.com/....lang.Runnable
AsyncTask
developer.android.com/.../AsyncTask.html
И думаю, нечто такое же в iOS.

Просто разработка embedded, Desktop, Web — систем кардинально отличается. И веб разработчику в десктопе делать нечего.

Даже в Android это есть:
runOnUiThread
developer.android.com/.....lang.Runnable
AsyncTask
developer.android.com/.../Async
Там как то ничего про ексепшн при записи в контрол не написано, а написно что это просто сделано для того что бы программер не заморачивался со своими пулами потоков.

Запишите без синхронизации увидите вот такой вот екзепшен
rystsov.s3.amazonaws.com/...r/exception.png

Это впфный эксепшн, а я коментил твои ссылки по андроиду.

А щоб нічого не замерзало, потрібно просто в циклі прокачувати віндові повідомлення, щось на зразок ProcessMessage(не памятаю точну назву методу). Людина яка вфігачить для такого завдання окремий потік максимум на junior потягне. Бо багатопоточність тут як пяте колесо. До речі цю техніку ще з часів старого VB6 експлуатували що «не зависало».

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

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

Не обязательно. Если знаешь как в C# работает система обработки сообщений то можно и так
msdn.microsoft.com/...s(v=vs.90).aspx

Сори, я не вам хотел ответить.

Потоки какието придумали... Я бы по подобному описанию сделал бы текст бокс в который вывед бы строку «1,2,3,4,5........1000000». И вуаля — 5 строк кода и ТЗ выполнено — цикл в коде есть и на форме числа от одного до миллиона.

?

Потоки — что бы не блокировать форму.

A таймер для этого тестового задание использовать некузяво?

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

Очень много слов не по существу
единственное с чем согласен. причем от HR тоже. мне понравились последние 2 собеседования — 10-15 минут общения и рассказов о проекте и тестовое задание на 3-4 часа. причем задания по проекту, а не куета в вакууме

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

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

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

[переход на личности]
Александр, а что с взаимным ревью кода?
А то слухи идут что вы свой так и не показываете :)
[/переход на личности]

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

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

Я не про себя, а про собеседования вообще ;)
Пытаюсь форсить взаимное ревью в Украине :D

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

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

Гляньте в википедии значение термина NDA.

Предмет неразглашения может быть разный.

Неразглашение и интеллектуальная собственность — разные вещи.

Права которые вы отторгаете так-же зависят от контракта.

Право называтся автором во многих странах вообще неотчуждаемое.

Демонстрация исходников — не факт есть нарушение прав участников контракта, если в ходе демонстрации не нанесен ущерб правообладателю — ибо это не есть копирование и необязательно неправомерное использование.

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

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

для ЧП эти умолчания не катят... только договор

Ай молодец! =)

С ЧП обычно договора подписывают, где все оговорено.
Представляешь себе ситуацию: Заказали у тебя игру, ты ее сделал, получил деньги, а потом взял и вылил ты свою копию на Android Market и AppStore
---
Профит!
И кажись ты прав ибо через ЧП работаешь... НО! Когда пойдет дело в суд, любой вменяемый судья расскажет тебе, сколько лет будешь работать на сухарях и воде.

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

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

Самый известный пример на эту тему из америкосии: Novell против SCO, по поводу исходников UNIX’а.

по умолчанию все что сделано на работе — интеллектуальная собственность фирмы, если это не предусмотрено в договоре. ИС 1-е занятие.
Это по чьим законам? Например, в Калифорнии это как раз с точностью до наоборот — IP принадлежит непосредственному создателю (програмисту/художнику/фотографу) если договор не оговаривает другое, потому в егонных договорах всегда есть этот пункт.
Например, в Калифорнии это как раз с точностью до наоборот — IP принадлежит непосредственному создателю (програмисту/художнику/фотографу) если договор не оговаривает другое
пруфлинк?

не вижу сейчас на счёт штатов, ну вот статья о Канаде
translate.google.com.ua/...le8.html&anno=2

The general rule in Canada is that an employee will own his or her own invention unless there is a contractual duty to transfer the invention to the employer

в моем контракте оговаривается собственоость IP

У меня сложилось печатление что это касается изобретений сделанных в свободное время. Если это часть служебных обязанностей, то изобретение уходит работодателю: «the particular duties and responsibilities assigned to the employee include an obligation to invent things. If so, the employer will own it.»


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

Обязательно продолжу.
В достаточно большой массе проектов часть исходников не скрыта вообще (javascript and embedded languages) или легко доступна посредством декомпиляции. Все совать под гриф — это паранойя, а не профессионализм.

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

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

И еще нотка классики от юристов:
Если вы не можете проверить/принудить исполнение контракта — можете им подтереться.

В достаточно большой массе проектов часть исходников не скрыта вообще (javascript and embedded languages) или легко доступна посредством декомпиляции. Все совать под гриф — это паранойя, а не профессионализм.
Вы опять подменяете понятия, и лепите всё в кучу. Декомпиляция — это одно действие, а передача — это совершенно другое. Классификация этих действий совершенно различна.
Насколько я помню курс лекций — критерий эффективности мероприятий по обеспечению безопасности это не ваше, безусловно весомое мнение, а экономическая целесообразность.
И сколько стоит для предприятия классифицировать исходники как конфидент?
В переводе на популярный русский язык это означает следущее: Если программист имеет свободный доступ к исходникам (копию на своем компе), то защита секретности вышеуказанных исходников через контракт — это мастурбация.
Вы не хотите оказывать услуги юрист-консультанта для отечественных и зарубежных предприятий? А то, они в своём неведении продолжают мастурбироватьзащищать исходники. Ей богу, у Вас какой-то слишком зауженный кругозор. Защита секретов — это один из основополагающих столпов бизнеса. И если это не нужно для ваших проектов, проецировать на весь мир, по крайней мере очень глупо. Если предприятие считает, что исходники не конфидент, то туда ему и дорога, когда конкурент сделает копию, серьёзно отличимую от оригинала за один день тем же обфускатором, вместо того, чтобы разрабатывать и платить за разработку месяцами.
Если вы не можете проверить/принудить исполнение контракта — можете им подтереться.
Да ну? Я, допустим, знаю, что мне может быть, если стоит показать исходники, покрытые NDA, можно уезжать в деревню и заниматься веб-программированием, на большее уже никто никогда не возьмёт. Если допустить даже 1% вероятности, что тот, кому я показал исходники или кто-то из его окружения сольёт эту информацию и владелец этих исходников найдёт обнаружит этот факт, и даже, если последствия могут наступить только в 1% случаев, Вы будете по прежнему это делать? А я нет, ибо это не имеет смысла, я найду ещё пучок контор, которые не будут требовать исходники, зато буду жить без волчьего билета. Контора не проверяет и не принуждает исполнять контракт, меня в любом случае остановят возможные последствия, даже если не дай бог подведут моральные принципы.

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

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

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

Смотрите в свои NDA и на свою карьеру. Я знаю что я подписываю, и какие у меня права/обязательства. Рассматривать гипотетические примеры которые вы с неимоверной скоростью высасываете из пальца мне не интересно.

О передаче исходников никто не говорил — только о ревью — это раз.
Какая разница как называть передачу исходников третьим лицам и причём тут цель несанкционированной передачи?
Даже при правильной оценке рисков защита информации как правило стоит определенных потерь эффективности, при неправильной же оценке — затраты на защиту нихера не защищают, а ущерб наносят.
Примеры, пожалуйста. Как признание исходников конфидентом может снизить эффективность предприятия?
Спасибо за оценку кругозора чувак — это было мне нужно — я уже уловил что ты гуру бизнеса, права, и информационной безопасности — это три.
О, понеслось. Я нигде не утверждал, что я гуру, я с этим много работал в своё время. И подписывал я далеко не 100500, как Вы, а всего-лишь около 200 NDA, но с крупными корпорациями.
Смотрите в свои NDA и на свою карьеру. Я знаю что я подписываю, и какие у меня права/обязательства.
Я и так прекрасно знаю что мне делать :)

Ну посидит человек — посмотрит с моего ноута исходники — это передача? Ну ок.

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

Если же «признание исходников конфидентом» — это просто слова за которыми нихрена нет, то нихрена нет ни за вашими NDA, ни за вашей репутацией

Никто ничего не проецировал на весь мир/индустрию — человек делает вэб-проекты малыми командами.

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

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

А вместо разговора по существу все принялись мыслить о глобальном.

Ищешь толкового web-developer, а получаешь соображения сверхсекретных суперменов о роли права в индустрии

Ну посидит человек — посмотрит с моего ноута исходники — это передача? Ну ок.
Конечно, это передача третьим лицам.
Если «Конфидент» не таинственное слово для девочек, а часть политики безопасности, то компания ограничит допуск к материалам — разрабам компы без портов и выхода в интернеты (потеря продуктивности) и мониторинг внутренней сети (затраты), видеонаблюдение и мониторинг того что они делают(затраты),
OMFG, Вы даже путаете режимный допуск с конфидентом.
Если же «признание исходников конфидентом» — это просто слова за которыми нихрена нет, то нихрена нет ни за вашими NDA, ни за вашей репутацией
В этом случае наступает ответственность, государством определено четыре вида:
1) ответственность в рамках трудовых отношений;
2) гражданско-правовая ответственность;
3) административная ответственность;
4) уголовная ответственность.
И человек предлагает код ревью — не хочешь — не надо — можно удалить сверхсекретные куски — но проблемо
Кто определеляет какой кусок сверхсекретный, а какой нет?
А вместо разговора по существу все принялись мыслить о глобальном.
Вот именно, я как раз про кругозор и говорил. Не надо проецировать минорный бизнес на всю ИТ индустрию.

У нас в минорной индустрии и NDA помягче, и проекты попроще

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

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

Кстати, тут может быть неожиданный исход (как мне кажется). Вы показываете им кусок кода, а тут вопросы: «what is this code?» — «did you create it being employed?» — «did you sign the NDA with your employer?» — «yes» — «so you disclosed!!» — ах ты ж козел-нарушитель NDA!!! :) Мы тебе доверять не можем... иди лесом.

По моему, де компиляция попадает под статью, наравне с пиратством.

Да, но статьи разные.

Там имелось в виду, вначале купи на законных основаниях, а потом делай с ним что хочешь :)

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

Зачем Вы мне об этом говорите? :)

Ну я, например, сливал исходники знакомым, с разработок, что вели в украинском НИИ. Правда там NDA как такового не было.
От так и скажите на следующем собеседовании :)

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

Поправка для сверхсекретных разрабочтиков у которых все под NDA включая сам текст NDA:
Если вы отвергли все свои права — видимо оно того стоило. Это ваше счастье/беда.

ТС
прошу Вас — попуститесь.
компаний достаточно дофига чтобы найти другую.
перегнете палку и кандидат просто уйдет к другим.
или может вы можете предложить какие-то супер условия?
вы IBM? или Oracle?

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

Александр! Пишите ещё. Мне очень нравится вас читать.

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

Ну так оно почти так и называется :)
Я понял что на такие собеседования лучше не ходить.
Так что так собеседоватся я не буду.

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

Не понятно о чем статья.
Предположение:
Автор дал ДЗ на 20 рабчасов. Человек его взал, и за 20 рабчасов (3-5 дней) нашел другую работу (без подобных заморочек), при этом не ответив автору.
Соискатель № 2 послал автора.
Так по кругу.
И вот 20 февраля, 21:15 его это достало и он излил душу на ДОУ.

Я так и вижу хорошего програмиста, который 3-5 дней ничего не делает, а только пишет ДЗ для собеседования именно в Phenomena.
Я думаю что может быть в гугол или ФБ(ну или еще что то этого плана) — нашлись бы люди которые потратили время на ДЗ. А вот про Phenomena я только сегодня узнал...
Ну и сама схема класно выглядит:
Есть вакансия, ее надо закрыть, конечно как всегда «на вчера».
Есть 10 кандидатов. Все они приходят на в один день конечно же, а например с интревалом 1-2 дня(неделя). Каждый пишет задание.
Задание надо написать и принести. Плюс спроверить. Врезультате берут человека который начал писать задание первым. В это время второй, третий, четвертый тоже не спали и писали задание. Но они уже в пролете — потому что им дали задение позже.

Я думаю что Тестовое Задание по времени должно занимать час.
А лучше полчаса.
За это время можно написать кусок функционала.
Показать логику решения.
Показать стиль кодинга.
Дольше — трата времени.

Я думаю что Тестовое Задание по времени должно занимать час.
А лучше полчаса.
За это время можно написать кусок функционала.
Показать логику решения.
Показать стиль кодинга.
А пример можно? (Пока не особо приводят :( )

Куайн? Это — олимпиадная и никому не нужная вундервафля.

Например сделать пул конекшенов. Жизненно и позволяет узнать много интересного.

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

На С++ я предлагал реализовать перемножение в столбик (UPD:неотрицательных) целых чисел, записаных в файле в виде ASCII строк с результатом в виде ASCII строки в тот же файл.

На С++ я предлагал реализовать перемножение в столбик (UPD:неотрицательных) целых чисел, записаных в файле в виде ASCII строк с результатом в виде ASCII строки в тот же файл.
А чем будет заниматься испытуемый на работе?

Ваять на плюсах код под спесифисское портативное устройство, и происходило это лет 5-7 назад.

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

Тогда следующий вопрос(ы):
Сколько памяти нужно для входного Гига.
Ну или "Сколько можно будет скормить если памяти свободно 1Гб(или 512 мб)
:)

Тогда следующий вопрос(ы)
А чем же будет заниматься соискатель? Обработкой больших файло? Или (более вероятно) КРУД + странная бизнес-логика?

Достаточно часто там где БЛ — там и большие обьемы данных.
Я дал пример без привязки.
Ход размышлений соискателя и его мысли будут видны.
Это лучше, наверно, делать на не стандартной задаче.
Хотя если нужен «кодер» — то не нужно. Достаточно знания синтаксиса?....

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

Ход размышлений соискателя и его мысли будут видны.
Так а зачем ДЗ? Нельзя это увидить на собеседовании?

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

Мне больше нравится «Тестовое задание».
ТЗ конфликтует с «тех. задание»

В духе «даздрапермы» можно сокращать как «тестзад» и «техзад» :)

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

Ну а что спрашивать?
Как формочку в формочке «нарисовать»?

Я не гуру в собеседованиях.
(я вообще собеседованиями не занимаюсь :) )
Ваш вариант задания?

Ваш вариант задания?
Не задавать ДЗ, а нормально провести собеседование :)

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

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

Перемножить 2 двоичных числа тремя способами на микроассемблере. Вотъ

пора к медалькам и языкам добавить «шляпа и тысяча чертей!»

Знаете, когда-то давно когда я в первый раз проводил собеседование на работу и оказался по ту сторону стола, я тоже почувствовал свою важность и сразу же принялся рисовать обложку для своей будущей книги «Искусство эффективного собеседования»

Это всё пагубное влияние руби и эппла на головной мозг.

Вылить столько непрофесионализма и еще этим гордиться... Фи

Мне всегда было интересно, что заставляет человека написать вот такое? Для чего? Захотелось поумничать и поделиться со всеми уровнем своего ЧСВ?
Это ж надо умудрится написать по каждому пункту такую вот чушь.

ну вы чего. он же руби нинзя

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

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

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

Слишком много восклицательных знаков и хамства. Хорошего разработчика таким не заманишь.

Все знают подходящего для него разработчика — kuchyn.com.ua/...-success-story

Одна из ярких цитат: «Знаете какие у меня были глаза, приблизительно вот такие о_О Первая мысль была — „на обиженных воду возят“. Ну вот кто мне скажет, что это за ху*ня была? Мы в песочнице играем и Вася у Пети пасочку отобрал, либо совместно делаем деньги для многомиллионного бизнеса?»

Если Вы такой принципиальный — OpenSource Ваш выход. Покажите мне то что Вы умеете! Я хочу видеть Ваш github! Я хочу видеть там код! Вы подниметесь еще на одну ступеньку в рейтинге в моём понимании, если будете приносить пользу другим. Вы же используете Ruby On Rails/Zend/Etc! Почему бы не отдать долг этим проектам? Они Вас кормят!
1.Почему кто-то что-то обязан делать бесплатно? Для чего?
2.Суть опенсорса вроде как раз в том, что долги отдавать не надо

Что бы не быть банальным потребителем?

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

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

Тем более, если так.

Ну это Вы так делаете. Хотя бы так. А большинство только потребляют и всё. Зачем париться?

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

2.Суть опенсорса вроде как раз в том, что долги отдавать не надо
Бородатый считает по другому (см ГПЛ).
Но тут дело в другом, автор сам может решать надо ли «платить» или нет, а если надо то как (некоторым просто хватает упоминания)

Если клиент просит подписать NDA, то мы подписываем его всегда! и никаких негативных последствий не было, наоборот только лояльность со стороны клиента.

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

Чего Вам стоит подписать договор, получить как правило средне-строкового клиента и работать на здоровье? Но, нет, блин! Мы же на 5 копеек дороже! Мы же в свои 20+ уже сеньор архитектор, всякую НДА подписывать не будем, а вдруг нас в Стокгольмский арбитраж в бобике ППСники увезут?

Какая цель от программирования? Зарабатывать деньги? Сколько Вы знаете примеров подачи в суд со стороны клиентов из-за нарушения НДА? Я лично не знаю ни одного.

Работайте и зарабатывайте! Все остальное придет само собой.

Когда приедут на бобике уже будет поздно что-то решать... Поэтому лучше подумать заранеё)

Всегда делал дизайн для тест тасков, бутстрап не юзал правда. ИМХО лучше пусть увидят как я сам верстаю а не баян =)

Ну если Вы знаете как это делать быстро и эффективно то в чем проблема?

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

Мне вот интересно что все так серьезно поддерживаются NDA? Что правда?! Вы живете по букве закона?! НЕ ВЕРЮ! Да вашему бывшему(?) работадателю в принципе всё равно кому Вы покажите кусок своего кода.
Странные у вас суждения. К примеру, я писал защиту для проекта стоимостью в много денег. Показать этот код кому-то вне компании?! Bitch please! Сомневаюсь, что ваша компания была бы в восторге от такого хода экс-сотрудников, так почему же вы требуете этого от других?

Я не сказал показать ВЕСЬ код, который делали и другие и тд и тп. Показать часть своего, родного. В чем проблема? В 100 строк кода будет весь проект, ой его у нас украдут.... Бредни параноиков.

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

В NDA не написанно что — «100 строк кода можете показывать на собеседованиях».
Принимайте конечно же всех кто вам про прошлый проект расскажет и код покажет.
Это очень ответсвенные и честные люди.

Интересно, вы когда обещаете ЗП на собеседовании не выплачиваете ее потому что:

Вы живете по букве закона?! НЕ ВЕРЮ!

Или не сдали проект заказчику со словами:

Вы живете по букве закона?! НЕ ВЕРЮ!
Мне вот интересно что все так серьезно поддерживаются NDA? Что правда?! Вы живете по букве закона?! НЕ ВЕРЮ!

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

Тестовое задание?
Вы смешен, какой шанс что я не отдам его другу-товарищу?
Да и вообще, зачем человеку у которого 10-20 предложений пройти интервью, тратить на всякую фигню свое время? Вакансия — в корзину.

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

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

С предложением $3-4k вам в конец очереди..

Вы предлагаете больше? Мне просто интересно

Можно ссылочку на вакансию где платят больше?

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

Я вообще в других реалиях живу и работаю. Тут с таких цифр (после налогов) джуниоры начинают.

Ну так я не говорю о Вашем Там, а о Нашем Тут.

О вашем тут я тоже наслышан. Человек, у которого есть код на github, пригодный для показывания, разговор начинает от $4k.

Если Вам так ненравиться предложение о NDA — возможно я не так выразился. Я говорю о том что люди вообще свой код не показывают, под NDA он или нет. Я незнаю почему... Это так сложно? Даже показать код с предыдущего тестового задания. Или тестовые задание тоже под DNA?

Я говорю о том что люди вообще свой код не показывают, под NDA он или нет. Я незнаю почему...
Рабочий код закрыт, свой или не пишет (на работе интересного хватает) или не соответствует пониманиям о качестве.
Даже показать код с предыдущего тестового задания. Или тестовые задание тоже под DNA?
Кстати, все кто говорят что они знают классное ДЗ, но не расскажут, этим и мотивируют свой отказ :)

С «кодом под NDA» может кстати быть более банальная проблема — его фиг вытащишь шобы показать :)

Гопстопия позакрывала все дырки что ли? ;)

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

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

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

А все ИМХО потому, что весьма часто в аутсорсе берут мидла туда, где справился бы джуниор, сеньора туда, где бы справился мидл и т.д.

А потом получается что в этих тайтлах сам черт ногу сломит. Средний уровень по больнице у всех разный, но синьйоров продавать хочется :)

грамма-наци читали и плакали..

Саш,
Ты не одинок в этом плане. Когда человека отфутболят на 10 собеседованиях в разных конторах, то люди начнут задумываться, что что-то здесь не так, а пока пока есть горячие вакансии и охота за головами, то и будут такие вот собеседования и кандидаты.

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

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

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

У украинцев нет сиест и прочего, просто, в отличии от тех же «северян», своеобразное отношение к правилам и инструкциям. Которое вы, к слову, здесь же и продемонстрировали вопросом про NDA.

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

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

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

если кто-то попросит меня показать код, который под nda — я сочту это провокацией (ну или проверкой на вшивость)

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

Мне кажется что NDA — это больше «Я обещаю не рассказывать» а не «Рассказывать — это нарушение», то есть человек вроде как нарушает свое обещание.

Код если честно без понимания логики его работы в полном объеме ничего не стоит.

Возможно, но _обещание_ - стоит же чего-то?)

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

Вы скажите своему иностранному боссу, что не видите ничего плохого в нарушении НДА.

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

А контракт? Тоже мусор?

Это печально©

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

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

Дима, Вы имеете ввиду случай с одним из проектов J.B. ?

Вы всегда выполняете свои обещания?

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

Скажу Вам по секрету что таких как Вы меньшинство. И в этом проблема.

вы чо, серьезно?
если вы му.дак и во время обещания жене вернуться к, например, 20:00, вы думаете: «да пошла ты в ж...у! специально буду сидеть на остановке, но заявлюсь домой в 23:00», то НДА ту ни при чем. Му.дакам позволено всё. или... если вам, скажем, пришлось вызывать милицию и дожидаться её — вы тоже ей заявите: «а ты, с...ка, борщ не сварила. ты тоже обещание не выполнила!! ха!!11»?

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

Александр Симонов. Надо запомнить, если окажусь в столице.
PS: на хабре не проканало?

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

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

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

Вы пользуетесь всеми прелестями GPL и MIT, но ничего не отдаете взамен.
1) С ГПЛ так не получаетсо. Надо выкладывать, там автор решил шо надо. То есть надо или открывать код или, как делает большинство, не пользоваться.
2) С МИТ проще. Кстати, вы ее читали? Та че сказано? «Бери и вали отсюда».
А то что вы говорите это принуждение к -дружбе- опенсорсу.
Выкладывать код — это право человека (автора), а не обязанность.

Да кто вы вообще такой, чтобы ради вас нарушать NDA?

Есть разница между качанием торрентов и нарушением NDA. Вам выше уже попытались объяснить. Часть людей вообще не считает качание торрентов преступлением. То, что это преступление — им навязало государство, они не соглашались на это. У них нет выбора. Когда же ты соглашаешься на строгий NDA — ты сознательно договариваешься на условия, которые обещаешь на нарушать.

Лол так береш кусок кода который никак не скомпрометирует на кого ты роботал.
Или у вас там все переменные с префиксом названием компании?

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

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

Хм ну если так то можно сесть разок и написать какую-то либу и на гитхаб залить. Что-то маленькое но хитрое, ну например Понг на ДжС =)
Кстати имхо понг очень хорошее тестовое задание, на канвасе/свг/флеше его написать можно за часа 2, а там можно себя со всех сторон показать =)

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

Понг на ДжС =)
Кстати имхо понг очень хорошее тестовое задание, на канвасе/свг/флеше его написать можно за часа 2, а там можно себя со всех сторон показать =)
А вот это я почти не понимаю, простите. Просто не в теме.

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

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

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

Хм ну если так то можно сесть разок и написать какую-то либу и на гитхаб залить. Что-то маленькое но хитрое, ну например Понг на ДжС =)
Угу, иду знать я на позицию бекэнд-разработчик, там треды/локи/шмоки и показываю пинпонг на ДжС.

Все зашифровано и каждая строчка кода уникальна как по стилу так и по функционалу.

А код вы так шифрами и пишете?
Скопипейстить низзя?

У нас всё на гитхабе. И гитхабовцы по ночам читают сырцы :)

Предыдущий ответ был со знаком «ирония».

Детский сад.

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

NDA — не закон. Законы вы лично не подписываете.

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

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

Две последние буквы в заголовке явно лишние. Более гармонично смотрелось бы «Как не надо собеседовать».

Я хочу видеть Ваш github!
И я ваш! От только в профиле и на вашем сайтиге его почему-то нима.
Мне вот интересно что все так серьезно поддерживаются NDA? Что правда?!
Вы живете по букве закона?! НЕ ВЕРЮ!
«лол просто лол» тут не подходит. Сами то поняли что вы говорите и к что требуете?
Если я даю Вам задание я хочу его получить готовым. Я Ваш Пользователь.
Хм ... как-то много букв «я» на единицу текста.
Но все же по тестовым заданиям (ДЗ), оч люблю эту тему:
Вот расскажите какие вы даете ДЗ и во сколько времени его оцениваете.
Тестовое задание придумано для того что бы посмотреть как Вы делаете работу
А испытательный срок (ИС) для чего тогда?
snapplr.com/xzmj — это не ссылка на гитхаб?
Да это ссылка на гитхаб, не заметил. Посему повторю ваши же слова:
Я Ваш Пользователь. Может быть и единственный, но пользователь.
Я хочу получить продукт которым удобно пользоваться. На который приятно смотреть.
Пояснять надо к чему это я?

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

А как такое можно не заметить?
Таки надо пояснять. У вас по центру белый прямоугольник, на черном (темном) фоне и в верхнем углу темная полоса (при том довольно отдаленная от центра внимания) — это чисто по расположению.
По контексту: есть разделы ABOUT, CONTACT и именно там ожидаются таки ссылки.

ИС срок придуман для того что бы посмотреть что человек вольется в коллектив. Каким бы разработчик не был «перцем», но он не умеет работать в коллективе — он команде не нужен.

ИС срок придуман для того что бы посмотреть что человек вольется в коллектив.
А почему бы не проверить проф. уровень за эти же 1-3 месяца? Для чего давать ДЗ? Может
Хватит тратить ... чужое время на ветер.
Кстати, жду ответ на вопрос:
Вот расскажите какие вы даете ДЗ и во сколько времени его оцениваете.

Достаточно простое задание. на 20 часов максимум. Я предлагал оплачивать ДЗ, но все крутят носом, типа там всё просто и нету смысла.

на 20 часов максимум.
Всего-то 20 часов своей жизни (а если учесть переключение контекста, то еще 6-8 сверху)
Я предлагал оплачивать ДЗ, но все крутят носом, типа там всё просто и нету смысла.
Потому что ДЗ должно занимать 1-4 часа (скорее 1-2).
Оплата мало влияет, если у человека есть что кушать. То что вы предлагаете надо решать путем ИС (и эффективность будет выше).
Ну и приведите пример такого ДЗ, может в нем таки нету смысла.

Не сочтете 20 часов многовато для «абы пописать код».
20 часов — это 2.5 ПОЛНЫХ рабочих дня...
+ как сказали ниже на «переключение контекста» + еще рабочий день итого имеем 3.5 дня.
Если я работаю в компании и меня просят потратить это же время на написание тестового приложения ( не столь важно чего ), я буду писать так как мне за это платят и не вырывают из моего рабочего процесса.
А просто так потратить уйму времени впустую, что бы услышать «Вы нам не подходите» без обьяснения каких-либо причин — бред...
1-3 часа вполне достаточно для показа кода и «полета мысли».

Ну да лучше сказать человеку «Мы Вас берем», проработать с ним две недели, посмотреть что он не работает так как надо и уволить. Очень правильно и не тратиться время человека на тестовое задание.

20-ти часовое тестовое задание позволяет узнать ВСЕ о кандидате ?
И как за указанный промежуток времени определить что человек будет работать

так как надо
?
Посмотреть код и направление мысли можно и за 1-3 часовое задание...

Не всё, но достаточно что бы понять что и как у него в голове. И как он относиться к заданиям. Даже умение поиска в google тоже имеет значение. А что за час узнаешь? Логику в голове? А в реальном коде? Блин на railsrumble.com за два дня делали потрясающие штуки. А тут за 20 часов сделать сотую часть того что делают на румбле.

Ну в принцыпе так вы наберете только джуников у которых оферов нет. Задания какие были дольше 2 часов или какие то задачки стандартные которые писать надо долго а думать еще больше никто с уважением к себе делать не будет ради какой-то конторы.
Я за 20 часов(!) полноценные сайты делал, зачем мне нужно столько времени выбросить на таск который попадет в корзину потом?
Вы так из 15-20 тест тасков на халяву весь проект соберете

Было бы из чего собирать. Те кто нормально сделали таски сейчас работают у нас и не жалеют.

Не всё, но достаточно что бы понять что и как у него в голове.
Пусть чувак пробежит 100-метровку, справится — на марафон пойдет. Так что ли?
посмотреть что он не работает так как надо и уволить.
1) От для того чтобы не 2 недели, а 2 месяца и надо собеседование.
2) После выполнения «абстрактного» ДЗ, вы гарантируете что человек будет классно работать на реальном проекте?
Достаточно простое задание. на 20 часов максимум.
Бугага, простите.
Всего 20? Что ж вы так, на 200 давать надо, нечего давать расслабляться! :D

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

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

Підписатись на коментарі