Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Работа Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3 4 5 6      [все]
 Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Добрый день, Господа, Дамы!
Тема, конечно же не раз поднималась в ветках, но я хочу услышать ваше мнение о частном случае.
Итак, я - программист со стажем (~18лет на С++, в основном под Windows) в настоящее время столкнулся с поиском работы.
В отдном хорошем месте я проходил собеседование и, так всё было прекрасно - распрекрасно, я и мой опыт были поняты и приняты, впечатления были положительными, что после всего мне было предложено пойти на второй тур собеседования, но необходимо было выполнить коротенькое тестовое заданьеце. Предвидя праведный шквал мнений о том, что не нужно выполнять тестовые задания, выскажу свое скромное суждение, что да, наверное не нужно выполнять тестовые задания, если Вы не хотите утроиться на работу и, обратно - нужно выполнять тестовые задания если хотите получить офер. Извините.

Ну, да ладно, я отвлекся, собственно вот текст задания.


Задача: На вход подаются несколько папок с файлами. Нужно разделить содержимое файлов на блоки по 8 байт и для каждого уникального содержания блока вывести количество вхождений и имена файлов, в которых было обнаружено вхождение.
Пример:
На входе:
Input\
File1.bin [FFFA00BA FFFA00B1 FFFA00B1 FFFA00B2]
File2.bin [FFFA00B2 FFFA00B1 FFFA00B1 FFFA00B2]

На выходе:
FFFA00BA FFFA00B1 1 [File1.bin]
FFFA00B1 FFFA00B2 2 [File1.bin, File2.bin]
FFFA00B2 FFFA00B1 1 [File2.bin]

Требования к реализации
Решение должно состоять из двух процессов. Первый процесс загружает данные и передает их во второй процесс, который выполняет анализ данных и выводит результат в консоль. Передача и обработка содержимого каждого файла должна идти отдельным потоком. Пути к папкам входными файлами передаются в качестве параметров первого процесса. Канал взаимодействия между процессами может быть любым.
Не использовать сторонние (не MS библиотеки), предпочтительно использовать только WinAPI и STL.
Использовать только базовый С++ (не С++11 и пр.).

Пример использования:
Первый процесс реализует приложение loader.exe, второй процесс analyzer.exe
1. Запускаем analyzer.exe. Открывается консоль, приложение ждет сигнала.
2. Запускаем loader.exe c:\data\folder1 c:\data\folder2.
3. В консоли analyzer.exe выводится таблица с результатами анализа файлов.




...Продолжу. И что!? Спросите Вы, благородные сеньёры и, будете правы. Ниже я сформулирую вопросы на кототые я хотел бы получить ответы:

1 Где в этом задании выставлены акценты ?
2 Сколько времени нужно, чтобы выполнить такое задание ?
3 Какой именно набор из WinAPI и из STL Вы используете для решения этой задачи ?
4 Какие в этом задании есть нюансы и подводные камни, нужно ли их учтывать при решении этой задачи?


Да, вот ещё что. Пусть вам не кажется, что это с моей стороны хитрый способ рещить эту задачу за Ваш счет, я уже решил её, прошел второй этап интервью, как я её решил, какой результат получил, и что это за компания я, если это интересно, напишу позже, пусть сохранится интрига а, пока, о благородные сеньёры и дамы, жду от вас мнений, высказывайтесь!
29 янв 18, 16:02    [21147711]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
scf
Member

Откуда:
Сообщений: 1445
Ну, простенько и со вкусом. Кроме этого:
> Передача и обработка содержимого каждого файла должна идти отдельным потоком.

Заведомо плохое архитектурое решение для этой задачи.
29 янв 18, 16:17    [21147805]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
scf,


Согласен. Но здесь не об архитекрутном решении идет речь.
Ещё мнения, господа, не стесняйтесь.
29 янв 18, 16:23    [21147846]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
Eugene Gri

1 Где в этом задании выставлены акценты ?

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

Нюансы и подводные камни в любом тестовом задании учитывать, конечно, нужно(с) Кэп
29 янв 18, 16:41    [21147955]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 45438

Eugene Gri
1 Где в этом задании выставлены акценты ?

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

Eugene Gri
2 Сколько времени нужно, чтобы выполнить такое задание ?

Лично у меня это заняло бы не менее дня, а то и двух.

Eugene Gri
3 Какой именно набор из WinAPI и из STL Вы используете для решения этой
задачи ?

Зависит от того каким способом мне придёт в голову сделать IPC. Для MMF - один набор. Для
TCP - другой. Ну и по-любому _beginthread(), CreateEvent() и т.п.

Eugene Gri
4 Какие в этом задании есть нюансы и подводные камни, нужно ли их
учтывать при решении этой задачи?

Сочетаний может быть много. Очень много. Настолько много, что полная таблица счётчиков не
влезет в ОЗУ (и не факт, что поместится на диске). Ну и, конечно, вопрос "что делать если
размер файла не кратен 8".

Posted via ActualForum NNTP Server 1.5

29 янв 18, 16:53    [21148022]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Уважаемый Кот Матроскин,

Я скажу, что совсем наоборот, "акценты" всегда нужно правильно понимать и, тем более учитывать, это как раз показывает работодателю, что претендент правильно понимает задание и старается в своём решении соответствовать этим акцентам, иначе претендент пойдет по неправильному пути. Это как сочинение в школе, есть основная тема, есть план, если Вы отклоняетесь от темы, не раскрываете её, то даже при отсутствии ошибок, получите неуд.
29 янв 18, 16:53    [21148026]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Уважаемый Dimitry Sibiryakov,
Благодарю за ответ, ваши слова наиболее всего пока соответствуют моим вопросам
29 янв 18, 16:57    [21148037]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Dimitry Sibiryakov,

Если размер файла не кратен 8, то на этот чсёт нет в задании четкой инструкции, то есть можно варьировать решением по своему усмотрению
29 янв 18, 16:59    [21148046]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
Eugene Gri
Я скажу, что совсем наоборот, "акценты" всегда нужно правильно понимать и, тем более учитывать

Еще раз - есть такая точка зрения/методика. У этой методики есть достоинства, есть недостатки. Вы с ней не согласны - опаньки.
29 янв 18, 17:04    [21148068]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Dimitry Sibiryakov,

Хочу спросить, что Вы имели ввиду "Возможно -
способность работать с потенциально большими данными." ? учитывая тот факт, что использовать можно только WinAPI и STL?
29 янв 18, 17:09    [21148089]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Кот Матроскин,

Спосибо, принято.
29 янв 18, 17:11    [21148099]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Господа, смелее, неужели нет бльше мнений?
29 янв 18, 17:40    [21148218]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 45438

Eugene Gri
что Вы имели ввиду "Возможно - способность работать с потенциально большими данными." ?

Повторяю медленно:
Я
Сочетаний может быть много. Очень много. Настолько много, что полная таблица
счётчиков не влезет в ОЗУ (и не факт, что поместится на диске).

Восемь байт это 2^64-1 возможных значений. Может, в подсунутых файлах окажется полная
радужная таблица размером в 128 терабайт и твоё приложение, использующее std::map для
подсчёта, накроется медным тазом. Поэтому всегда надо уточнять граничные пределы.

Posted via ActualForum NNTP Server 1.5

29 янв 18, 17:47    [21148241]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
wst
Member

Откуда:
Сообщений: 201
Сильно смущает момент с "базовый С++ (не С++11 и пр.)". Так что первое, что приходит в голову - мысли о каком-то адском легаси.

Что до подводных камней, то в них можно записать все моменты, которые явно не прописаны в задании:
1. про файлы с размером, не кратным 8, уже писали
2. про файлы в которых разных сочетайий больше, чем можно разместить в памяти, тоже
3. как реагировать на попытку запустить больше одного экземпляра любого из процессов (или нескольких)?
4. "Пути к папкам входными файлами передаются в качестве параметров первого процесса." - папки могут быть вложенными? С симлинками/хардлинками куда-то еще? с циклами (1/2/3/x где x - хардлинк опять на 1)? А POSIX_SEMANTICS поддерживать?
5. ограничения на размер файлов - поместятся ли счетчики, скажем, в 32 бита?
6. не уверен, но наверняка можно докопаться до кодировок в названиях файлов и в консоли
7. то же насчет возможности выводить блоки в консоль - нигде явно не прописано, что они все состоят только из подходящих значений, а то в примере только символы из [0-9A-F] и ни слова про другие значения.

это то, что с ходу пришло в голову. Наверняка, если посидеть подумать подольше - список заметно разрастется.
29 янв 18, 17:54    [21148271]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Dimitry Sibiryakov,

Я ни коим образом не указывал, что нужно использовать std::map, но Ваши оценочные выкладки по поводу "радужной оболочки" - в целом верны. Но вопрос мой состоит в том Как бы Вы подоши к решению хранения больших данных используя только WinAPI и STL? В задаче нет никаких намёков на границы и объем данных
29 янв 18, 17:57    [21148295]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 45438

wst
в примере только символы из [0-9A-F] и ни слова про другие значения.

Других шестнадцатеричных циферок покамест не придумали.

Posted via ActualForum NNTP Server 1.5

29 янв 18, 17:59    [21148303]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
wst
Member

Откуда:
Сообщений: 201
пропустил момент, что в примере в задании их по 16 на строку.
29 янв 18, 18:01    [21148312]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 45438

Eugene Gri
Я ни коим образом не указывал, что нужно использовать std::map

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

Eugene Gri
Но вопрос мой состоит в том Как бы Вы подоши к решению хранения больших данных используя
только WinAPI и STL? В задаче нет никаких намёков на границы и объем данных

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

Posted via ActualForum NNTP Server 1.5

29 янв 18, 18:16    [21148366]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
wst,

Ну, вот, вот- же - оно!!!! Чувствуется, что человек- программист! Родственная душа!

Ну а теперь мои комментрарии

Сильно смущает момент с "базовый С++ (не С++11 и пр.)". Так что первое, что приходит в голову - мысли о каком-то адском легаси.
-- Да, неаверняка так и есть, продукт существует уже более 10 лет и, легаси присутствует, ну и ещё не нужно сбрасывать со счетов
"черное" чувство юмора у работодателя



Что до подводных камней, то в них можно записать все моменты, которые явно не прописаны в задании:
1. про файлы с размером, не кратным 8, уже писали
2. про файлы в которых разных сочетайий больше, чем можно разместить в памяти, тоже

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

4. "Пути к папкам входными файлами передаются в качестве параметров первого процесса." - папки могут быть вложенными? С
симлинками/хардлинками куда-то еще? с циклами (1/2/3/x где x - хардлинк опять на 1)? А POSIX_SEMANTICS поддерживать?
--Да, есть такое дело :) В задании нет прямого указания, что мы должны лезть в подпапки и, следовательно, мы не лезеем, а если мы встречаем хардлинки и симлинки указывающие на файлы, считаем их файлами. POSIX-SEMANTICS - на Windows это уже черезчур. Хорошее замечание


