Re: Тестовые задания
От: DorfDepp  
Дата: 04.06.11 17:46
Оценка: +1 :))
Тестовые задания вообще давать не нужно. Эта глупость только в России распространена. Видимо, потому что есть только программисты, застрявшие на уровне программирования, и ищут они себе подобных. А разработчиков, переросших этот уровень, с правильными приоритетами почему-то не выводится.

Как раз то, о чем все говорят. Российские программисты могут быть хорошими кодерами, но деловой ориентации у них нет.
Re[3]: Тестовые задания
От: kosmik Россия http://www.linkedin.com/in/kosmik
Дата: 06.06.11 19:36
Оценка: +1 -1 :)
ПМ>Я всегда думал, что вакансии, в которой есть тестовые задания, предназначены для студентов старших курсов. Я не прав?

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

Пока что никто не привел ни одного аргумента, почему не нужно так делать кроме:
1. Не хочу делать тестовое задание (нет времени, нет мотивации, самомнение не позволяет, просто не хочу)
2. Не знаю как интерпретировать результат задания.
Re[12]: Тестовые задания
От: Kerk  
Дата: 15.06.11 10:45
Оценка: -3
Здравствуйте, Nik_1, Вы писали:

K>>Если для вас любой разработчик с адекватным ЧСВ — студент, то пусть так.


N_>Неадекватное ЧСВ тута какраз у собеседующего, а не разработчика Он хочет чтобы сыкономить себе час потратить впустую часов 20 кандидата. Работодятлы с таким ЧСВ, которые считают что им еще доплачивать должны за честь работать уних идут лесом


Отличный индикатор того, что кандидат не подходит. Подходящий потратит не 20 часов, а, скажем, 5. Какие оправдания в последствии придумает для себя отсеянный кандидат — его личное дело. Студенты, возмущающиеся, что им дали тестовое задание на 2 недели непрерывной работы там, где опытному человеку достаточно вечер посидеть, бывают, с этим ничего не поделаешь.
Тестовые задания
От: Ellin Россия www.rsdn.ru
Дата: 04.06.11 17:31
Оценка: 1 (1) +1
После хождения в течении последнего десятка лет по собеседованиям меня осенило! Тестовые задания выдаваемые для решения на дом нафиг не нужны!
Можно прямо в офисе с помощью вопросов выяснить чего стоит человек. Либо дать анкету с короткими вопросами по ключевым моментам.
Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?
Re: Тестовые задания
От: TimurSPB Интернет  
Дата: 05.06.11 10:37
Оценка: +1 -1
Здравствуйте, Ellin, Вы писали:

E>После хождения в течении последнего десятка лет по собеседованиям меня осенило! Тестовые задания выдаваемые для решения на дом нафиг не нужны!

E>Можно прямо в офисе с помощью вопросов выяснить чего стоит человек. Либо дать анкету с короткими вопросами по ключевым моментам.
E>Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?\

Да просто тут значительная часть народа на КЫВТе уже не мальчики. И ищут работу программистом в роли сеньер и выше, или прожект-менеджерами. А давать человеку с опытом 5+ лет тестовое задание — это бред и трата времени. Тем более что если человек трудился над крупными проектами то с ним трудно в этом плане. На программу объемом в человеко-день он начнет анализировать саму постановку задачи. Мозги будет парить с уточнением требований. Типа "Для решения задачи вполне достаточно ФП, а ООП тут лишнее. А что значит оптимальное решение? Какой критерий оптимальности, на каких исходных данных? А каков объем данных? А можно ли считать решение O(log(N)) достаточным для..." В ветках в стиле "оцените тестовое задание" обсуждение чаще всего сводится к коллегиальному решению "постановка задачи — говно". Проще просто поговорить о том где работал, чего достиг. А по профессиональной части задать пару вопросов аля "виртуальный деструктор".
А вот специалистам начинающим карьеру можно и дать задачку на дом. Во первых, проверить способен ли он это сделать вовремя, нормально оформить, и главное пояснить свой способ решения задачи. Если есть ошибки в решении, то можно обсудить их с кандидатом — отличный тест на адекватность, способность к сотрудничеству и желание двигаться вперед.
Make flame.politics Great Again!
Re[3]: Тестовые задания
От: zubr Россия  
Дата: 09.06.11 06:29
Оценка: +2
Здравствуйте, alf_kadett, Вы писали:

_>Нетрудно догадаться, что успешному кандидату легко можно оплатить потраченное время: на фоне стоимости найма это копейки. Так что пробуйте договориться, дел-то.


Я обычно не стараюсь даже — предлагают если дом задание, то отказываюсь — у меня дома столько прекрасных вещей и летом и зимой аж дух захватывает.
жена, кошаки, велики, сноуборды — :D
Re[9]: Тестовые задания
От: Kerk  
Дата: 15.06.11 12:59
Оценка: -2
Здравствуйте, kosmik, Вы писали:

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


K>Вас почитать так компании типа вот этой http://news.hereisthecity.com/2009/12/25/52_interviews_at_goldman_sachs/ должны сплошь из студентов состоять


Суперпрофи в лице Nik_1 этой говноконторе точно не заполучить!!!
Re: Тест на раба в себе
От: VovkaMorkovka  
Дата: 04.06.11 18:28
Оценка: 3 (1)
Здравствуйте, Ellin, Вы писали:

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

Это же относится и к полиграфу, и к дресскоду и к тому подобным вещам.
Re[5]: Тестовые задания
От: Abalak США  
Дата: 14.06.11 17:36
Оценка: 2 (1)
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, Abalak, Вы писали:


A>>Ну с з/п точно не кинут Проект вроде тоже интересный и не старый. Хотя их заморочки с процессом найма мне тоже не полностью понятны, просто было уже жаль бросать и позиция полностью соответствовала моим ожиданиям.

E>Ты код то видел ? Во всех компаниях по их словам проекты мегаинтересные, написанные высочайшими профессионалами, ну и все компании — всемирно известные лидеры .

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

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


Я с твоим коллегой пива не пил, так что не знаю

E>Вообще, у меня тут недавно мысль появилась. Если на собеседовании требуется писать код на бумажке, то с наибольшей вероятностью этот код на бумажке напишет студент, который не привык к системам контроля версий, не привык к среде разработки и ее автоматическим рефакторингам. Либо наоборот динозавр, который настолько привык писать код в vi, без рефакторинга, без тестов, что переучиваться уже нет никакого желания. Соответственно и код будет соответствующий в этой мегафирме .