5. ограничения на размер файлов - поместятся ли счетчики, скажем, в 32 бита?
--Да нет огданичений на размер файла. При чем тут счетчик 32 бита?

6. не уверен, но наверняка можно докопаться до кодировок в названиях файлов и в консоли
--Правильно, в консоль нужно выводить только UTF-32

7. то же насчет возможности выводить блоки в консоль - нигде явно не прописано, что они все состоят только из подходящих значений, а то в примере только символы из [0-9A-F] и ни слова про другие значения.
--Любой фал можно предтавлять как бинарный, так что пролемы тут не вижу

это то, что с ходу пришло в голову. Наверняка, если посидеть подумать подольше - список заметно разрастется.
29 янв 18, 18:21    [21148386]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 45438

Eugene Gri
5. ограничения на размер файлов - поместятся ли счетчики, скажем, в 32 бита?
*--Да нет огданичений на размер файла. При чем тут счетчик 32 бита?*

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

Posted via ActualForum NNTP Server 1.5

29 янв 18, 18:25    [21148399]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Dimitry Sibiryakov,

Да 32 бита недостаточно
29 янв 18, 18:27    [21148407]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Dimitry Sibiryakov,


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


Вот именно поэтому-то это и надо уточнить у постановщика задачи. Потому что для
подстеливания соломки под этот случай я бы использовал sparse files, а это, в свою
очередь, приведёт к усложнению программы, её замедлению и куче работы, которая может
оказаться совершенно ненужной.
--Да, совершенно верное и ценное замечание, это приведет к более комплексному решению
29 янв 18, 18:31    [21148415]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 2927
Делал похожее задание для java в 2013.

Можно посмотреть тут: https://github.com/javadev/search-file-by-template

Потратил дня 3.

С уважением, Валентин
29 янв 18, 18:37    [21148429]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Здравствуйте, Валентин!

Я плохо знаю Java, но мне кажется, что Ваша задача несколько иная, а что касается поиска в подпапках, то OK, раве что JVM различет ли особенности файловой системы? Я не знаю. А так - ничего не могу сказать. Надеюсь Вы хорошо трудоустроены.
С Уважением, Евгений.
29 янв 18, 18:47    [21148458]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Valentin Kolesnikov,


Валентин, извините, за мое мнение, но выскажу.
1) Функция private void findFiles, - она рекурсивнея и поэтому может упасть при огоромной вложенности в файловой сиситемы
2) Не используется распараллеливание поика вглубь
3) В прогорамме нет понимания архитектурны
4) Не уверен, но при большом количестве файлов UI список может сильно тормозить

Если эти замечания покажутся Вам надуманными и неверными, то не принимайте их близко к сердцу, я-же С++ник
29 янв 18, 18:58    [21148480]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Сейчас мне нужно забрать детей с занятий, пишите, господа и дамы, чуть позже я вам раскрою всю интригу
29 янв 18, 19:00    [21148483]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
Как бы решал на джаве (ниразу не C++ разраб, последние 3 года TypeScript разраб, клепаю формы):

1. Создаем обычный key-value map - ResultMap (который синхронизируется через read-write lock)
KEY = BYTE_HASH_SNAPSHOT (например FFFA00BA)
VALUE = Map<FileName, Counter>

2. Создаем очередь заданий Set<String> filesPathsSet = Sets.newTreeSet(); (в данном случае очередь абсолютных путей файлов)
3. Обход леса - в глубину рекурсивно при помощи одного потока до начала работы воркеров-аналайзеров, который набивает filesPathsSet (должен очень быстро отработать сначала).
4. Создаем пул-тредов аналайзеров, которые разгребают filesPathsSet - каждый со своим файлом из очереди в один момент времени
5. У каждого воркера есть свой внутренний стейт - в который он пишет при анализе файла. По окончании - лочит на запись ResultMap и добавляет в него результаты (по ключу BYTE_HASH_SNAPSHOT достаем мапу, и инкрементим ее по ключу файла)
6. В конце работы воркеров - очередь пуста, ResultMap - заполнен статистикой

Подводные камни
1. рекурсивные линки
2. если есть огромные файлы, то стоит подумать - как разпараллелить несколько тредов на один файл для сбора статистики

По оценке - от 3х до 6 часов неспеша. Средство имплементации: Java
Тестовое задание явно не на джуна и мидла
29 янв 18, 19:41    [21148604]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 45438

alexpo1986
По оценке - от 3х до 6 часов неспеша.

Ты забыл разнести чтение и анализ по разным процессам. В пределах одного процесса задача
действительно гораздо проще.

Posted via ActualForum NNTP Server 1.5

29 янв 18, 19:58    [21148659]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
andreykaT
Member

Откуда:
Сообщений: 1144
Eugene Gri
Добрый день, Господа, Дамы!
Требования к реализации
Решение должно состоять из двух процессов. Первый процесс загружает данные и передает их во второй процесс, который

не знаю как на си плюс плюс, но на джаве имхо, если у тебя ввод-вывод это всё-равно последовательное действие - то накой черт их распараллеливать если они всё-равно будут ходить последовательно? или в си плюс плюс что-то свое на эту тему придумали?
29 янв 18, 20:26    [21148738]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
andreykaT
Member

Откуда:
Сообщений: 1144
...хотя если предположить, что процесс обработки в памяти занимает больше времени чем процесс чтения с диска то да. )
29 янв 18, 20:34    [21148749]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
andreykaT
Eugene Gri
Добрый день, Господа, Дамы!
Требования к реализации
Решение должно состоять из двух процессов. Первый процесс загружает данные и передает их во второй процесс, который

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

А откуда мысль что ввод-вывод это последовательное действие?
29 янв 18, 20:57    [21148792]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Уважаемый alexpo1986,

Мне кажется применение пула потоков с очередями заданий - очень разумным и, Ваше видение нюансов - тоже верно, спасибо
29 янв 18, 23:51    [21149201]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 3161
Eugene Gri,

>>1 Где в этом задании выставлены акценты ?
автор
Не использовать сторонние (не MS библиотеки), предпочтительно использовать только WinAPI и STL.
Использовать только базовый С++ (не С++11 и пр.).

>>2 Сколько времени нужно, чтобы выполнить такое задание ?
всё зависит от проработки вариантов
>>3 Какой именно набор из WinAPI и из STL Вы используете для решения этой задачи ?
(Shared Mem, семафоры)\Pipes\Сокеты, unordered_map
>>4 Какие в этом задании есть нюансы и подводные камни, нужно ли их учтывать при решении этой задачи?
Чисто математические - доп условия на количество уникальных наборов, технические - всплывут по ходу реализации
30 янв 18, 00:23    [21149237]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Спасибо всем, кто нашёл время для того чтобы обсудить эту простую и непростую в тоже время задачу.
Как я и обещал я расскажу о своем видении и решении.
Итак начну с нюансов.
Как вы, благородные доны и сеньоры подметили, нюансов - масса.
Но вот только пара основных
1 В одном разделе NTFS может хранится до 4.5 *10^9 объектов
2 В общем худшем случае мы можем наткнуться на полное перечисление 8-байтовых блоков, коих порядка 1.8*10^19
Даже если понизить порядки этих чисел на два и, перемножив их, мы получим число сопоставимое с количеством звёзд в галлактике Млечный Путь
У нас жесткое услоие в задачи - использовать только WinAPI, STL и никаких сторонних API. Из STL ничего на ум не приходит. Из WinAPI
На ум пришло CompressionAPI, CabinetAPI, но даже применение этих API сильно усложняет выполнение задачи, не сильно нас спасет и, вообще, по моему мнению выходит за рамки проверки знаний. Сама задача компактного хранения большого количества информации с возможностью произвольного доступа, близкого по сложности к O(1) нетривиальна и достойна отдельного рассмотрения. Ну а раз так, то я решил отбросить эти усложения, не принимать их в рассмотрение, поскольку даже "нулевой" подход в решении оной делает решение долгим по срокам выполения. А сроки - ограничены 2-мя 3-мя днями.
Ещё раз читаю задание. Что от нас хотят увидеть на самом деле? Учитывая невозможность разрешить все нюансы нас толкают продемонстрировать знания в построении многопоточного приложения, синхронизации совместного доступа, реализации IPC любым из доступных в WinAPI способов и знаний контейнеров STL и только-то. То, что это решение будет только набросочным для более комплексного решения - совершенно ясно, а по сему не нужно зацикливаться на крайностях, нужно пройти по золотой середине по-возможности.
30 янв 18, 00:30    [21149252]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
это ещё не всё...
30 янв 18, 00:31    [21149253]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
продолжение. Я так решил задачу.

Архитекрура - Клиент-Сервер с применением паттернов Состояние, Команда

Канал передачи данных
Итак, два процесса- один пишет, другой читает, - однонаправленный канал, в качестве реализации я использовал Mail-Slot и MailSlotAPI из WinAPI

Протокол - самописный, бинарный с возможностью склеивания пакетов

Разделение доступа к ресурсам - CRITICAL_SECTUION

Многопоточность - использование WinThradpoolAPI -- QueueUserWorkItem, BindIoCompletionCallback

Сбор статистики - STL map, set, vector

Работа с файлами - Win FileAPI

Вывод и форматировение в консоль - WinAPI через FormatMessage
30 янв 18, 00:44    [21149271]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Я, наверное не сымый быстрый прогораммист, мне потребовалось для решения этой задачи три дня, - три напряженных дня выброшенного здоровья.
Дальше было очень интересно.
Я отправил это решение на рассмотрение, после ожидания примерно 4-5 часов, получил восторженный отзыв, что да, это решение просто оставило восторг на тех-директора, что это впролне соответствует моему опыту. Ждут они меня с нетерпением на финальном собеседовании на следущий день...
30 янв 18, 00:50    [21149284]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Настал тот самый следущий день, я пришел на финальную встречу. HR-ка проводила меня в комнату для переговоров. Через 5 минут пришли 2 дамы, одна - Product Manager, приятная, улыбчивая, а - вторая ЗамГенДир, нач HR службы дама с равнодушным стеклянным взглядом. Должен был быть ещё технический директор или его зам, но этих не оказалось по непонятной причине. Пошёл непринуждённый разговор о жизни, о работе о том чего я хочу что я вижу в перспективе через 5 лет - стандартные вопросы. Я тоже позадавал вопросы о том, что они хотят от меня. ProductPanager сказала - "Всего и Сразу", - хорошее желание, кто-ж не хочет?!
Про тестовое задание они ничего не говорили, сослались, что они лишь менеджеры среднего звена. Ну в общем через минут тридцать наша беседа исчерпала себя. HR-ка проводила меня, сказало, что всё хорошо и прекрасно, что сегодня- же даст ответ...
30 янв 18, 01:00    [21149303]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
...только-только я вернулся домой, получаю по почте ответ. Пишет HR-ка, что как и прежде впечатления очень положительные, но офер они мне не предлагают, так как выбрали другого кандидата, типа - спасибо, что нашли время для того чтобы уделить его нам и прочее бла-бла-бла. Ну, ладно думаю я, бывает, ноу меня возник спрортивный интерес, чем же тот другой кандидат лучше меня. Задаю этот вопрос HR-ке, на что не получаю вразумительного ответа. Прошу её уточнить и, взял обещание озвучить эту резолюцию. Ок, жду понедельника...
30 янв 18, 01:08    [21149317]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
Eugene Gri
...только-только я вернулся домой, получаю по почте ответ. Пишет HR-ка, что как и прежде впечатления очень положительные, но офер они мне не предлагают, так как выбрали другого кандидата, типа - спасибо, что нашли время для того чтобы уделить его нам и прочее бла-бла-бла. Ну, ладно думаю я, бывает, ноу меня возник спрортивный интерес, чем же тот другой кандидат лучше меня. Задаю этот вопрос HR-ке, на что не получаю вразумительного ответа. Прошу её уточнить и, взял обещание озвучить эту резолюцию. Ок, жду понедельника...


забей, мне например скорее всего также предстоит уже 5 работу за год искать мля.. 4 работа за год - стартап разваливаться начал (двое лидов уволились)
:(
30 янв 18, 01:16    [21149327]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
.. и вот - понедельник, звоню HR-ке, задаю знакомый вопрос и, получаю изумительный ответ - по мнению тех-директора я продемонстрировал недостаточное знание WinAPI. О !-Ё!!! в голове пронеслась конница из бранных слов и эпитетов, ок, вежливо отвечаю ей, хорошо, говорю я ей, дальше я обращаюсь к ней снижайшей просьбой выслать мне тот вариант решения, что предоставил тот успешный кандидат, ну раз уж вопрос выбора из кандидатов решен, что мешает им дать мне правильный ответ. И что же вы думаете, о - благородные доны и благочестивые доньи, я получаю ровно ничего со ссылкой на закон о нераспространении личных данных. Вот и всё. Я сделал по этому всему произошедшему определённые выводы, кое-какие сомнения конечно остались.
Что вы, благородные сеньоры думаете про всё вышенаписанное?
30 янв 18, 01:19    [21149329]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
1. Не похоже на кидалово, просто что-то в решении не понравилось, и они не сразу это поняли.
2. Второго кандидата скорее всего нет.
3. На кидалово не похоже только потому что - обрезан выбор инструментальных средств - казалось бы - зачем им это надо
4. Возможно что=то в личности кандидата не понравилось - тк психолог дал в конце свою заключительную оценку
30 янв 18, 01:25    [21149336]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Да, вот ещё что, не хочу прослыть трепачём, у меня есть вариант моего решения, из этого я не делаю секрета, если кто заинтересуется могу выслать на почту. Еще раз повторю, что я считаю, что в рамках поставленного тестового задания, не может быть обширного, комплексного решения, это всего лишь прототип, демонстрирующий навыки и знания в WinAPI и STL.

Я ещё обещал назвать имя компании, но не знаю надо -ли? Жду ваших мнений.
30 янв 18, 01:27    [21149338]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
Жги
30 янв 18, 01:29    [21149339]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Vyatich
Member

Откуда:
Сообщений: 2324
Eugene Gri
Что вы, благородные сеньоры думаете про всё вышенаписанное?

Что тебя поимели, конечно. А ещё, что ты слишком честолюбив пока, поэтому так бурно реагируешь, но это лечится. Но вообще, после всей этой истории ты стал опытнее, лучше знаешь чего можно ожидать. Ну и усвоил теперь уже наверное хорошо, что даже блестяще сделанное тестовое задание не гарантирует ничего, как и великолепные отзывы HR-a. И дело даже не в том, что ты плох, как специалист. Причины могут быть разными и твоей квалификации они даже не касаются.
30 янв 18, 01:30    [21149341]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Vyatich,

О да, уважаемый, я честолюбив, я оказался не готов к такому повороту, я не так часто меняю места работ в среднем я работаю по 5 лет на каждом месте, это обстоятельство делает меня мягкотелым. Нужно быть жесче, согласен с вами. Наверное меня поимели, путь так, быть потерпевшей стороной незазорно, быть другой стороной гораздо хуже, по всем законам - и людским и Божьим
30 янв 18, 01:39    [21149347]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
Eugene Gri
Vyatich,

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


Возможно ваша манера общения их спугнула. Так что за шарага?
30 янв 18, 01:43    [21149349]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
alexpo1986,

Нет, я тоже не склонен думать о кидалове, но странно то, что с мной даже не пытались обсуить моё решение. О личности моей, конечно могли высказаться в негативе, я - не красавец это -да. А глубь коплнуть, и вовсе - не романтический герой. Вы, уважаемый сеньор наверняка правы.
30 янв 18, 01:47    [21149352]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Скажите, уважаемый, alexpo1986, моя манера изложения или общения с Вами как-то Вас отпугивает? Если бы у Вас был открыт email я бы ответил прямо, а так намекну, что в названии этой компании присутстует название нашего светила на латинский манер, направление деятельности - DLP. Если Вы догадались о какой кобпании идет речь - не разглашайте его публично
30 янв 18, 01:53    [21149356]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
Она не отпугивает, просто ваша манера повествования несколько необычная, поэтому на 1странице я уже стал догадываться чем все закончится. Я работал в одной компании с человеком, также с необычной манерой общения, хотя он владел джавой лучше чем родным языком, ну просто он был таким и все.. это было неплохо и нехорошо.
30 янв 18, 02:12    [21149366]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
alexpo1986,
Спасибо, принято :)
30 янв 18, 02:26    [21149376]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Так, я вижу все легли спать. Ладно продолжим может завтра, а пока

"https://www.youtube.com/embed/Har-_3h7YeI"
30 янв 18, 02:43    [21149384]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
982183
Member

Откуда: VL
Сообщений: 2257
Сразу вспомнился анекдот:
автор
Решивший жениться мужчина долго думал, какую из трех влюбленных в него девушек взять в жены. И тут ему пришла в голову страшно мудрая мысль! Он решил каждой дать по 5000 долларов и выяснить, как они ими будут распоряжаться.
Первая накупила дорогой одежды, лучшей косметики, сходила в элитный салон красоты, в общем, сделала все, чтобы выглядеть идеально, и сказала:
- Я очень люблю тебя и хочу, чтобы все знали, что у тебя самая красивая жена в городе.
Вторая истратила все деньги на своего потенциального мужа, купив ему новые костюмы, рубашки, инструменты для автомобиля, и сказала:
- Ты - самое главное для меня, поэтому я истратила на тебя все деньги.
Третья пустила 5000 долларов в оборот, заработала еще 5000 и все вернула мужчине:
- Я очень люблю тебя. Я сделала это, чтобы ты понял, что я умна и нерасточительна.
Мужчина долго думал, анализировал... и женился на той, у которой грудь была больше...
30 янв 18, 03:42    [21149407]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
CawaSPb
Member

Откуда: Питер/Москва/Wroclaw
Сообщений: 841
Eugene Gri
Скажите, уважаемый, alexpo1986, моя манера изложения или общения с Вами как-то Вас отпугивает?

Ну вот взгляд со стороны.
Да, отпугивает. Вы вежливы и корректны, но...

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

Вы же развели тут интригу с привлечением общественности (для чего ???).

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

Нет, вполне возможно, что просто контора насквозь гнилая, и отказали Вам потому, что взяли кого-то "по-блату".
Но может и так, что технически Вы более чем подошли (почему и не было технического спеца на интервью), но остальным в разговоре чем-то не понравились (а HR сослался на технаря просто чтобы избежать конфликта).
По идее, тестовое задание должно было бы быть разобрано _до_ второго интервью.
30 янв 18, 03:56    [21149411]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
G@rry_
Member

Откуда:
Сообщений: 218
Eugene Gri
Что вы, благородные сеньоры думаете про всё вышенаписанное?

Ну нужно задавать глупых вопросов - не придется слушать чушь в ответ.

И да, никогда не делайте тестовые задания которые занимают больше 20 минут.
30 янв 18, 04:34    [21149418]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Alexklonov
Member

Откуда:
Сообщений: 158
Eugene Gri,
Вы слишком многословны. Слушать на работе про всех этих сеньеров и благородных дам - стошнит. Я бы такого не взял.
30 янв 18, 09:37    [21149642]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
andreykaT
Member

Откуда:
Сообщений: 1144
Eugene Gri
Скажите, уважаемый, alexpo1986, моя манера изложения или общения с Вами как-то Вас отпугивает? Если бы у Вас был открыт email я бы ответил прямо, а так намекну, что в названии этой компании присутстует название нашего светила на латинский манер, направление деятельности - DLP. Если Вы догадались о какой кобпании идет речь - не разглашайте его публично

это тебе будет уроком. НИКОГДА ни при каких обстоятельствах НЕ делай ТЗ которые занимают по времени больше часа-двух. из-за таких вот чудаков.
30 янв 18, 10:58    [21149926]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
scf
Member

Откуда:
Сообщений: 1445
Eugene Gri,

А можно посмотреть ваше решение? Покритикуем :-)
30 янв 18, 12:04    [21150343]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 2927
Eugene Gri
.. и вот - понедельник, звоню HR-ке, задаю знакомый вопрос и, получаю изумительный ответ - по мнению тех-директора я продемонстрировал недостаточное знание WinAPI. О !-Ё!!! в голове пронеслась конница из бранных слов и эпитетов, ок, вежливо отвечаю ей, хорошо, говорю я ей, дальше я обращаюсь к ней снижайшей просьбой выслать мне тот вариант решения, что предоставил тот успешный кандидат, ну раз уж вопрос выбора из кандидатов решен, что мешает им дать мне правильный ответ. И что же вы думаете, о - благородные доны и благочестивые доньи, я получаю ровно ничего со ссылкой на закон о нераспространении личных данных. Вот и всё. Я сделал по этому всему произошедшему определённые выводы, кое-какие сомнения конечно остались.
Что вы, благородные сеньоры думаете про всё вышенаписанное?


1. В немецких компаниях предлагают "Один день на работе" тест (оплачивается). Может быть мы к этому тоже прийдём.
2. Знания git и стиль комментирования изменений важен.
3. Статья про то как искать работу (актуально для США) https://habrahabr.ru/company/edison/blog/316776/
4. Нужно переучиваться на VisualStudioCode + typescript для desktop приложений.

С уважением, Валентин
30 янв 18, 12:14    [21150391]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
982183,

Спасибо, анекдот - хороший. Принято!
30 янв 18, 12:58    [21150639]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Valentin Kolesnikov,

Добрый день, Валентин!
Я с Вами в целом согласен, особенно с пунктом 1. В любом случае нужно какая-то менее "травматичная" процедура оценки скилов.
Спасибо
30 янв 18, 13:01    [21150662]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
tunknown
Member