Связь со студентами и динозаврами не прослеживаю .
Знаешь, претендуя на з/п выше рынка в одном из самых высокооплачиваемых мест на планете от меня не убудет написать несколько строк на бумажке, Там даже думать не особо надо было, все лежало уже в подкорке. Задания по большому счету были на стиль кодинга и знание основных приемов и где их применять, например написать дженерик метод или простейший метод, но в котором обязательно надо было замутить синхронизацию (естественно ни о дженерике, ни о синхронизации в тексте задачи не упоминалось). Был еше простейший алгоритм, но не из самых распростаненных. Несколько жизненых задач по сиквелю, при решении которых наши доблестные Прасады и Кумары поперли бы клепать тонны временных таблиц, хотя задача решается одним селектом и т.п.

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

E>Почему студент — ибо не отвык еще лабы защищать, по крайней мере надо мной в студенческие годы издевались требованиями писать на бумажке. Тогда еще это было оправдано, ноуты мало у кого были, да и с техникой нормальной была напряженка, я еще СМки застал и System V.


Я описал задания вкратце. Нафига там ноут, ума не приложу.

E>ИМХО все эти политики найма, тесты и все такое — черти какое legacy, продолжающееся уже черти сколько десятков лет. Очень система медленно реагирует на изменяющиеся требования к навыкам. Соответственно — показатель черти какой бюрократии это все. Сейчас уже до собеседования стараюсь узнавать, практикуется ли написание кода на бумажке. Если практикуется — ну, я вам не подхожу, я на бумажке только расписываться умею, максимум еще набросать алгоритм, то такими каракулями, что кроме меня там хрен кто разберется .


Вот скажи мне ты не сможешь на бумажке написать строку

Interlocked.Increment(ref counter);

?

Я встречал случаи, когда человека готовы были взять только по резюме, но о нем слышали уже (конкретно на RSDN ) и ошибиться было трудно, если же ограничиваться только беседой, то есть риск в итоге нанять профессиональных собеседовальшиков, которые тебе песен напоют. Шанс будет меньше если устраивать национальный ценз, но тут тоже засады сплошь и рядом.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[3]: Тестовые задания
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 06.06.11 07:04
Оценка: 1 (1)
Здравствуйте, Паблик Морозов, Вы писали:

ПМ>Здравствуйте, DorfDepp, Вы писали:


DD>>Тестовые задания вообще давать не нужно. Эта глупость только в России распространена. Видимо, потому что есть только программисты, застрявшие на уровне программирования, и ищут они себе подобных. А разработчиков, переросших этот уровень, с правильными приоритетами почему-то не выводится.


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


ПМ>Я всегда думал, что вакансии, в которой есть тестовые задания, предназначены для студентов старших курсов. Я не прав?


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

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

Еще есть вариант тестовых заданий для того чтобы потешить самолюбие экзаменующего. Явный признак таких задач: нечеткая формулировка, требование знать кучу тонкостей языка\платформы, чтобы более-менее нормально решить.
Re: Тестовые задания
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 04.06.11 18:31
Оценка: :)
Как тонко подмечено, Кэп!
Re[2]: Тестовые задания
От: MasterZiv СССР  
Дата: 06.06.11 13:30
Оценка: +1
On 04.06.2011 21:46, DorfDepp wrote:

> Тестовые задания вообще давать не нужно. Эта глупость только в России

> распространена.

Нет, тут ты неправ. Иностранцы тоже бывает дают.
Posted via RSDN NNTP Server 2.1 beta
Re[4]: Тестовые задания
От: Паблик Морозов  
Дата: 07.06.11 12:20
Оценка: +1
Здравствуйте, kosmik, Вы писали:


ПМ>>Я всегда думал, что вакансии, в которой есть тестовые задания, предназначены для студентов старших курсов. Я не прав?


K>Почему же? Если, допустим, ищется senior developer, почему бы не проверить как он решит задачу, связанную с необходимостью подумать, написать и отладить кусок кода?


Если senior developer ищется среди бывших таксистов, то такая проверка может иметь смысл. Хотя всё равно не понятно, как умение написать кусок кода за 15-20 минут покажет способность человека выполнять обязанности сеньёр дивелопера.
Re[4]: Тестовые задания
От: elmal  
Дата: 14.06.11 06:46
Оценка: -1
Здравствуйте, Abalak, Вы писали:

A>Ну с з/п точно не кинут Проект вроде тоже интересный и не старый. Хотя их заморочки с процессом найма мне тоже не полностью понятны, просто было уже жаль бросать и позиция полностью соответствовала моим ожиданиям.

Ты код то видел ? Во всех компаниях по их словам проекты мегаинтересные, написанные высочайшими профессионалами, ну и все компании — всемирно известные лидеры . Тут как то один коллега как то свалил вот в такой интересный проект — там такой говнокод оказался, что убежал через полгода, причем на старую работу, и посчитал, что в рай попал .
Вообще, у меня тут недавно мысль появилась. Если на собеседовании требуется писать код на бумажке, то с наибольшей вероятностью этот код на бумажке напишет студент, который не привык к системам контроля версий, не привык к среде разработки и ее автоматическим рефакторингам. Либо наоборот динозавр, который настолько привык писать код в vi, без рефакторинга, без тестов, что переучиваться уже нет никакого желания. Соответственно и код будет соответствующий в этой мегафирме .
Почему студент — ибо не отвык еще лабы защищать, по крайней мере надо мной в студенческие годы издевались требованиями писать на бумажке. Тогда еще это было оправдано, ноуты мало у кого были, да и с техникой нормальной была напряженка, я еще СМки застал и System V. Учитывая инерционность образования, предполагаю, что сейчас учат тому же самому и такими же методами, программа почти не поменялась. По крайней мере и большим удивлением я узнал, что в ИТМО до сих пор по предмету "компьютерная графика" изучают особенности ega режима, и лабы делают на ассемблере, естественно что под DOS . В мое время это довольно актуально еще было, но сейчас ...
ИМХО все эти политики найма, тесты и все такое — черти какое legacy, продолжающееся уже черти сколько десятков лет. Очень система медленно реагирует на изменяющиеся требования к навыкам. Соответственно — показатель черти какой бюрократии это все. Сейчас уже до собеседования стараюсь узнавать, практикуется ли написание кода на бумажке. Если практикуется — ну, я вам не подхожу, я на бумажке только расписываться умею, максимум еще набросать алгоритм, то такими каракулями, что кроме меня там хрен кто разберется .
Re: Тестовые задания
От: Alexey_VL  
Дата: 04.06.11 18:00
Оценка:
Здравствуйте, Ellin, Вы писали:

E>После хождения в течении последнего десятка лет по собеседованиям меня осенило!


Десять лет не можете пройти собеседование?%))))