Откуда:
Сообщений: 490
andreykaT
НИКОГДА ни при каких обстоятельствах НЕ делай ТЗ которые занимают по времени больше часа-двух. из-за таких вот чудаков.
Если задача интересная и не местечковая, то можно и долгую сделать для портфолио на ГитХабе. Особенно будет забавна коллизия, если её опубликовать под жестокой GPL3, а на работу примут и из этой задачи вырастет полноценный проект.
30 янв 18, 13:02    [21150668]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Уважаемый scf,

Я уже написал тот план решения, которому я следовал в решении задачи, если Вы хотите, то лично Вам я на почту могу выложить моё решение и, мы с Вами можем его обсудить, то есть я готов выслушать лично Вашу конструктивную критику.
30 янв 18, 13:06    [21150684]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
andreykaT
Member

Откуда:
Сообщений: 1144
tunknown
andreykaT
НИКОГДА ни при каких обстоятельствах НЕ делай ТЗ которые занимают по времени больше часа-двух. из-за таких вот чудаков.
Если задача интересная и не местечковая, то можно и долгую сделать для портфолио на ГитХабе. Особенно будет забавна коллизия, если её опубликовать под жестокой GPL3, а на работу примут и из этой задачи вырастет полноценный проект.

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

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

у меня кстати был такой. они еще требовали почему-то копию моего паспорта перед тем как должен был начать выполнение проекта. - просто в игнор их кинул и всё.
30 янв 18, 13:09    [21150697]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Alexklonov,

Спасибо за оценку, Вы меня лично не знаете а Вас уже тошнит, видимо что-то затронуло Вас до самых глубин...
Я же хочу сказать, что я бы Вас взял..., мне на грядущие сезонные работы нужны немногословные и толковые
30 янв 18, 13:12    [21150720]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
tunknown
Member

Откуда:
Сообщений: 490
andreykaT
кстати да как вариант наказывать таких вот. можно просто публиковать задачи и решения в публичных местах :)
Наказывать никого не нужно- это несерьёзно. Выложить себе в ГитХаб- это одно, опубликовать на sql.ru- совсем другое. При условии, что на тестовом задании не стоит грифа- секретно :-)
30 янв 18, 13:15    [21150735]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
andreykaT,

Ваше суждение на мой взгляд жестоко и категорично, я не придерживаюсь этой точки зрения, пусть я на Ваш взгляд - чудак, ладно, пусть.
Спасибо
30 янв 18, 13:15    [21150738]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
tunknown,

Гриф "секретно" на тестовое задание - не наш случай, да и наказывать кого-то - я, согласен, нет необходимости, если кто-то творит зло, то последнее само к нему вернётся, к чему такие траты?
30 янв 18, 13:19    [21150767]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
tunknown
andreykaT
НИКОГДА ни при каких обстоятельствах НЕ делай ТЗ которые занимают по времени больше часа-двух. из-за таких вот чудаков.
Если задача интересная и не местечковая, то можно и долгую сделать для портфолио на ГитХабе. Особенно будет забавна коллизия, если её опубликовать под жестокой GPL3, а на работу примут и из этой задачи вырастет полноценный проект.


Этот случай, мне кажется, из области фантастики
30 янв 18, 13:22    [21150783]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
CawaSPb
Eugene Gri
Скажите, уважаемый, alexpo1986, моя манера изложения или общения с Вами как-то Вас отпугивает?

Ну вот взгляд со стороны.
Да, отпугивает. Вы вежливы и корректны, но...

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

Вы же развели тут интригу с привлечением общественности (для чего ???).

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

Нет, вполне возможно, что просто контора насквозь гнилая, и отказали Вам потому, что взяли кого-то "по-блату".
Но может и так, что технически Вы более чем подошли (почему и не было технического спеца на интервью), но остальным в разговоре чем-то не понравились (а HR сослался на технаря просто чтобы избежать конфликта).
По идее, тестовое задание должно было бы быть разобрано _до_ второго интервью.



Уважаемый, CawaSPb!

Вы меня удивили, удивили тем, что общение в вежливой манере Вас, лично отпугивает, странно.
А по существу я хочу сказать, что -
- Да, я соглласен, есть "тысяча" причин отказать в приёме на работу
- Гнилая или негнилая контора, какова была стратегия у нанимателя - я об этом ничего не знаю
- Да, может в разговоре я не понравился, согласен
- Я не требовал предоставить а вежливо попросил прислать мне тот код
- Интеллектуальная сшбственность - вещь всегда однозначная, всегда подтверждена документом, подтверждающим это право. В данном, частном, случае ни о какой собственности речи не идёт
- Да, я развел здесь интригу лишь для того, чтобы выслушать мнения других людей по теме
30 янв 18, 13:37    [21150859]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Vyatich
Member

Откуда:
Сообщений: 2324
Eugene Gri
А по существу я хочу сказать, что -
- Да, я соглласен, есть "тысяча" причин отказать в приёме на работу
- Гнилая или негнилая контора, какова была стратегия у нанимателя - я об этом ничего не знаю
- Да, может в разговоре я не понравился, согласен
- Я не требовал предоставить а вежливо попросил прислать мне тот код
- Интеллектуальная сшбственность - вещь всегда однозначная, всегда подтверждена документом, подтверждающим это право. В данном, частном, случае ни о какой собственности речи не идёт
- Да, я развел здесь интригу лишь для того, чтобы выслушать мнения других людей по теме

И дальше что?
30 янв 18, 13:45    [21150896]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eleanor
Member

Откуда:
Сообщений: 1756
Eugene Gri
- Я не требовал предоставить а вежливо попросил прислать мне тот код

Если бы вы общались с технарем, а не HR, то он бы вам, если время есть, ответил, что ему не понравилось.
А что вы от HR хотите?
Они в предметной области не разбираются, и не будут тратить чужое время ради того, чтобы ответить неподошедшему кандидату.
К тому же они часто придумывают причины отказа, чтобы не называть настоящие. Возраст, пол, лицо не понравилось. Работа у них такая.
30 янв 18, 13:53    [21150940]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
G@rry_
Eugene Gri
Что вы, благородные сеньоры думаете про всё вышенаписанное?

Ну нужно задавать глупых вопросов - не придется слушать чушь в ответ.

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


Уважаемый, G@rry_!

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

С Вашей стороны былобы для меня и всех приятно увидеть слова, высказанные по-существу дела, а совет по поводу 20 минут, мне кажется, - не к месту, я уже высказывал своё суждение по этому поводу.
30 янв 18, 13:55    [21150957]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Eleanor
Eugene Gri
- Я не требовал предоставить а вежливо попросил прислать мне тот код

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


Уважаемая, Eleanor!
Спасибо, за отвт, я и сам склоняюсь к этой мысли.
30 янв 18, 14:02    [21151005]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Vyatich
Eugene Gri
А по существу я хочу сказать, что -
- Да, я соглласен, есть "тысяча" причин отказать в приёме на работу
- Гнилая или негнилая контора, какова была стратегия у нанимателя - я об этом ничего не знаю
- Да, может в разговоре я не понравился, согласен
- Я не требовал предоставить а вежливо попросил прислать мне тот код
- Интеллектуальная сшбственность - вещь всегда однозначная, всегда подтверждена документом, подтверждающим это право. В данном, частном, случае ни о какой собственности речи не идёт
- Да, я развел здесь интригу лишь для того, чтобы выслушать мнения других людей по теме

И дальше что?


Вопос странный, как минимум. Сами как думаете?
30 янв 18, 14:04    [21151014]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Vyatich
Member

Откуда:
Сообщений: 2324
Eugene Gri
Vyatich
пропущено...

И дальше что?


Вопос странный, как минимум. Сами как думаете?

Думаю, что тролль новенький у нас нарисовался. Но надо отдать должное: довольно тонкий, я бы даже сказал: утончённый такой тролль.
30 янв 18, 14:09    [21151047]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Alexklonov
Member

Откуда:
Сообщений: 158
Eugene Gri
Alexklonov,

Спасибо за оценку, Вы меня лично не знаете а Вас уже тошнит, видимо что-то затронуло Вас до самых глубин...
Я же хочу сказать, что я бы Вас взял..., мне на грядущие сезонные работы нужны немногословные и толковые
Если, проекты связаны с компьютерным зрением или (и) с машинным обучением, то готов рассмотреть предложения.
30 янв 18, 14:21    [21151110]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
G@rry_
Member

Откуда:
Сообщений: 218
Eugene Gri
G@rry_
пропущено...

Ну нужно задавать глупых вопросов - не придется слушать чушь в ответ.

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


Уважаемый, G@rry_!

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

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


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

Объемные тестовые задания даются для того чтобы выяснить:
1) способен ли человек делать бессмысленную работу не включая мозг (вы с этим не справились);
2) достаточно ли он НЕкомпетентен (тоже не подходите).

Соответственно, не взять вас на работу - это лучшее что они смогли для вас сделать. Да еще и ответ дали правильный, мотивирующий стать еще лучше и найти себе хорошую работу.
30 янв 18, 14:29    [21151176]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Vyatich
Eugene Gri
пропущено...


Вопос странный, как минимум. Сами как думаете?

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


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

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

Буду Вам благодарен, если Вы выскажетесь конструктивно. Спасибо
30 янв 18, 14:37    [21151219]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
G@rry_
Eugene Gri
пропущено...


Уважаемый, G@rry_!

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

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


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

Объемные тестовые задания даются для того чтобы выяснить:
1) способен ли человек делать бессмысленную работу не включая мозг (вы с этим не справились);
2) достаточно ли он НЕкомпетентен (тоже не подходите).

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



Спасибо, принято!
30 янв 18, 14:41    [21151245]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Мштитель
Member

Откуда:
Сообщений: 68
G@rry_,

Вот, зайдёшь почитать как у людей бомбит, а тут вежливое общение и алмазы мудрости. Разрешите поинтересоваться - а "многоступенчатое" интервью в 5-7 этапов (знакомство с HR -> знакомство с начальством -> знакомство с командой -> техническое задание -> торг по деньгам -> оффер) длиной в 2 недели - это маркер чего? И чего можно ждать от компании, проводящей такие интервью?
30 янв 18, 14:57    [21151337]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Мштитель
G@rry_,

Вот, зайдёшь почитать как у людей бомбит, а тут вежливое общение и алмазы мудрости. Разрешите поинтересоваться - а "многоступенчатое" интервью в 5-7 этапов (знакомство с HR -> знакомство с начальством -> знакомство с командой -> техническое задание -> торг по деньгам -> оффер) длиной в 2 недели - это маркер чего? И чего можно ждать от компании, проводящей такие интервью?


Да, случается и такое, увы. Мне это говорит о том, что внутри компании черезчур формализованы отношения между подразделениями, а HR пордазделению каким то образом удается так выпячивать свою деятельность, изображать свою исключительную важность, тут наверняка не зказать чего ожидать, но нужно, на мой взгляд, не прекращать поиск альтернативных мест для трудоустройства.
30 янв 18, 15:10    [21151426]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Alexklonov
Member

Откуда:
Сообщений: 158
Мштитель
G@rry_,

Вот, зайдёшь почитать как у людей бомбит, а тут вежливое общение и алмазы мудрости. Разрешите поинтересоваться - а "многоступенчатое" интервью в 5-7 этапов (знакомство с HR -> знакомство с начальством -> знакомство с командой -> техническое задание -> торг по деньгам -> оффер) длиной в 2 недели - это маркер чего? И чего можно ждать от компании, проводящей такие интервью?
Это хорошо, значит у конторы водятся деньжата, чтобы такую бюрократию развести. Однозначно нужно устраиваться. Если возьмут.
30 янв 18, 15:39    [21151599]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 2927
scf
Eugene Gri,

А можно посмотреть ваше решение? Покритикуем :-)


Мне тоже интересно посмотреть на решение задания.

С уважением, Валентин
30 янв 18, 16:01    [21151741]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Valentin Kolesnikov
scf
Eugene Gri,

А можно посмотреть ваше решение? Покритикуем :-)


Мне тоже интересно посмотреть на решение задания.

С уважением, Валентин


Валентин, откройте свою почту, я удовлетворю Ваш интерес
30 янв 18, 17:05    [21151984]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Так, благородные Господа, благочестивые Дамы!
Благодарю вас всех за конструтивную критрику и мнения, благдарю вас за интерес к теме,
я готов озвучить свои выводы.

0- Данная задача имеет нулевой практический смысл.
1- Данное тестовое задание, хотя и просто сформулировано, но на самом деле далеко не просто по сути
2- Уровень задания - не джуниорский, скорее для человека со стажем
3- Подразумевается, что человек, выполняющий задание обладает здравым смыслом и поймёт, что в рамках "тестирования" нет смысла искать решения всех нюансов, но тем не менее нюансы должны быть озвучены на разборе задания
4- В данном задани нужно продемонстрировать умение организовать IPC, использовать многопоточность, синхронизацию, знания контейнеров STL, постороения простой и внятной архитектуры.
5- Формулироака задания такова, что даёт работадателю большую степень вариативности в оценке как в минус так и в плюс, то есть вас могут просто и легко упрекнуть в том, что недостаточно учтены нюансы.

Следущие выводы обо мне
6- В следствие того, что я получил от HR-ки противоречивые(на разных этапах собеседования) мнения я склоняюсь к выводу, что дело не в задании а, в том, что моя личность их отпугнула.
7- Я как и прежде, уверен, что узнавать причины отказа нужно и полезно.
8- Мне не следовало просить у них кода другого претендента, и дело тут не в законе о собственности или секретности, просто это заставило их врать, что тоже не есть гуд. Другими слованми не нужно "лезть в банку", да я- виноват, я - сорвался.

С Уважением.
Ваш, Евгений.

p/s Простите меня, если кого обидел, я не специально.
pp/s Если есть вопросы - пишите тут, пишите в почту
30 янв 18, 18:01    [21152148]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
daunito
Member

Откуда:
Сообщений: 645
Как дети малые. Сколько денег-то просил, автор? )
До 30 я тоже возмущался и переживал, пытался выяснить чем же не подошел, продолжал делать тестовые задания, хотя еще лет 10 назад на этом форуме читал, что делать ТЗ нельзя. А вот после 30 резко изменилось отношение к работе. Я понял, что часто нет вообще никаких объективных причин. Поэтому при малейшем подозрении на неадекватность, вакансия отправляется в корзину. Не стоит тратить время на выяснение причин или обиды. Ничего личного, просто бизнес. У меня прошлый тимлид был один из лучших программистов, которых я встречал за всю жизнь. Отличное алгоритмическое мышление, глубокое понимание архитектуры, ООП и т.д. При этом и человек хороший, с которым комфортно работать. Так вот на собеседовании зарезали из-за того что не было опыта работы с какой-то либой, которую за пару вечеров можно выучить. У эйчара на бумажке пункт отмечен как "обязательно" и все.
30 янв 18, 19:46    [21152412]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Vyatich
Member

Откуда:
Сообщений: 2324
daunito
Как дети малые. Сколько денег-то просил, автор? )
До 30 я тоже возмущался и переживал, пытался выяснить чем же не подошел, продолжал делать тестовые задания, хотя еще лет 10 назад на этом форуме читал, что делать ТЗ нельзя. А вот после 30 резко изменилось отношение к работе. Я понял, что часто нет вообще никаких объективных причин. Поэтому при малейшем подозрении на неадекватность, вакансия отправляется в корзину. Не стоит тратить время на выяснение причин или обиды. Ничего личного, просто бизнес. У меня прошлый тимлид был один из лучших программистов, которых я встречал за всю жизнь. Отличное алгоритмическое мышление, глубокое понимание архитектуры, ООП и т.д. При этом и человек хороший, с которым комфортно работать. Так вот на собеседовании зарезали из-за того что не было опыта работы с какой-то либой, которую за пару вечеров можно выучить. У эйчара на бумажке пункт отмечен как "обязательно" и все.

"Зарезанному" скорее повезло, ибо компании, в которых в список обязательных требований включается либа, которая учится за пару вечеров, должны идти лесом для адекватного человека. Пусть HR играет в русскую рулетку с более походящими для этого хомячками.
30 янв 18, 19:53    [21152420]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
daunito
Как дети малые. Сколько денег-то просил, автор? )
До 30 я тоже возмущался и переживал, пытался выяснить чем же не подошел, продолжал делать тестовые задания, хотя еще лет 10 назад на этом форуме читал, что делать ТЗ нельзя. А вот после 30 резко изменилось отношение к работе. Я понял, что часто нет вообще никаких объективных причин. Поэтому при малейшем подозрении на неадекватность, вакансия отправляется в корзину. Не стоит тратить время на выяснение причин или обиды. Ничего личного, просто бизнес. У меня прошлый тимлид был один из лучших программистов, которых я встречал за всю жизнь. Отличное алгоритмическое мышление, глубокое понимание архитектуры, ООП и т.д. При этом и человек хороший, с которым комфортно работать. Так вот на собеседовании зарезали из-за того что не было опыта работы с какой-то либой, которую за пару вечеров можно выучить. У эйчара на бумажке пункт отмечен как "обязательно" и все.


Автор денег не просил, до денег дело не дошло :)
30 янв 18, 20:04    [21152434]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
love_bach
Member

Откуда:
Сообщений: 289
Eugene Gri
daunito
Как дети малые. Сколько денег-то просил, автор? )
До 30 я тоже возмущался и переживал, пытался выяснить чем же не подошел, продолжал делать тестовые задания, хотя еще лет 10 назад на этом форуме читал, что делать ТЗ нельзя. А вот после 30 резко изменилось отношение к работе. Я понял, что часто нет вообще никаких объективных причин. Поэтому при малейшем подозрении на неадекватность, вакансия отправляется в корзину. Не стоит тратить время на выяснение причин или обиды. Ничего личного, просто бизнес. У меня прошлый тимлид был один из лучших программистов, которых я встречал за всю жизнь. Отличное алгоритмическое мышление, глубокое понимание архитектуры, ООП и т.д. При этом и человек хороший, с которым комфортно работать. Так вот на собеседовании зарезали из-за того что не было опыта работы с какой-то либой, которую за пару вечеров можно выучить. У эйчара на бумажке пункт отмечен как "обязательно" и все.


Автор денег не просил, до денег дело не дошло :)


очень странно. обычно с них все как-раз только начинается.
30 янв 18, 20:09    [21152446]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
love_bach
Eugene Gri
пропущено...


Автор денег не просил, до денег дело не дошло :)


очень странно. обычно с них все как-раз только начинается.


Не согласен, с денег никогда не начинается, ну или очеь редко
30 янв 18, 20:15    [21152455]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
love_bach
Member

Откуда:
Сообщений: 289
Eugene Gri
love_bach
пропущено...


очень странно. обычно с них все как-раз только начинается.


Не согласен, с денег никогда не начинается, ну или очеь редко


как хотите. не начинайте. продолжайте практиковаться в ТЗ
30 янв 18, 20:20    [21152464]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
love_bach
Eugene Gri
пропущено...


Не согласен, с денег никогда не начинается, ну или очеь редко


как хотите. не начинайте. продолжайте практиковаться в ТЗ


Да, конечно, Вам - удачи!
30 янв 18, 20:24    [21152471]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
Eugene Gri
love_bach
пропущено...


очень странно. обычно с них все как-раз только начинается.


Не согласен, с денег никогда не начинается, ну или очеь редко

Вы делали тестовое задание на 3 дня, даже примерно не представляя себе, сколько денег может предложить работодатель? Ну Вы, ээ, оптимист :)
30 янв 18, 20:37    [21152491]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Кот Матроскин
Eugene Gri
пропущено...


Не согласен, с денег никогда не начинается, ну или очеь редко

Вы делали тестовое задание на 3 дня, даже примерно не представляя себе, сколько денег может предложить работодатель? Ну Вы, ээ, оптимист :)


Ну, это уж слишком, я представлял "сколько денег", просто разговор о конкретных деньгах к тому времени ещё не зашёл
30 янв 18, 20:40    [21152497]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 26865
Eugene Gri
Следущие выводы обо мне
6- В следствие того, что я получил от HR-ки противоречивые(на разных этапах собеседования) мнения я склоняюсь к выводу, что дело не в задании а, в том, что моя личность их отпугнула.
Они дали множеству людей тестовые задания, а потом выбрали из тех, кто его выполнил.
Т.е. они не выбирали по критерию "выполнивший задание лучше всех".
Это нормально, по другому и не бывает, это же не официальный тендер.

Понять, как они оценили решение, ну и вообще понять, как прошло собеседование, разумеется, полезно. Но тут уж как повезёт, либо скажут, либо не скажут.
Обычно не говорят, что бы оградить себя от негатива (вот и вы повели себя агрессивно, и вообще большинство людей тоже не будут благодарить и улыбаться). Поэтому кандидата, которому отказали, спихивают на младшую ХР, а она пых-пых придумывает причины, что бы побыстрее закончить разговор, и навсегда.
30 янв 18, 23:49    [21152824]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 2927
Eugene Gri
Valentin Kolesnikov
пропущено...


Мне тоже интересно посмотреть на решение задания.

С уважением, Валентин


Валентин, откройте свою почту, я удовлетворю Ваш интерес


Адрес почты pt.backend @ gmail.com (без пробелов).

С уважением, Валентин
31 янв 18, 08:54    [21153106]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Valentin Kolesnikov
Eugene Gri
пропущено...


Валентин, откройте свою почту, я удовлетворю Ваш интерес


Адрес почты pt.backend @ gmail.com (без пробелов).

С уважением, Валентин


Валентин, добрый день!
Отправил Вам в этот вдрес, надеюсь что это не попадёт во всебщий доступ. Если хотите покритиковать - пишите мне в почту
31 янв 18, 12:52    [21153976]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
alexeyvg
Eugene Gri
Следущие выводы обо мне
6- В следствие того, что я получил от HR-ки противоречивые(на разных этапах собеседования) мнения я склоняюсь к выводу, что дело не в задании а, в том, что моя личность их отпугнула.
Они дали множеству людей тестовые задания, а потом выбрали из тех, кто его выполнил.
Т.е. они не выбирали по критерию "выполнивший задание лучше всех".
Это нормально, по другому и не бывает, это же не официальный тендер.

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