А вообще, вполне себе этап, чтобы посмотреть как соискатель будет выполнять работу. Как вариант можно просить прислать кусок своего кода, но тут могут быть проблемы, так как его еще надо написать, а тестовое задание как раз задает область и тему которая интересна работодателю. Если подходить к поиску тщательно, я бы включал это как один из первичных фильтров.
Мафиозная диктатура это нестабильность. Если не мафиозная диктатура, то Конституция и демократия.
Re[2]: Тестовые задания
От: Ellin Россия www.rsdn.ru
Дата: 04.06.11 18:14
Оценка:
Здравствуйте, Alexey_VL, Вы писали:

A_V>Здравствуйте, Ellin, Вы писали:


E>>После хождения в течении последнего десятка лет по собеседованиям меня осенило!


A_V>Десять лет не можете пройти собеседование?%))))

Да! Десять лет не могу пройти собеседование. Что тут смешного?

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

Все наоборот. Проще взять кусок своего кода и отослать (10 секунд) либо фигашить для каждого работодателья какую-то бестолковую хренатень. Перечислять диапозоны ip адресов, сортировать скобки и т.п.
Re: Тестовые задания
От: hlt Россия  
Дата: 04.06.11 18:19
Оценка:
Здравствуйте, Ellin, Вы писали:
E>Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?

Мне как-то ТЗ на пяти страницах выдали. Хорошо, что работодатели свою неадекватность таким образом сразу демонстрируют!
Re[3]: Тестовые задания
От: Alexey_VL  
Дата: 04.06.11 18:19
Оценка:
Здравствуйте, Ellin, Вы писали:

A_V>>Десять лет не можете пройти собеседование?%))))

E>Да! Десять лет не могу пройти собеседование. Что тут смешного?

Ээ.. Если это не шутка, то я в шоке

E>Все наоборот. Проще взять кусок своего кода и отослать (10 секунд) либо фигашить для каждого работодателья какую-то бестолковую хренатень. Перечислять диапозоны ip адресов, сортировать скобки и т.п.


Ну, я и говорю — это как вариант. Хотя если дают задание (небольшое — на пару часов), то тоже норм, имхо.
Мафиозная диктатура это нестабильность. Если не мафиозная диктатура, то Конституция и демократия.
Re[4]: Тестовые задания
От: Ellin Россия www.rsdn.ru
Дата: 04.06.11 18:36
Оценка:
E>>Да! Десять лет не могу пройти собеседование. Что тут смешного?
A_V>Ээ.. Если это не шутка, то я в шоке
Нет, это не шутка — я на полнейшем серьезе!
Re[5]: Тестовые задания
От: Alexey_VL  
Дата: 04.06.11 19:33
Оценка:
Здравствуйте, Ellin, Вы писали:

E>>>Да! Десять лет не могу пройти собеседование. Что тут смешного?

A_V>>Ээ.. Если это не шутка, то я в шоке
E>Нет, это не шутка — я на полнейшем серьезе!

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

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

Задачки всякие на смекалку тоже можно натренироваться решать — тут на форуме есть целый раздел с ними.
Мафиозная диктатура это нестабильность. Если не мафиозная диктатура, то Конституция и демократия.
Re[6]: Тестовые задания
От: Ellin Россия www.rsdn.ru
Дата: 05.06.11 06:21
Оценка:
Спасибо за совет. Буду тренероваться, пожелай мне удачи!
Re[2]: Тестовые задания
От: Паблик Морозов  
Дата: 05.06.11 10:11
Оценка:
Здравствуйте, DorfDepp, Вы писали:

DD>Тестовые задания вообще давать не нужно. Эта глупость только в России распространена. Видимо, потому что есть только программисты, застрявшие на уровне программирования, и ищут они себе подобных. А разработчиков, переросших этот уровень, с правильными приоритетами почему-то не выводится.


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


Я всегда думал, что вакансии, в которой есть тестовые задания, предназначены для студентов старших курсов. Я не прав?
Re[7]: Тестовые задания
От: Wolverrum Ниоткуда  
Дата: 05.06.11 11:31
Оценка:
Здравствуйте, Ellin, Вы писали:

E>тренероваться

Удача ушла в бессрочный отпуск.
Re[2]: Тестовые задания
От: 0x7be СССР  
Дата: 05.06.11 18:42
Оценка:
Здравствуйте, hlt, Вы писали:

hlt>Мне как-то ТЗ на пяти страницах выдали. Хорошо, что работодатели свою неадекватность таким образом сразу демонстрируют!

Вау!
А кто это был, если не секрет?
Re[2]: Тестовые задания
От: Handie  
Дата: 07.06.11 06:11
Оценка:
В ветках в стиле "оцените тестовое задание" обсуждение чаще всего сводится к коллегиальному решению "постановка задачи — говно". Проще просто поговорить о том где работал, чего достиг. А по профессиональной части задать пару вопросов аля "виртуальный деструктор".

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

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

Мне понравилась методика в Яндексе, вот бумажка и ручка, дерзай пиши код. Сразу видно может человек писать код или нет
Re: Тестовые задания
От: zubr Россия  
Дата: 07.06.11 06:25
Оценка:
Здравствуйте, Ellin, Вы писали:

E>После хождения в течении последнего десятка лет по собеседованиям меня осенило! Тестовые задания выдаваемые для решения на дом нафиг не нужны!

E>Можно прямо в офисе с помощью вопросов выяснить чего стоит человек. Либо дать анкету с короткими вопросами по ключевым моментам.
E>Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?

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

Я считаю что дом задания нужны, вопрос лишь в оплате потраченного времени, но работодатель не пойдет на такую сделку.
Re[8]: Тестовые задания
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 07.06.11 11:55
Оценка:
Здравствуйте, Wolverrum, Вы писали:

W>Здравствуйте, Ellin, Вы писали:


E>>тренероваться

W>Удача ушла в бессрочный отпуск.
злой ты.
Sic luceat lux!
Re[3]: Тестовые задания
От: antonio_banderas Россия  
Дата: 07.06.11 14:25
Оценка:
Здравствуйте, Handie, Вы писали:

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


А реверс строки — это считаем длину строки, идем циклом до середины и тупо меняем символы местами?
Например, так:
void reverse_str(char* s)
{
// Check s for NULL if needed.
const size_t n = strlen(s);
for (size_t i = 0; i < n/2; ++i)
std::swap(s[i], s[n-1-i]);
}

Или есть более продвинутые алгоритмы?
Re[4]: Тестовые задания
От: Handie  
Дата: 08.06.11 09:26
Оценка:
_>А реверс строки — это считаем длину строки, идем циклом до середины и тупо меняем символы местами?
_>Например, так:
_>void reverse_str(char* s)
_>{
_> // Check s for NULL if needed.
_> const size_t n = strlen(s);
_> for (size_t i = 0; i < n/2; ++i)
_> std::swap(s[i], s[n-1-i]);
_>}

Версия без зависимостей:
void reverse_str(char* s)
{
  // Check s for NULL if needed.
  char *e = s;
  while(*e++);
  --e;
  while(s<e)
  {
    char t = *s;
    *s++ = *e;
    *e-- = t
  }
}


Версия чуть более красивая:
void reverse_str(char* s)
{
  // Check s for NULL if needed.
  char *e = s + strlen(s) - 1;
  while(s<e)
  {
    char t = *s;
    *s++ = *e;
    *e-- = t
  }
}


Версия "идеальная"

void reverse_str(char* s)
{
  std::string t(s);
  std::reverse(t.begin(),t.end());
  strcpy(s,t.c_str());
}


К сожалению, ни один из кандидатов не предложил
void reverse_str(std::string &s)
{
  std::reverse(s.begin(),s.end());
}
Re[5]: Тестовые задания
От: alzt  
Дата: 08.06.11 09:51
Оценка:
Здравствуйте, Handie, Вы писали:

H>Версия без зависимостей:

H>
H>void reverse_str(char* s)
H>{
H>  // Check s for NULL if needed.
H>  char *e = s;
H>  while(*e++);
H>  --e;
H>  while(s<e)
H>  {
H>    char t = *s;
H>    *s++ = *e;
H>    *e-- = t
H>  }
H>}
H>


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

H>Версия "идеальная"


H>
H>void reverse_str(char* s)
H>{
H>  std::string t(s);
H>  std::reverse(t.begin(),t.end());
H>  strcpy(s,t.c_str());
H>}
H>


Я бы не сказал, что идеальная. Смешение string и c-строк.

H>К сожалению, ни один из кандидатов не предложил

H>
H>void reverse_str(std::string &s)
H>{
H>  std::reverse(s.begin(),s.end());
H>}
H>


Возможно кандидаты воспринимают задачу в стиле Си. И о stl даже не задумываются.
Re[6]: Тестовые задания
От: Handie  
Дата: 08.06.11 13:24
Оценка:
A>вариант плохой. нужно тратить время на чтение кода чтобы понять, что происходит. strlen намного лучше смотрится. Плюс самописный свап.

А слабо написать более красивый вариант без использования либ? То, что для одного проекта будет как большой плюс, то для другого будет сильный минус. Например если разработчик модулей Nginx напишет std::swap то ему это пойдет в сильный минус (тащить C++/STL в проект написанный на C), имбедщику это тоже пойдет в минус, высокоуровневому С++ программисту в плюс.

H>>
H>>void reverse_str(char* s)
H>>{
H>>  std::string t(s);
H>>  std::reverse(t.begin(),t.end());
H>>  strcpy(s,t.c_str());
H>>}
H>>


A>Я бы не сказал, что идеальная. Смешение string и c-строк.

Где? Никакого смешения, сначала c->string, обработка, затем string->c. Понятно что для искусственно высосанного примера как этот это кажется извращением, но в реальной жизни это суровая проза. Преобразования типов очень часты при использовании сторонних библиотек, коих в реальных проектах часто десятки. Мне часто приходится работать с мешаниной QString, std::string, char* или ngx_str_t.

H>>К сожалению, ни один из кандидатов не предложил

H>>
H>>void reverse_str(std::string &s)
H>>{
H>>  std::reverse(s.begin(),s.end());
H>>}
H>>


A>Возможно кандидаты воспринимают задачу в стиле Си. И о stl даже не задумываются.


Программер который предложит поправить интерфейс данной ему функции или сделать перегруженный вариант для "соседнего" типа однозначно будет воспринят как "правильный чувак"
Re[2]: Тестовые задания
От: alf_kadett  
Дата: 08.06.11 23:01
Оценка:
Здравствуйте, zubr, Вы писали:

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


Нетрудно догадаться, что успешному кандидату легко можно оплатить потраченное время: на фоне стоимости найма это копейки. Так что пробуйте договориться, дел-то.
Re: Тестовые задания
От: alf_kadett  
Дата: 08.06.11 23:03
Оценка:
Здравствуйте, Ellin, Вы писали:

E>После хождения в течении последнего десятка лет по собеседованиям меня осенило! Тестовые задания выдаваемые для решения на дом нафиг не нужны!

E>Можно прямо в офисе с помощью вопросов выяснить чего стоит человек. Либо дать анкету с короткими вопросами по ключевым моментам.
E>Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?

Ещё один всё понял. Идите, откройте компанию, наймите себе разработчиков, раз вы уже всё знаете.
Re[3]: Тестовые задания
От: Nik_1 Россия  
Дата: 09.06.11 05:45
Оценка:
Здравствуйте, alf_kadett, Вы писали:

_>Здравствуйте, zubr, Вы писали:


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


_>Нетрудно догадаться, что успешному кандидату легко можно оплатить потраченное время: на фоне стоимости найма это копейки. Так что пробуйте договориться, дел-то.


Пробовал, нескольким хрюшам, в ответ на предложение сделать ДЗ, предлагал оплатить его выполнение. Все выкатывали круглые глаза, орали что этоже ТЗ и они не собираются его использовать и прочий булщит.. и пока никто не согласился оплатить его
Re[4]: Тестовые задания
От: alf_kadett  
Дата: 10.06.11 10:16
Оценка:
Здравствуйте, Nik_1, Вы писали:

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


_>>Нетрудно догадаться, что успешному кандидату легко можно оплатить потраченное время: на фоне стоимости найма это копейки. Так что пробуйте договориться, дел-то.


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


Вы просто не умеете их готовить...
Re[4]: Тестовые задания
От: alf_kadett  
Дата: 10.06.11 10:17
Оценка:
Здравствуйте, zubr, Вы писали:

_>>Нетрудно догадаться, что успешному кандидату легко можно оплатить потраченное время: на фоне стоимости найма это копейки. Так что пробуйте договориться, дел-то.


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

Z>жена, кошаки, велики, сноуборды — :D

Ну так что же вы предсказываете, что не пойдёт на сделку, если даже не пытаетесь? Потрепать языком, похвастаться прекрасными вещами?
Re[5]: Тестовые задания
От: Nik_1 Россия  
Дата: 10.06.11 13:19
Оценка:
Здравствуйте, alf_kadett, Вы писали:

_>Здравствуйте, Nik_1, Вы писали:


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


_>>>Нетрудно догадаться, что успешному кандидату легко можно оплатить потраченное время: на фоне стоимости найма это копейки. Так что пробуйте договориться, дел-то.


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


_>Вы просто не умеете их готовить...


А нафига оно мне надо?
Re: Тестовые задания
От: Abalak США  
Дата: 10.06.11 15:49
Оценка:
Здравствуйте, Ellin, Вы писали:

E>После хождения в течении последнего десятка лет по собеседованиям меня осенило! Тестовые задания выдаваемые для решения на дом нафиг не нужны!

E>Можно прямо в офисе с помощью вопросов выяснить чего стоит человек. Либо дать анкету с короткими вопросами по ключевым моментам.
E>Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?

Делюсь своим совсем недавним опытом. После телефонного и личного интервью, достаточно замороченных, копали глубоко технически, а на очном еще заставили много кода писать на бумажке — предложили сделать тестовое задание. Первый раз в жизни согласился, хотя по началу воспринял затею скептически. Задание было по мне хорошим, может только немного великоватым. У меня ушло дня три в очень расслабленном режиме, реально не больше 2-3 часов чистых в день. После этого еще одно интервью, уже с менеджерами. В итоге очень вкусный оффер в очень крупную финансовую контору. Команда кстати, которая устроила это все — русские Сейчас реально не жалею, что потратил время, работа действительн та, которую искал. Так что, если реально хочется в получить именно эту работу, то почему бы и не сделать. Тут еще сыграло немаловажную роль, то что задание предложили уже после двух раундов, т.е. выдали бы мне его с самого начала — 99%, я бы заморачиваться не стал. В общем, мое мнение о ТЗ слекга поменялось.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[2]: Тестовые задания
От: Ellin Россия www.rsdn.ru
Дата: 11.06.11 16:01
Оценка:
Ну судя по подчерку собеседующих тебе надо поработать годок, а потом напиши свои впечатления. Кинули ли с зарплатой и т.п.
А так только удачи!
Re[2]: Тестовые задания
От: lpc Великобритания  
Дата: 12.06.11 14:09
Оценка:
Здравствуйте, DorfDepp, Вы писали:

DD>Эта глупость только в России распространена.


Не правда, оно бывает везде.
Re[5]: Тестовые задания
От: kosmik Россия http://www.linkedin.com/in/kosmik
Дата: 13.06.11 11:01
Оценка:
ПМ>Если senior developer ищется среди бывших таксистов, то такая проверка может иметь смысл. Хотя всё равно не понятно, как умение написать кусок кода за 15-20 минут покажет способность человека выполнять обязанности сеньёр дивелопера.

Тест показывает не наличие способностей выполнять обязанности senior developer, а минимальные навыки решения задач и написания кода. Да, далеко не каждый человек, написавший нормальный код за 20 минут будет готов работать senior, но по-крайней мере даст еще один показатель для отсева тех, кто заведомо не умеет писать код, считающийся нормальным в данной компании. В некоторых компаниях senior или код пишут очень мало или требования совсем другие (наблюдения из моей практики).
Re[3]: Тестовые задания
От: Abalak США  
Дата: 13.06.11 15:01
Оценка:
Здравствуйте, Ellin, Вы писали:

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


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

E>А так только удачи!


Спс!
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[4]: Тестовые задания
От: Kerk  
Дата: 14.06.11 09:31
Оценка:
Здравствуйте, Nik_1, Вы писали:

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


И не согласятся. Они то со своей колокольни понимают, что в 90% случаев собеседуемый пришлет такое говно, что его запускать-то противно будет, не то что оплачивать.
Re[5]: Тестовые задания
От: Nik_1 Россия  
Дата: 14.06.11 18:03
Оценка:
Здравствуйте, Kerk, Вы писали:

K>Здравствуйте, Nik_1, Вы писали:


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


K>И не согласятся. Они то со своей колокольни понимают, что в 90% случаев собеседуемый пришлет такое говно, что его запускать-то противно будет, не то что оплачивать.


Ну, если хотят узнать это на испытательном сроке, потратив гораздо больше денег и времени, чтож, их выбор
Re[6]: Тестовые задания
От: elmal  
Дата: 14.06.11 18:57
Оценка:
Здравствуйте, Abalak, Вы писали:

A>Вот скажи мне ты не сможешь на бумажке написать строку

A>
A>Interlocked.Increment(ref counter);
A>

A>?
Вот не смогу — серьезно . Во первых это C# . А во вторых — был случай. Дали мне задание на бумажке. Прикол в том, что эту задачу в гораздо более обобщенном и сложном виде я решал. Начиная от постановки задачи, и кончая реализацией. Действительно актуальная задача (мемоизация), у меня много где применяется, даже книжку читал соответствующую, где тоже расписано как такое делать, я пошел еще дальше, делал не в лоб все, а на аннотациях. Так вот, учитывая, что над подобными вещами уже 100 лет я не задумываюсь, так как все в либах давно, расслабился. А во вторых, забыл метод. Помню класс, помню что в нем есть метод, который мне нужен, приблизительно посню как пользоваться, а подробностей не помню! Либы написаны давно, багов там нет, в повседневной деятельности пользуюсь более высокоуровневыми вещами, потому в памяти не держу, я помню только то, как мне быстро найти нужную информацию. Вот могу я писать код так, что мне потребуется каждый день сталкиваться с низкоуровневыми вещами! Если буду так делать, я буду помнить, у меня называния методов от зубов будут отскакивать! Потому как последний ламер делал эмуляцию неблокирующего алгоритма через синхронизацию (при этом, на 100% зная, что готовое решение есть), а во вторых, учитывая, что на бумажке хрен исправишь, после 3-его переписывания уже стал злой, как собака, так как у меня 90% усилий было затрачено на борьбу с ручкой. Вот отвык я на бумаге писать вообще! 2 раза в год заявление на отпуск только пишу — все! Я 100% знаю, что посетив 5 собеседований, где это требуется, я, наконец, абсолютно не напрягаясь натренируюсь в написании кода на бумажке достаточно, и уже писать ручкой будет не проблема. Всего 2 раза таким занимался — первый раз облажался полностью, переписывая все по 3 раза, второй раз (я тоже не ожидал, что заставят на бумажке писать) сообразил, что если писать по методу на листе, можно потери времени на переписывание свести к минимуму. Правда сообразил не сразу, торопился закончить, да и злой был как собака, что после одного теста мне еще 2 задания. Где, блин, разбирать параметры командно строки, их парсить обязательно вручную, еще и вывод писать — на что спокойный, но было желание встать и пойти после такого задания. Сделал, но сделал в лоб, наплевав на какую то там оптимальность, ибо желания писать еще больше кода не было никакого! Третьего раза пока не было и не знаю когда будет, надеюсь что никогда. Несмотря на то, что уже почти адаптировался и нужные навыки получил, считаю, что компании, где практикуется вот это написание на бумажке, просто неуважительно относятся к кандидатам. Хоть не блок схему, и то спасибо, называется. Алгоритм и схему решения готов набросать на псевдоязыке на бумажке, как иллюстрацию к собственному рассказу, но не код!
Re[6]: Тестовые задания
От: Kerk  
Дата: 14.06.11 19:56
Оценка:
Здравствуйте, Nik_1, Вы писали:

K>>И не согласятся. Они то со своей колокольни понимают, что в 90% случаев собеседуемый пришлет такое говно, что его запускать-то противно будет, не то что оплачивать.


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


Для того задания и придуманы, чтоб неподходящих кандидатов не допускать не только до испытательного срока, но и до разработчиков, которым не понадобится тратить час на собеседование, если достаточно пяти минут на то, чтоб на задание взглянуть и нажать DELETE. Фильтр это конечно не 100%, но достаточно надежный. И кстати уже сам факт выполнения задания позволяет отделить тех, кто может, как говориться "get things done", от тех, кто не может.

В общем-то, если включить голову, то понятно, что тестовое задание — это компромисс. У ведущих корпораций есть ресурсы на проведение многоэтапных собеседований. У тех, кто помельче — нет. И если сложить время, которое нужно потратить на несколько собеседований в гугле/мс/..., прибавить время на подготовку, прибавить время на проезд и т.п., то получится, что за это время запросто можно сделать тестовое задание, возможно даже не одно. Причем сделать это в удобное для себя время в обстановке без стресса.
Re[7]: Тестовые задания
От: Nik_1 Россия  
Дата: 14.06.11 21:05
Оценка:
Здравствуйте, Kerk, Вы писали:

K>Здравствуйте, Nik_1, Вы писали:


K>>>И не согласятся. Они то со своей колокольни понимают, что в 90% случаев собеседуемый пришлет такое говно, что его запускать-то противно будет, не то что оплачивать.


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


K>Для того задания и придуманы, чтоб неподходящих кандидатов не допускать не только до испытательного срока, но и до разработчиков, которым не понадобится тратить час на собеседование, если достаточно пяти минут на то, чтоб на задание взглянуть и нажать DELETE. Фильтр это конечно не 100%, но достаточно надежный. И кстати уже сам факт выполнения задания позволяет отделить тех, кто может, как говориться "get things done", от тех, кто не может.


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

Если включить голову, то понятно, что опытные разработчики просто пошлют в пешее эротическое с предложением поработать забесплатно и до собеседования с разработчиками доберутся лишь студенты, ито не самые лучшие.
Re[8]: Тестовые задания
От: Kerk  
Дата: 14.06.11 21:14
Оценка:
Здравствуйте, Nik_1, Вы писали:

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


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


И это тоже плюс. Чем меньше людей с завышенным ЧСВ придет на собеседование, тем лучше.
Re[9]: Тестовые задания
От: Nik_1 Россия  
Дата: 14.06.11 21:16
Оценка:
Здравствуйте, Kerk, Вы писали:

K>Здравствуйте, Nik_1, Вы писали:


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


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


K>И это тоже плюс. Чем меньше людей с завышенным ЧСВ придет на собеседование, тем лучше.


Ну посмотрим как вы проект на одних тока студентах вытяните
Re[8]: Тестовые задания
От: kosmik Россия http://www.linkedin.com/in/kosmik
Дата: 14.06.11 22:09
Оценка:
N_>Если включить голову, то понятно, что опытные разработчики просто пошлют в пешее эротическое с предложением поработать забесплатно и до собеседования с разработчиками доберутся лишь студенты, ито не самые лучшие.

Вас почитать так компании типа вот этой http://news.hereisthecity.com/2009/12/25/52_interviews_at_goldman_sachs/ должны сплошь из студентов состоять
Re[10]: Тестовые задания
От: Kerk  
Дата: 15.06.11 07:34
Оценка:
Здравствуйте, Nik_1, Вы писали:

N_>Ну посмотрим как вы проект на одних тока студентах вытяните


Если для вас любой разработчик с адекватным ЧСВ — студент, то пусть так.
Re[11]: Тестовые задания
От: Nik_1 Россия  
Дата: 15.06.11 08:36
Оценка:
Здравствуйте, Kerk, Вы писали:

K>Здравствуйте, Nik_1, Вы писали:


N_>>Ну посмотрим как вы проект на одних тока студентах вытяните


K>Если для вас любой разработчик с адекватным ЧСВ — студент, то пусть так.

Неадекватное ЧСВ тута какраз у собеседующего, а не разработчика Он хочет чтобы сыкономить себе час потратить впустую часов 20 кандидата. Работодятлы с таким ЧСВ, которые считают что им еще доплачивать должны за честь работать уних идут лесом
Re[13]: Тестовые задания
От: Nik_1 Россия  
Дата: 15.06.11 11:00
Оценка:
Здравствуйте, Kerk, Вы писали:

K>Здравствуйте, Nik_1, Вы писали:


K>>>Если для вас любой разработчик с адекватным ЧСВ — студент, то пусть так.


N_>>Неадекватное ЧСВ тута какраз у собеседующего, а не разработчика Он хочет чтобы сыкономить себе час потратить впустую часов 20 кандидата. Работодятлы с таким ЧСВ, которые считают что им еще доплачивать должны за честь работать уних идут лесом


K>Отличный индикатор того, что кандидат не подходит. Подходящий потратит не 20 часов, а, скажем, 5. Какие оправдания в последствии придумает для себя отсеянный кандидат — его личное дело. Студенты, возмущающиеся, что им дали тестовое задание на 2 недели непрерывной работы там, где опытному человеку достаточно вечер посидеть, бывают, с этим ничего не поделаешь.

Мы тут даже никакого конткретного тестового задания не обсуждали, а ты уже заочно поставил диагноз что оценка трудоемкости в 4 раза завышена. Толсто троллишь, не пались так.
Re[14]: Тестовые задания
От: Kerk  
Дата: 15.06.11 12:59
Оценка:
Здравствуйте, Nik_1, Вы писали:

N_>>>Неадекватное ЧСВ тута какраз у собеседующего, а не разработчика Он хочет чтобы сыкономить себе час потратить впустую часов 20 кандидата. Работодятлы с таким ЧСВ, которые считают что им еще доплачивать должны за честь работать уних идут лесом


K>>Отличный индикатор того, что кандидат не подходит. Подходящий потратит не 20 часов, а, скажем, 5. Какие оправдания в последствии придумает для себя отсеянный кандидат — его личное дело. Студенты, возмущающиеся, что им дали тестовое задание на 2 недели непрерывной работы там, где опытному человеку достаточно вечер посидеть, бывают, с этим ничего не поделаешь.


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


Резкий переход на личности? Сразу видно — отличный специалист, работодатели о таком просто мечтают!
Re[10]: Тестовые задания
От: Nik_1 Россия  
Дата: 15.06.11 13:10
Оценка:
Здравствуйте, Kerk, Вы писали:

K>Здравствуйте, kosmik, Вы писали:


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


K>>Вас почитать так компании типа вот этой http://news.hereisthecity.com/2009/12/25/52_interviews_at_goldman_sachs/ должны сплошь из студентов состоять


K>Суперпрофи в лице Nik_1 этой говноконторе точно не заполучить!!!

Кроме перехода на личности тебе нечего сказать?
Re[15]: Тестовые задания
От: Nik_1 Россия  
Дата: 15.06.11 13:11
Оценка:
Здравствуйте, Kerk, Вы писали:

K>Здравствуйте, Nik_1, Вы писали:


N_>>>>Неадекватное ЧСВ тута какраз у собеседующего, а не разработчика Он хочет чтобы сыкономить себе час потратить впустую часов 20 кандидата. Работодятлы с таким ЧСВ, которые считают что им еще доплачивать должны за честь работать уних идут лесом


K>>>Отличный индикатор того, что кандидат не подходит. Подходящий потратит не 20 часов, а, скажем, 5. Какие оправдания в последствии придумает для себя отсеянный кандидат — его личное дело. Студенты, возмущающиеся, что им дали тестовое задание на 2 недели непрерывной работы там, где опытному человеку достаточно вечер посидеть, бывают, с этим ничего не поделаешь.


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


K>Резкий переход на личности? Сразу видно — отличный специалист, работодатели о таком просто мечтают!

Где тут переход на личности? По обсуждаемой теме тебе нечего сказать, вот и тролишь.
Re[7]: Тестовые задания
От: Abalak США  
Дата: 15.06.11 18:30
Оценка:
Здравствуйте, elmal, Вы писали:

E>Здравствуйте, Abalak, Вы писали:


A>>Вот скажи мне ты не сможешь на бумажке написать строку

A>>
A>>Interlocked.Increment(ref counter);
A>>

A>>?
E>Вот не смогу — серьезно . Во первых это C# .

Ну ок

E>А во вторых — был случай. Дали мне задание на бумажке. Прикол в том, что эту задачу в гораздо более обобщенном и сложном виде я решал. Начиная от постановки задачи, и кончая реализацией. Действительно актуальная задача (мемоизация), у меня много где применяется, даже книжку читал соответствующую, где тоже расписано как такое делать, я пошел еще дальше, делал не в лоб все, а на аннотациях. Так вот, учитывая, что над подобными вещами уже 100 лет я не задумываюсь, так как все в либах давно, расслабился. А во вторых, забыл метод. Помню класс, помню что в нем есть метод, который мне нужен, приблизительно посню как пользоваться, а подробностей не помню! Либы написаны давно, багов там нет, в повседневной деятельности пользуюсь более высокоуровневыми вещами, потому в памяти не держу, я помню только то, как мне быстро найти нужную информацию.


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

E>Вот могу я писать код так, что мне потребуется каждый день сталкиваться с низкоуровневыми вещами! Если буду так делать, я буду помнить, у меня называния методов от зубов будут отскакивать! Потому как последний ламер делал эмуляцию неблокирующего алгоритма через синхронизацию (при этом, на 100% зная, что готовое решение есть), а во вторых, учитывая, что на бумажке хрен исправишь, после 3-его переписывания уже стал злой, как собака, так как у меня 90% усилий было затрачено на борьбу с ручкой. Вот отвык я на бумаге писать вообще! 2 раза в год заявление на отпуск только пишу — все! Я 100% знаю, что посетив 5 собеседований, где это требуется, я, наконец, абсолютно не напрягаясь натренируюсь в написании кода на бумажке достаточно, и уже писать ручкой будет не проблема. Всего 2 раза таким занимался — первый раз облажался полностью, переписывая все по 3 раза, второй раз (я тоже не ожидал, что заставят на бумажке писать) сообразил, что если писать по методу на листе, можно потери времени на переписывание свести к минимуму. Правда сообразил не сразу, торопился закончить, да и злой был как собака, что после одного теста мне еще 2 задания. Где, блин, разбирать параметры командно строки, их парсить обязательно вручную, еще и вывод писать — на что спокойный, но было желание встать и пойти после такого задания. Сделал, но сделал в лоб, наплевав на какую то там оптимальность, ибо желания писать еще больше кода не было никакого! Третьего раза пока не было и не знаю когда будет, надеюсь что никогда.


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

E>Несмотря на то, что уже почти адаптировался и нужные навыки получил, считаю, что компании, где практикуется вот это написание на бумажке, просто неуважительно относятся к кандидатам. Хоть не блок схему, и то спасибо, называется. Алгоритм и схему решения готов набросать на псевдоязыке на бумажке, как иллюстрацию к собственному рассказу, но не код!


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

Ничего личного, просто напомнило — встретился я тут недавно с соотечественником, тот позиционировал себя как дотнетчика и выяснилось, что примерно в одно и тоже время мы проходили собеседование в одну и туже контору. Я телефонное прошел без каких-то особых проблем, вопросы технические, достаточно стандартные, а вот соотечественик их матом крыл, что дескать такие казлы, вопросы тупые задают про многопоточность, естественно меня завалили и дальше не позвали. Мне оставалось только про себя посмеяться.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[8]: Тестовые задания
От: elmal  
Дата: 16.06.11 05:46
Оценка:
Здравствуйте, Abalak, Вы писали:

A>Вот ты и сам подчеркиваешь разницу. В твоей задаче требовалось помнить конкретно, как работать с конкретной либой, у меня наоборот проверяли, что я знаком с определенными техниками программирования. Если я не знаю, что такое дженерики или в каких случаях нужна синхронизация, то я в проекте буду городить велосипед из говнокода, а если я просто подзабыл, какой метод есть у класса, ну так посмотрю, делов то Насколько помню самые сложные методы, которые надо было написать были тот самый Increment() и ToString()/

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

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