Да, я думаю, что не нормально, потому что некрасиво лгать людям, даже если человек не подошёл по какм-то качествам, нужно как-то объясниться, дать понять в чём ошибка, ведь все мы можем ошибаться.
31 янв 18, 12:59    [21154002]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
G@rry_
Member

Откуда:
Сообщений: 218
Alexklonov
Мштитель
G@rry_,

Вот, зайдёшь почитать как у людей бомбит, а тут вежливое общение и алмазы мудрости. Разрешите поинтересоваться - а "многоступенчатое" интервью в 5-7 этапов (знакомство с HR -> знакомство с начальством -> знакомство с командой -> техническое задание -> торг по деньгам -> оффер) длиной в 2 недели - это маркер чего? И чего можно ждать от компании, проводящей такие интервью?
Это хорошо, значит у конторы водятся деньжата, чтобы такую бюрократию развести. Однозначно нужно устраиваться. Если возьмут.

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

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

А про людей которые просто не ценят чужое время или вообще не понимают зачем дают большие ТЗ даже писать скучно.
31 янв 18, 14:18    [21154307]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
Eugene Gri
Да, я думаю, что не нормально, потому что некрасиво лгать людям

Может и некрасиво - но нужно.
Представьте ситуацию - к Вам пришел устраиваться соискатель, и Вы видите что он мучудак. Вы его, естественно, не берете - кому охота работать с чудаком? Но официально сообщить ему правду "Мы Вас не берем, потому что Вы чудак" - нельзя, он в суд побежит (чудак же). И вот приходится ему, как Вы выражаетесь, лгать на тему причины отказа. Вы видите другую альтернативу в этой ситуации? Я вот не вижу.
Nothing personal.
31 янв 18, 14:41    [21154428]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
982183
Member

Откуда: VL
Сообщений: 2257
Не, ну почему же.
Я популярно объяснял людям их неадекватность.
В половине случаев до них даже доходило.
31 янв 18, 14:56    [21154497]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eleanor
Member

Откуда:
Сообщений: 1756
Кот Матроскин
Но официально сообщить ему правду "Мы Вас не берем, потому что Вы чудак" - нельзя, он в суд побежит

Чтобы в суд побежал и что-то с этого получил, скорее всего это надо сделать письменно на бланке организации с подписью и печатью.
Если по электронной почте что-то написали или устно сказали, разве это можно в суде предъявить?
31 янв 18, 14:59    [21154518]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Vyatich
Member

Откуда:
Сообщений: 2324
Eleanor
Кот Матроскин
Но официально сообщить ему правду "Мы Вас не берем, потому что Вы чудак" - нельзя, он в суд побежит

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

Это вы чудаку объясните.
31 янв 18, 15:18    [21154629]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 52811
Блог
Кот Матроскин
Вы видите другую альтернативу в этой ситуации? Я вот не вижу.

Человек не бывает сферическим чудаком в вакууме. Если Вы не хотите брать чувака - значит, есть конкретная рабочая причина, конкретное обстоятельство, которому противоречат его взгляды, действия, привычки итп. И это обстоятельство вполне можно назвать, не погрешив ни против истины, ни против вежливости.
31 янв 18, 15:22    [21154649]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Vyatich
Member

Откуда:
Сообщений: 2324
982183
Не, ну почему же.
Я популярно объяснял людям их неадекватность.

А "популярно" это как?
982183
В половине случаев до них даже доходило.

А другая половина таки "популярно" объясняла Вам какой же Вы ... чудак? :)
31 янв 18, 15:24    [21154659]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
982183
Member

Откуда: VL
Сообщений: 2257
Vyatich
А "популярно" это как?

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

Vyatich
А другая половина таки "популярно" объясняла Вам какой же Вы ... чудак? :)

Были и такие.
Но чаше всего типаж "непризнанный гений".
31 янв 18, 15:37    [21154722]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
Eleanor
Чтобы в суд побежал и что-то с этого получил, скорее всего это надо сделать письменно на бланке организации с подписью и печатью.
Если по электронной почте что-то написали или устно сказали, разве это можно в суде предъявить?

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

softwarer
Кот Матроскин
Вы видите другую альтернативу в этой ситуации? Я вот не вижу.

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


Ok, конкретный кейс - человек из команды, которому Вы доверяете, говорит "Да я его знаю, работали однажды вместе. Конченный чудак - постоянно врет, подставляет коллег, и т.п.". Ваша формулировка отказа, "не грешащая против истины" и способная устоять в российском суде?
31 янв 18, 15:58    [21154796]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 52811
Блог
Кот Матроскин
Ok, конкретный кейс - человек из команды, которому Вы доверяете, говорит "Да я его знаю, работали однажды вместе. Конченный чудак - постоянно врет, подставляет коллег, и т.п.". Ваша формулировка отказа, "не грешащая против истины"

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

Кот Матроскин
и способная устоять в российском суде?

Честно говоря, я вообще не представляю себе формулировки, способной устоять в российском суде. Вернее - если судить по российским законам и не заносить судье.
31 янв 18, 16:00    [21154803]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eleanor
Member

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

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

Это можно вежливо передать это кандидату или лучше соврать?
31 янв 18, 16:01    [21154809]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
softwarer
Кот Матроскин
Ok, конкретный кейс - человек из команды, которому Вы доверяете, говорит "Да я его знаю, работали однажды вместе. Конченный чудак - постоянно врет, подставляет коллег, и т.п.". Ваша формулировка отказа, "не грешащая против истины"

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

Не очень надежно - чудак мог не указать тот проект в резюме, ваш коллега мог не указать тот проект в резюме...
31 янв 18, 16:05    [21154823]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
softwarer,
И, главное, вопрос-то не в том, позовете Вы чудака или нет, потребуется Вам отмазываться или нет. Ваш тезис был "Если есть конкретная причина - ее можно назвать". Ну назовите в этом случае :) причина имхо вполне конкретна
31 янв 18, 16:11    [21154865]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 52811
Блог
Eleanor
Еще через пол года на этом форуме узнала, что на самом деле кто-то из руководителей узнал как меня зовут и заявил, что женщин на работу брать не будет.

Это можно вежливо передать это кандидату или лучше соврать?

Лично я бы на месте этой hr сказал так: к сожалению, произошёл форс-мажор, один из топов случайно увидел Ваше резюме и очень резко и категорично выступил против Вашего приглашения. Признаться, я в растерянности, такого никогда не случалось, и, надеюсь, больше не случится, но как Вы понимаете, я вынуждена подчиниться и могу только попросить у Вас прощения за такую невообразимую накладку. Моё воспитание не позволяет процитировать его слова, могу лишь сказать, что я не считаю его аргументацию сколько-нибудь достойной, верной и убедительной и вообще не уверена, что он Вас ни с кем не спутал.
31 янв 18, 16:17    [21154910]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
softwarer
Eleanor
Еще через пол года на этом форуме узнала, что на самом деле кто-то из руководителей узнал как меня зовут и заявил, что женщин на работу брать не будет.

Это можно вежливо передать это кандидату или лучше соврать?

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


Впечатляет..
31 янв 18, 16:26    [21154969]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 52811
Блог
Кот Матроскин
Ну назовите в этом случае :) причина имхо вполне конкретна

Запросто. "Команда не хочет с Вами работать. Я со своей стороны не готов рисковать атмосферой в коллективе и в итоге увольнением двух-трёх опытных работников из-за одного нового".
31 янв 18, 16:26    [21154970]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexpo1986
Member

Откуда: Я здесь, дабы помочь вам осознать степень вашего заблуждения
Сообщений: 806
Eleanor
Это можно вежливо передать это кандидату или лучше соврать?


Не поймите меня неправильно, но я бы уточнил, какова вероятность ухода в декрет сразу после найма. Если уже есть дети и проскальзывает мотивация работать, не просиживать штаны - то почему нет. Если у дамы в резюме проблемы и звоночки есть - лучше отказать. Хотя я лично работал с дамами двумя программершами - крутые дамы, одна уже в Apple, вторая - в калифорнии где то на дядю упарывается. Но таких единицы.. просто единицы
31 янв 18, 16:32    [21154998]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
softwarer
Кот Матроскин
Ну назовите в этом случае :) причина имхо вполне конкретна

Запросто. "Команда не хочет с Вами работать. Я со своей стороны не готов рисковать атмосферой в коллективе и в итоге увольнением двух-трёх опытных работников из-за одного нового".

Ну и если против Вас профессиональный сутяга (а вероятность этого, учитывая причину, немалая) - Вы подставили компанию.
Это просто для РФ пока довольно редкий кейс, поэтому кажется что можно не париться. Примерно как рассуждать "Да ладно, СПИД - это где-то далеко, чего в нашей деревне-то с резинками заморачиваться!". Можно, да.. до поры до времени.
31 янв 18, 16:38    [21155024]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eleanor
Member

Откуда:
Сообщений: 1756
alexpo1986,

Не тот случай. Меня за всё время всего 1 раз спросили про детей.
Видимо, физтеховский красный диплом, разговорный английский, работа в Англии производят впечатление того, кого работа мотивирует.
31 янв 18, 16:39    [21155035]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 52811
Блог
Кот Матроскин
Ну и если против Вас профессиональный сутяга (а вероятность этого, учитывая причину, немалая) - Вы подставили компанию.

Если против меня профессиональный сутяга - любая формулировка подставляет компанию. По нашему законодательству, при наличии испытательного срока (а он есть везде) компания вообще обязана брать всех пришедших, а попытка ляпнуть что-то про недостаточную квалификацию подставит куда сильнее, чем написанное мной.
31 янв 18, 16:42    [21155039]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Addx
Member

Откуда:
Сообщений: 722
alexpo1986
Не поймите меня неправильно, но я бы уточнил, какова вероятность ухода в декрет сразу после найма. Если уже есть дети и проскальзывает мотивация работать, не просиживать штаны - то почему нет. Если у дамы в резюме проблемы и звоночки есть - лучше отказать. Хотя я лично работал с дамами двумя программершами - крутые дамы, одна уже в Apple, вторая - в калифорнии где то на дядю упарывается. Но таких единицы.. просто единицы


У знакомой на работе мужики сваливали гораздо чаще дам, которым потом приходилось тянуть работу. И сваливали не в декрет ), а в другое место. Будете уточнять - "Какова вероятность, что Вы свалите в другое место?"
Проблемы и звоночки в резюме - это тоже сильно.
По моему опыту, процент грамотных разработчиков не сильно зависит от пола, просто женщин вообще в отрасли намного меньше.
31 янв 18, 16:42    [21155040]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eleanor
Member

Откуда:
Сообщений: 1756
alexpo1986,

А, да, в MS в Москве оффер у меня уже был. Заграницу уезжать не хочу.
31 янв 18, 16:42    [21155042]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Кот Матроскин
Eugene Gri
Да, я думаю, что не нормально, потому что некрасиво лгать людям

Может и некрасиво - но нужно.
Представьте ситуацию - к Вам пришел устраиваться соискатель, и Вы видите что он мучудак. Вы его, естественно, не берете - кому охота работать с чудаком? Но официально сообщить ему правду "Мы Вас не берем, потому что Вы чудак" - нельзя, он в суд побежит (чудак же). И вот приходится ему, как Вы выражаетесь, лгать на тему причины отказа. Вы видите другую альтернативу в этой ситуации? Я вот не вижу.
Nothing personal.


Уважаемый, Кот Матроскин!
Я считаю альтернатива - всегда есть. Даже если человек - чудак, или даже в большей гротесковой форме, как Вам показалось, всегда можно найти слова, не оскарбляющие индивида, объяснить оному какова истинная причина отказа. И оный индивид не побежит в суд и, не будет портить вам настроения. Можно, конечно и соврать, только ложь должна согласовываться с переговорным процессом и фактами произошедшими ранее, иначе складывается дурное впечатление о нанимающей компаниию Иными словами, HR должен иметь ввиду, что любые необдуманные слова играют против позитивного имиджа компании. То есть, чудаки могут встречатяся по обе стороны, и Вас, многоуважаемый Кот Матроскин, тоже могут наградить эпитетом. Я считаю, плохо, и наверное это мнение разделят многие, плохо, что Вы не видите альтернативы, это обстоятельство Вас как-то характеризует?
31 янв 18, 17:07    [21155128]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
softwarer
Eleanor
Еще через пол года на этом форуме узнала, что на самом деле кто-то из руководителей узнал как меня зовут и заявил, что женщин на работу брать не будет.

Это можно вежливо передать это кандидату или лучше соврать?

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


О! - Да. Я согласен с Вами. Даже если не удается сохранить имидж компании, хорошо, если HR сохранит своё лицо в рамках приличий, извиниться никогда не зазорно.
31 янв 18, 17:10    [21155136]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
Eugene Gri
Кот Матроскин
пропущено...

Может и некрасиво - но нужно.
Представьте ситуацию - к Вам пришел устраиваться соискатель, и Вы видите что он мучудак. Вы его, естественно, не берете - кому охота работать с чудаком? Но официально сообщить ему правду "Мы Вас не берем, потому что Вы чудак" - нельзя, он в суд побежит (чудак же). И вот приходится ему, как Вы выражаетесь, лгать на тему причины отказа. Вы видите другую альтернативу в этой ситуации? Я вот не вижу.
Nothing personal.


Уважаемый, Кот Матроскин!
Я считаю альтернатива - всегда есть. Даже если человек - чудак, или даже в большей гротесковой форме, как Вам показалось, всегда можно найти слова, не оскарбляющие индивида, объяснить оному какова истинная причина отказа.

О, можно Вашу версию объяснения для моего кейса?
Eugene Gri
Я считаю, плохо, и наверное это мнение разделят многие, плохо, что Вы не видите альтернативы, это обстоятельство Вас как-то характеризует?

Наверняка.
31 янв 18, 17:14    [21155149]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
Кот Матроскин
Eugene Gri
пропущено...


Уважаемый, Кот Матроскин!
Я считаю альтернатива - всегда есть. Даже если человек - чудак, или даже в большей гротесковой форме, как Вам показалось, всегда можно найти слова, не оскарбляющие индивида, объяснить оному какова истинная причина отказа.

О, можно Вашу версию объяснения для моего кейса?
Eugene Gri
Я считаю, плохо, и наверное это мнение разделят многие, плохо, что Вы не видите альтернативы, это обстоятельство Вас как-то характеризует?

Наверняка.


Да, конечно.

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

В личной - же беседе, по телефону можно человеку рассказать что именно не понравилось. И нет тут вранья
31 янв 18, 17:48    [21155284]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Кот Матроскин
Member

Откуда: Москва
Сообщений: 8081
Eugene Gri

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

Правда, никакого "коллегиального голосования" не было, т.е. это ровно такое же вранье - но закомплексованному соискателю должно быть приятно, да.
31 янв 18, 18:18    [21155395]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
tehKosh
Member

Откуда:
Сообщений: 97
а подойдет ли для этой задачи реализация и использование какого-нибудь варианта lock-free map?
31 янв 18, 20:03    [21155610]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 26865
Eugene Gri
alexeyvg
пропущено...
Они дали множеству людей тестовые задания, а потом выбрали из тех, кто его выполнил.
Т.е. они не выбирали по критерию "выполнивший задание лучше всех".
Это нормально, по другому и не бывает, это же не официальный тендер.

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

Да, я думаю, что не нормально, потому что некрасиво лгать людям, даже если человек не подошёл по какм-то качествам, нужно как-то объясниться, дать понять в чём ошибка, ведь все мы можем ошибаться.
Ненормально хотеть получить побольше, отдать поменьше, получить себе профит? :-) Что делать, таково большинство, люди не готовы жертвовать собой ради других, таких единицы, смиритесь.

Тем более причину трудно сформулировать, и к тому же большинство (и вы тоже) не готовы не только к самопожертвованию, но и к принятию жертвы.
Т.е., проще говоря, вам пойдут навстречу, а вы человека размажете. И будет он ходить, весь такой опущенный, и думать "ну нафига я полез помогать, надо было сказать что то обтекаемое из стандартных ответов, он мне что, муж/брат?"
31 янв 18, 21:12    [21155727]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 26865
Eugene Gri
Да, конечно.

Уважаемый соискатель(такой-то), хочу выразить Вам признательность за Ваше внимание к нашей компании, по результатам последнего тура собескдования, коллегиальное голосование по Вашей кандидатуре не позволяет мне предложить Вам трудоустройство в нашей Компании. Извините нас, за потраченное Ваше время. Желаем Вам всех благ и увпехов.
HR - такая-то
Ой, так вам не нужно правдивого ответа? Нужно наврать квалифицированно, что бы после отказа вы ушли воодушевлённый, их бы нахваливали и давали их контакты?
Может, это они могут сделать из соображений выгоды, так сказать, ещё и наварить на кандидате, которому отказали, но с морально-этической стороны тут к ним никаких вопросов нет.
31 янв 18, 21:22    [21155744]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
ChronSQL
Member

Откуда:
Сообщений: 492
Eugene Gri
Передача и обработка содержимого каждого файла должна идти отдельным потоком. Пути к папкам входными файлами передаются в качестве параметров первого процесса. Канал взаимодействия между процессами может быть любым.
Не использовать сторонние (не MS библиотеки), предпочтительно использовать только WinAPI и STL.
Использовать только базовый С++ (не С++11 и пр.).

То что нельзя использовать C++11 показывает, что автора самого задания надо менять.
Как минимум, надо использовать C++11 - сохранять пары <8-байт,количество> в локальных для каждого потока std::unordered_map (C++11), и периодически делать пакетную синхронизацию - под std::mutex (C++11) через swap() отдавать в дополнительный поток заполненные локальные std::unordered_map и получать пустые, а дополнительный поток уже будет сливать все полученные локальные std::unordered_map в один глобальный, а затем очистит полученные локальные. (А можно эффективнее без std::mutex через atomic-cas менять индекс текущего локального unordered_map на свободный, но это долго объяснять)

tehKosh
а подойдет ли для этой задачи реализация и использование какого-нибудь варианта lock-free map?

Теоретически - можно, а точнее lock-free resizeable unordered map, т.к. его достаточно, он намного быстрее и намного меньше ест памяти, чем lock-free map (ordered). И не любой lock-free map является resizeable. Но если нельзя использовать C++11 и сторонние библиотеки (libcds - StripedMap / FeldmanHashMap или junction::ConcurrentMap_Leapfrog / Grampa), то самому делать lock-free unordered map на WINAPI atomic functions - это полное извращение. Но lock-free применяются, когда важна low-latency, т.е. соседнему потоку зачем-то срочно нужны данные из другого потока. А в данной задаче этого не требуется, здесь необходим high-throughput, а значит намного быстрее будет редкая пакетная синхронизация.
1 фев 18, 00:12    [21156112]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
tehKosh
а подойдет ли для этой задачи реализация и использование какого-нибудь варианта lock-free map?


Нет! Использование lock-free map - это не по теме данной задачи, извините, но - мимо!
1 фев 18, 00:20    [21156121]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
alexeyvg
Eugene Gri
пропущено...

Да, я думаю, что не нормально, потому что некрасиво лгать людям, даже если человек не подошёл по какм-то качествам, нужно как-то объясниться, дать понять в чём ошибка, ведь все мы можем ошибаться.
Ненормально хотеть получить побольше, отдать поменьше, получить себе профит? :-) Что делать, таково большинство, люди не готовы жертвовать собой ради других, таких единицы, смиритесь.

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


Нет, Вы - не правы! Возможно Вас окружают только такие люди, меня-же нет, человек, готовый на жертвы никогда не станет переживать о них. Про профит - "дать меньше - получить больше", да - в этом есть ваша правда, я стараюсь дитанцироваться от таких людей, не всегда получается, но это не означает, что я смирюсь.
1 фев 18, 00:27    [21156134]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
alexeyvg
Eugene Gri
Да, конечно.

Уважаемый соискатель(такой-то), хочу выразить Вам признательность за Ваше внимание к нашей компании, по результатам последнего тура собескдования, коллегиальное голосование по Вашей кандидатуре не позволяет мне предложить Вам трудоустройство в нашей Компании. Извините нас, за потраченное Ваше время. Желаем Вам всех благ и увпехов.
HR - такая-то
Ой, так вам не нужно правдивого ответа? Нужно наврать квалифицированно, что бы после отказа вы ушли воодушевлённый, их бы нахваливали и давали их контакты?
Может, это они могут сделать из соображений выгоды, так сказать, ещё и наварить на кандидате, которому отказали, но с морально-этической стороны тут к ним никаких вопросов нет.


И да и нет, одновременно. Нужно, по-возможности, в переговорах говорить правду, если не получается, то умело сохранить своё лицо, при этом не принизить оппонента, тем более не выглядеть глупо выдав диссонирующую информацию. "Наварить на кандидате" - ну уж это уже изощренный измышлизм, - фантастика :)
1 фев 18, 00:37    [21156153]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
ChronSQL
Eugene Gri
Передача и обработка содержимого каждого файла должна идти отдельным потоком. Пути к папкам входными файлами передаются в качестве параметров первого процесса. Канал взаимодействия между процессами может быть любым.
Не использовать сторонние (не MS библиотеки), предпочтительно использовать только WinAPI и STL.
Использовать только базовый С++ (не С++11 и пр.).