Да не на знания библиотек, задачки то полуолимпиадные были (справедливости ради, с таким сталкивался мало, а тут 2 раза подряд, я их минимум 14 лет не решал, да и когда решал — мне компьютер давали!). То задание, в котором я метод забыл — оно самым адекватным было, хотя б к реальности приближенное. А в том неуважение, что при написании кода на бумажке, в основном воюешь с бумажкой, а не с задачей. На бумажке можно алгоритм словами написать, иной раз с рисунками. Это я даже на практике, бывает, делаю. Но когда на бумажке делаешь все, начиная с разбора параметров командной строки и кончая выводом результатов, когда задание состоит из кучи тривиальнейших операций — очень хочется послать куда подальше эту контору. При наличии компа сделал бы за 10 минут, причем и тесты прогнал бы еще, был бы уверен, что все работает. На бумажке корячишься больше часа, злой как собака. Быстро написал (это если быстро, а на быстро на бумажке навык нужен), а потом сидишь и в уме трассируешь — тестами то не проверить! То есть поощряется проверять функционал не тестами, а методом внимательного чтения кода ? Ну, несколько десятков лет так и писали, сейчас условия изменились, проверять тестами стараются. А на практике, когда подобные задачи встречаются, я всегда TDD методики использую, так как в данном случае это экономит кучу времени, даже без бумажки. На бумажке же я даже тривиальный тест писать не буду — лень, и нет выгоды никакой!
Соответственно на бумажке стремишься как можно меньше кода написать, так как напрягает эта писанина черти как. Дженерики очень не хочется использовать, так как куча писанины дополнительной, инкапсуляцию, стремление к иммутабилити — тоже нафик, так как на бумажке задолбаешься модификаторы проставлять вместе с сеттерами и геттерами. Нормальные имена переменных тоже ужасно напрягает писать (тоже имхо одна из моих ошибок из за неопытности, теперь буду всегда однобуквенные переменные использовать, и названия методов как можно короче, тогда буду делать все быстрее)! Знаешь нормальное решение, но также знаешь, что на бумажке его писать напряжно, так как кода напишешь больше, выиграешь только на реальных приложениях, итого — наоборот приходится говнокодить.
Вот говорю — требования писать код на бумажке у меня интересные ассоциации вызывают. Это типа — как попросить плотника забить гвоздь табуреткой! Вот тебе гвоздь, вот тебе табуретка — забивай. Плохо забьешь — значит и молотком не умеешь работать . Может все таки при забивании гвоздей молотком пользоваться?
Re[9]: Тестовые задания
От: FR  
Дата: 16.06.11 06:44
Оценка:
Здравствуйте, elmal, Вы писали:

E>То есть поощряется проверять функционал не тестами, а методом внимательного чтения кода ?


Кстати, зря смеёшься, эта методика одна из самых эффективных при поиске ошибок.

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


Одно другому не мешает.
Re[10]: Тестовые задания
От: elmal  
Дата: 16.06.11 07:12
Оценка:
Здравствуйте, FR, Вы писали:

FR>Кстати, зря смеёшься, эта методика одна из самых эффективных при поиске ошибок.

При поиске да . Когда знаешь, что там ошибка. Либо когда рефакторишь — тут автоматом следишь, чтоб ничего не сломать, тоже на этапе рефакторинга ошибки обнаруживаются. Но когда что то требуется написать в условиях нехватки времени — как раз тестами все проверять гораздо более эффективно. Наиболее эффективная методика следующая:
1) Пишем тесты, покрывающие наиболее вероятные места, где можно ошибиться;
2) Прогоняем. Тесты не прошли — смотрим внимательно почему не прошли, тут уже возможно при внимательном просмотре и другие ошибки найти;
3) Тесты прошли — еще раз смотрим код для подстраховки, все ли мы учли.
Это касается типичных заданий, которые выдаются на бумажке. Иногда бывают случаи, когда тест писать дольше, чем внимательно просмотреть код (например, когда с многопоточностью работа идет — тест, дающий уверенность, что все идет как надо, написать довольно сложно — смотреть по любому придется внимательно код). Так вот — типичные задачи на собеседовании под эти случаи не подходят, там как раз тесты рулят неимоверно!
Re: Тестовые задания
От: Sorc17 Россия  
Дата: 16.06.11 07:23
Оценка:
Здравствуйте, Ellin, Вы писали:

E>После хождения в течении последнего десятка лет по собеседованиям меня осенило! Тестовые задания выдаваемые для решения на дом нафиг не нужны!

E>Можно прямо в офисе с помощью вопросов выяснить чего стоит человек. Либо дать анкету с короткими вопросами по ключевым моментам.
E>Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?

Ещё одна "XXXX не нужно" нить. Краткое содержание ответов в нить:

1) Ты просто ниасилил
2) У тебя батхерт от того что ты не можешь пройти собеседование
3) Я работаю в международной корпорации XXX у нас всегда дают задания
4) Конечно не нужны как и собеседование
5) Просто в России всё через одно место даже собеседования
6) Оффтоп, переход на личности
Для нас [Thompson, Rob Pike, Robert Griesemer] это было просто исследование. Мы собрались вместе и решили, что ненавидим C++ [смех].
Re[9]: Тестовые задания
От: бобби  
Дата: 17.06.11 11:16
Оценка:
Здравствуйте, elmal, Вы писали:

E>При наличии компа сделал бы за 10 минут, причем и тесты прогнал бы еще, был бы уверен, что все работает. На бумажке корячишься больше часа, злой как собака. Быстро написал (это если быстро, а на быстро на бумажке навык нужен), а потом сидишь и в уме трассируешь — тестами то не проверить! То есть поощряется проверять функционал не тестами, а методом внимательного чтения кода ? Ну, несколько десятков лет так и писали, сейчас условия изменились, проверять тестами стараются. А на практике, когда подобные задачи встречаются, я всегда TDD методики использую, так как в данном случае это экономит кучу времени, даже без бумажки. На бумажке же я даже тривиальный тест писать не буду — лень, и нет выгоды никакой!


Но тетушка Кейт Грегори из MS одобряет:
http://programmers.stackexchange.com/questions/16769/whiteboard-testing-during-an-interview-legitimate-way-to-back-up-your-whitebo

Re: Тестовые задания
От: Dmitry_Ch  
Дата: 27.06.11 14:09
Оценка:
Я даю кандидатам домой тестовые, практически реальные, продолжительностью от 1 до 8 часов задания после теорет. собеседования для того, чтобы понять, что кандидат:
— не только теоретик, а и практик
— владеет либо сабжем, либо сам может быстро обучиться
— не ленив
— "завтра" прийдет и сразу начнет делать ему предназначенный кусок

И по факту задания в стиле "умно вывести пару кнопок и по клику что-то подгружать" выполняют 20-30%


Здравствуйте, Ellin, Вы писали:

E>После хождения в течении последнего десятка лет по собеседованиям меня осенило! Тестовые задания выдаваемые для решения на дом нафиг не нужны!

E>Можно прямо в офисе с помощью вопросов выяснить чего стоит человек. Либо дать анкету с короткими вопросами по ключевым моментам.
E>Но нафига давать задание реализовать библиотеку, где формулировка задания идет на двух листах?
Re[2]: Тестовые задания
От: Ulitka США http://lazarenko.me
Дата: 29.06.11 17:53
Оценка:
Здравствуйте, DorfDepp, Вы писали:

DD>Эта глупость только в России распространена...


И, видимо, в Нью-Йорке...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.