То что нельзя использовать C++11 показывает, что автора самого задания надо менять.
Как минимум, надо использовать C++11 - сохранять пары <8-байт,количество> в локальных для каждого потока std::unordered_map (C++11), и периодически делать пакетную синхронизацию - под std::mutex (C++11) через swap() отдавать в дополнительный поток заполненные локальные std::unordered_map и получать пустые, а дополнительный поток уже будет сливать все полученные локальные std::unordered_map в один глобальный, а затем очистит полученные локальные. (А можно эффективнее без std::mutex через atomic-cas менять индекс текущего локального unordered_map на свободный, но это долго объяснять)

tehKosh
а подойдет ли для этой задачи реализация и использование какого-нибудь варианта lock-free map?

Теоретически - можно, а точнее lock-free resizeable unordered map, т.к. его достаточно, он намного быстрее и намного меньше ест памяти, чем lock-free map (ordered). И не любой lock-free map является resizeable. Но если нельзя использовать C++11 и сторонние библиотеки (libcds - StripedMap / FeldmanHashMap или junction::ConcurrentMap_Leapfrog / Grampa), то самому делать lock-free unordered map на WINAPI atomic functions - это полное извращение. Но lock-free применяются, когда важна low-latency, т.е. соседнему потоку зачем-то срочно нужны данные из другого потока. А в данной задаче этого не требуется, здесь необходим high-throughput, а значит намного быстрее будет редкая пакетная синхронизация.



Уважаемый, ChronSQL, доброй ночи!

Я рад!, рад увидеть то как Вы продемонстрировали эрудицию в lock-free, hashed-containers, CAS модных библиотек :) Да, Вы сами сказали, что применение данного подхода важно при low-latency требованиях, здесь же такого требования нет. Использование unordered_map даёт хорошую скорость при малом количестве коллизий, то есть в случае когда данных относительно немного, но когда коллизий хэш-функции уже много, то производительность поиска и вставки резко хуже обычного map!! О-ужас!
Хочу Вас отчасти разочаровать, применять или не применять unordered-map это всего лишь незначимая подробность в решении задачи. А Вот собирать локальные (в контексте Thread-a) статистики, а потом сливать их в общую - это дело, хорошее замечание.
1 фев 18, 01:06    [21156183]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
ChronSQL
Member

Откуда:
Сообщений: 492
Eugene Gri
ChronSQL
пропущено...

То что нельзя использовать C++11 показывает, что автора самого задания надо менять.
Как минимум, надо использовать C++11 - сохранять пары <8-байт,количество> в локальных для каждого потока std::unordered_map (C++11), и периодически делать пакетную синхронизацию - под std::mutex (C++11) через swap() отдавать в дополнительный поток заполненные локальные std::unordered_map и получать пустые, а дополнительный поток уже будет сливать все полученные локальные std::unordered_map в один глобальный, а затем очистит полученные локальные. (А можно эффективнее без std::mutex через atomic-cas менять индекс текущего локального unordered_map на свободный, но это долго объяснять)

пропущено...

Теоретически - можно, а точнее lock-free resizeable unordered map, т.к. его достаточно, он намного быстрее и намного меньше ест памяти, чем lock-free map (ordered). И не любой lock-free map является resizeable. Но если нельзя использовать C++11 и сторонние библиотеки (libcds - StripedMap / FeldmanHashMap или junction::ConcurrentMap_Leapfrog / Grampa), то самому делать lock-free unordered map на WINAPI atomic functions - это полное извращение. Но lock-free применяются, когда важна low-latency, т.е. соседнему потоку зачем-то срочно нужны данные из другого потока. А в данной задаче этого не требуется, здесь необходим high-throughput, а значит намного быстрее будет редкая пакетная синхронизация.



Уважаемый, ChronSQL, доброй ночи!

Я рад!, рад увидеть то как Вы продемонстрировали эрудицию в lock-free, hashed-containers, CAS модных библиотек :) Да, Вы сами сказали, что применение данного подхода важно при low-latency требованиях, здесь же такого требования нет. Использование unordered_map даёт хорошую скорость при малом количестве коллизий, то есть в случае когда данных относительно немного, но когда коллизий хэш-функции уже много, то производительность поиска и вставки резко хуже обычного map!! О-ужас!
Хочу Вас отчасти разочаровать, применять или не применять unordered-map это всего лишь незначимая подробность в решении задачи. А Вот собирать локальные (в контексте Thread-a) статистики, а потом сливать их в общую - это дело, хорошее замечание.

Это "О-ужас!" и "резко хуже обычного map!!" только у тех, кто совсем не знает об std::unordered_map, где можно заранее устанавливать необходимое большое количество букетов rehash(кол-во букетов). Или устанавливать max_load_factor(элементов в букете) и исходя из load factor резервировать букеты под заданное число элементов reserve(кол-во элементов).
Тут даже хэш-функцию менять не требуется, хотя и это можно.
	std::unordered_map<uint64_t, uint64_t> um(100000000);  // bucket_count = 100 000 000
	std::cout << "About 100 millions items with an incredibly low probability of collisions \n";
1 фев 18, 03:25    [21156247]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
Eugene Gri
Member

Откуда: Москва
Сообщений: 102
ChronSQL
Eugene Gri
пропущено...



Уважаемый, ChronSQL, доброй ночи!

Я рад!, рад увидеть то как Вы продемонстрировали эрудицию в lock-free, hashed-containers, CAS модных библиотек :) Да, Вы сами сказали, что применение данного подхода важно при low-latency требованиях, здесь же такого требования нет. Использование unordered_map даёт хорошую скорость при малом количестве коллизий, то есть в случае когда данных относительно немного, но когда коллизий хэш-функции уже много, то производительность поиска и вставки резко хуже обычного map!! О-ужас!
Хочу Вас отчасти разочаровать, применять или не применять unordered-map это всего лишь незначимая подробность в решении задачи. А Вот собирать локальные (в контексте Thread-a) статистики, а потом сливать их в общую - это дело, хорошее замечание.

Это "О-ужас!" и "резко хуже обычного map!!" только у тех, кто совсем не знает об std::unordered_map, где можно заранее устанавливать необходимое большое количество букетов rehash(кол-во букетов). Или устанавливать max_load_factor(элементов в букете) и исходя из load factor резервировать букеты под заданное число элементов reserve(кол-во элементов).
Тут даже хэш-функцию менять не требуется, хотя и это можно.
	std::unordered_map<uint64_t, uint64_t> um(100000000);  // bucket_count = 100 000 000
	std::cout << "About 100 millions items with an incredibly low probability of collisions \n";


Я и не сомневался, что Вы хорошо знаете об устройстве unordered_map, и даже, может лучше многих. Я не буду с Вами спорить но, думаю, что это тема для отдельного обсуждения. Я хочу сказать, что для данной задачи выбор между map и unordered_map не имеет решающего значения.
1 фев 18, 09:22    [21156496]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
tehKosh
Member

Откуда:
Сообщений: 97
ChronSQL, спасибо за коммент по lock-free варианту реализации
ChronSQL
Как минимум, надо использовать C++11 - сохранять пары <8-байт,количество> в локальных для каждого потока std::unordered_map (C++11), и периодически делать пакетную синхронизацию - под std::mutex (C++11) через swap() отдавать в дополнительный поток заполненные локальные std::unordered_map и получать пустые, а дополнительный поток уже будет сливать все полученные локальные std::unordered_map в один глобальный, а затем очистит полученные локальные. (А можно эффективнее без std::mutex через atomic-cas менять индекс текущего локального unordered_map на свободный, но это долго объяснять)

а можно сказать, что такая предложенная реализация по сути является вариантом map-reduce pattern?
1 фев 18, 16:20    [21158232]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
ChronSQL
Member

Откуда:
Сообщений: 492
tehKosh
ChronSQL, спасибо за коммент по lock-free варианту реализации
ChronSQL
Как минимум, надо использовать C++11 - сохранять пары <8-байт,количество> в локальных для каждого потока std::unordered_map (C++11), и периодически делать пакетную синхронизацию - под std::mutex (C++11) через swap() отдавать в дополнительный поток заполненные локальные std::unordered_map и получать пустые, а дополнительный поток уже будет сливать все полученные локальные std::unordered_map в один глобальный, а затем очистит полученные локальные. (А можно эффективнее без std::mutex через atomic-cas менять индекс текущего локального unordered_map на свободный, но это долго объяснять)

а можно сказать, что такая предложенная реализация по сути является вариантом map-reduce pattern?

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

https://en.wikipedia.org/wiki/MapReduce
It is inspired by the map and reduce functions commonly used in functional programming

https://en.wikipedia.org/wiki/Map_(higher-order_function)
In C++'s Standard Template Library, it is called std::transform

https://en.wikipedia.org/wiki/Fold_(higher-order_function)
C++ std::accumulate(begin, end, initval, func)

Классический MapReduce - это если задачу можно свести к коду std::transform + std::accumulate:

typedef std::unordered_map<uint64_t, uint64_t> map_t;
struct task_t {
  std::string filename;
  std::shared_ptr<map_t> result;
  std::shared_ptr<std::thread> thread;
};
std::vector<task_t> tasks;

// map
std::transform(tasks.begin(), tasks.end(), tasks.begin(), [](task_t t) -> task_t { 
  t.result = std::make_shared<map_t>();
  t.thread = std::make_shared<std::thread>([&](){ process_function(t.filename, t.result); }); 
  return t;
}); 

// reduce
map_t result_merged_map = 
    std::accumulate(tasks.begin(), tasks.end(), map_t(10000000), // 10 M buckets
    [](map_t map, task_t t) { 
    	t.thread->join(); 
    	return merge_maps(map, t.result); // map.merge(*t.result); C++17
    });
1 фев 18, 19:57    [21158835]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
ChronSQL
Member

Откуда:
Сообщений: 492
ChronSQL
t.thread = std::make_shared<std::thread>([&](){ process_function(t.filename, t.result); }); 

Тут конечно [=], а не [&].
1 фев 18, 20:17    [21158881]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
tehKosh
Member

Откуда:
Сообщений: 97
ChronSQL, спасибо за развернутый ответ.
1 фев 18, 22:56    [21159119]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34216
Eugene Gri
Не использовать сторонние (не MS библиотеки), предпочтительно использовать только WinAPI и STL.
Использовать только базовый С++ (не С++11 и пр.).

!


мнений тут двух быть не может...

Не С++11 ? Давай, до свидания...
6 фев 18, 03:36    [21168770]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34216
Eugene Gri,

ну и тут достаточно заморочно втаптывать это именно в таком виде..
неделю где-то...
я бы послал их в жопу
у тебя дела нет других?
6 фев 18, 03:39    [21168773]     Ответить | Цитировать Сообщить модератору
 Re: Еще раз о тестовых заданиях  [new]
GuidanceMoralic
Member [скрыт] [заблокирован]

Откуда:
Сообщений: 242
ChronSQL
ChronSQL
t.thread = std::make_shared<std::thread>([&](){ process_function(t.filename, t.result); }); 

Тут конечно [=], а не [&].

ChronSQL - клёвый чел, хотел бы с ним оказаться в одной команде)
6 фев 18, 14:09    [21169911]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2 3 4 5 6      [все]
Все форумы / Работа Ответить