Вход на сайт
Задачки из сегодняшнего теста
15.10.10 15:08
Задачки из сегодняшнего теста.
Объем теста - 27 заданий, описание самого объемного из которых занимает 2.5 страницы - чисто DBA-задача.
Предлагаемая позиция - Senior C# Developer.
Те задачки, которыми хочу поделится, выполнить нет никаких проблем, но не могу понять что именно проверялось:
Задачка 1. Даны два целых значения. Поменять из местами, не заводя новую переменную.
Задачка 2. Даны две строки. Поменять их местами, не заводя новую переменную.
Задачка 3. Дана строка вида "1:2:3:4". Перевести в массив целых.
Задачка 4. Даны SQL-строка и SqlConnection. Выполнить sql, возвратив единичное значение.
Что можно такими задачками протестить у Senior'a? Знание 2-3 трюков? Знание названий методов?
Трюки Я таки могу слепить и по-круче... но смысла в них не вижу - код должен быть прозрачным.
Название методов - так Я их не помню... т.е. знаю что такая хрень где-то там есть, но точное название метода, его принадлежность и какой список параметров - даже и не думал запоминать... где-то со времен OWL и TurboVision оно совершенно бесполезно - достаточно знать что такая функциональность примерно там есть.
Объем теста - 27 заданий, описание самого объемного из которых занимает 2.5 страницы - чисто DBA-задача.
Предлагаемая позиция - Senior C# Developer.
Те задачки, которыми хочу поделится, выполнить нет никаких проблем, но не могу понять что именно проверялось:
Задачка 1. Даны два целых значения. Поменять из местами, не заводя новую переменную.
Задачка 2. Даны две строки. Поменять их местами, не заводя новую переменную.
Задачка 3. Дана строка вида "1:2:3:4". Перевести в массив целых.
Задачка 4. Даны SQL-строка и SqlConnection. Выполнить sql, возвратив единичное значение.
Что можно такими задачками протестить у Senior'a? Знание 2-3 трюков? Знание названий методов?
Трюки Я таки могу слепить и по-круче... но смысла в них не вижу - код должен быть прозрачным.
Название методов - так Я их не помню... т.е. знаю что такая хрень где-то там есть, но точное название метода, его принадлежность и какой список параметров - даже и не думал запоминать... где-то со времен OWL и TurboVision оно совершенно бесполезно - достаточно знать что такая функциональность примерно там есть.
NEW 15.10.10 17:31
1-я - надо _знать_ трюк с хором.
2-я - надо знать как обращаться с длиной строки для выполнения сложения и деления строки.
3-я - надо знать, что у стринга есть метод Split()
4-я - надо знать что есть метод ExecuteScalar() у SqlCommand
Это все что можно выяснить - два трюка и два метода - при тесте на Сениорскую позицию?
После чего надо дать ДБА-задачку с только описанием на 2.5 листах?
2-я - надо знать как обращаться с длиной строки для выполнения сложения и деления строки.
3-я - надо знать, что у стринга есть метод Split()
4-я - надо знать что есть метод ExecuteScalar() у SqlCommand
Это все что можно выяснить - два трюка и два метода - при тесте на Сениорскую позицию?
После чего надо дать ДБА-задачку с только описанием на 2.5 листах?
NEW 15.10.10 19:54
в ответ Murr_0002 15.10.10 17:31
а по поводу первого трюка, гы..., подумал я, как ?!
Запустил тестовый project, посидел и в результате, как оказалось, все просто:
int a = 200;
int b = 300;
a = a + b;
b = a - b;
a = a - b;
Console.WriteLine("a = {0}; b = {1}", a, b);
чем не трюк то, а...
Запустил тестовый project, посидел и в результате, как оказалось, все просто:
int a = 200;
int b = 300;
a = a + b;
b = a - b;
a = a - b;
Console.WriteLine("a = {0}; b = {1}", a, b);
чем не трюк то, а...
NEW 15.10.10 23:01
в ответ anly 15.10.10 19:13
с тройными указателями типа void***
------
У меня было и по-больше. Правда довольно быстро сообразил что желательно все упростить...
опасно с гениями работать.
-----
С ними сложно работать не гениям. Но когда два гения в фазе - это чертовски красиво - "...здесь так? - да! - здесь так? - нет, так! - нельзя! - где? - там! - тогда так! - давай вот этак! - зачем? - вот там будет так! - да." - это была сделана недельная работа целого отдела большой программистской конторы...
------
У меня было и по-больше. Правда довольно быстро сообразил что желательно все упростить...
опасно с гениями работать.
-----
С ними сложно работать не гениям. Но когда два гения в фазе - это чертовски красиво - "...здесь так? - да! - здесь так? - нет, так! - нельзя! - где? - там! - тогда так! - давай вот этак! - зачем? - вот там будет так! - да." - это была сделана недельная работа целого отдела большой программистской конторы...
NEW 15.10.10 23:15
в ответ Aerzenn 15.10.10 19:34
а ты не мог бы выложить более обширный список этих задачек из теста
------
Не могу. Это было утром. Потом был обед. С Хеннесси. Я уже просто не помню тех задач что там были.
Честно говоря, Я их специально научился забывать - при интенсивной работе размышление над уже
выполненной задачей только вредит производительности.
Хотя... одну помню. Дана таблица. В ней есть поле Salary. Выбрать два наибольших значения в таблице.
что на сегодняшний день есть "актуальные задачки"
-----
Это очень по-разному. В одном случае будет достаточно поместить значение в контрол, в другом -
будет мало если ты спроектируешь всю систему, включая всякие мелочи типа лоад-балансер, и напишешь
весь код... и сделаешь это за пару недель прямо у клиента...
Если есть желание помучатся - могу подкидывать части своих задачек.
------
Не могу. Это было утром. Потом был обед. С Хеннесси. Я уже просто не помню тех задач что там были.
Честно говоря, Я их специально научился забывать - при интенсивной работе размышление над уже
выполненной задачей только вредит производительности.
Хотя... одну помню. Дана таблица. В ней есть поле Salary. Выбрать два наибольших значения в таблице.
что на сегодняшний день есть "актуальные задачки"
-----
Это очень по-разному. В одном случае будет достаточно поместить значение в контрол, в другом -
будет мало если ты спроектируешь всю систему, включая всякие мелочи типа лоад-балансер, и напишешь
весь код... и сделаешь это за пару недель прямо у клиента...
Если есть желание помучатся - могу подкидывать части своих задачек.
NEW 16.10.10 12:36
в ответ anly 16.10.10 00:05
и обеспеченно еще больше проблем в будущем.
_____________________________
для ленивых - да, это так.
Если эти гении и в самом деле есть гегии и знают правильный подход реализовании идеии,
то с моей точки зрения, я бы потратил неделю, если надо - две, и приобрел бы хорошую практику написания кода.
Ведь, действительно, класных гениев - единицы, и если у тебя есть цель быть одним из них, к этому надо стремиться, сколько времени на это не понадобилось бы!
_____________________________
для ленивых - да, это так.
Если эти гении и в самом деле есть гегии и знают правильный подход реализовании идеии,
то с моей точки зрения, я бы потратил неделю, если надо - две, и приобрел бы хорошую практику написания кода.
Ведь, действительно, класных гениев - единицы, и если у тебя есть цель быть одним из них, к этому надо стремиться, сколько времени на это не понадобилось бы!
NEW 16.10.10 16:43
в ответ AlexOtt 16.10.10 16:34
а без split у нас нынче нельзя строку разпарсить? :-)
------
Можно. Но(!) 90 минут и 27 задач. Т.е. - примерно 3 минуты на задачу, включая ту, у которой задание написано на 2.5 листах.
Вопрос - можно ли написать более-мение работающий парсинг строки за 3 минуты, авторучкой, на 2-х сантиметрах бумаги? :)
------
Можно. Но(!) 90 минут и 27 задач. Т.е. - примерно 3 минуты на задачу, включая ту, у которой задание написано на 2.5 листах.
Вопрос - можно ли написать более-мение работающий парсинг строки за 3 минуты, авторучкой, на 2-х сантиметрах бумаги? :)
NEW 16.10.10 22:17
в ответ AlexOtt 16.10.10 20:12
оно пишется со скоростью письма
-----
Но занимает более 3-х минут.
Да, можно написать перебор массива типа LOGICAL*1 на предмет символов-сплитеров,
но мне почему-то кажется, что это будет минусом в общем зачете - похоже что тест
был именно на знание того, что существует Split().
На следующей неделе получу результат и тогда поглядим что там есть.
-----
Но занимает более 3-х минут.
Да, можно написать перебор массива типа LOGICAL*1 на предмет символов-сплитеров,
но мне почему-то кажется, что это будет минусом в общем зачете - похоже что тест
был именно на знание того, что существует Split().
На следующей неделе получу результат и тогда поглядим что там есть.
NEW 17.10.10 14:22
в ответ Aerzenn 17.10.10 12:23
Если не сложно, будет возможность выложить задачки?
------
Что Я помнил - Я уже запостил. Что пришлют в качестве результата - не имею ни малейшего представления.
И это... это было тестовое задание. Научится чему-либо полезному по нему невозможно - чисто проверка
знаешь-не-знаешь в том объеме, который интересовал конкретного работодателя.
------
Что Я помнил - Я уже запостил. Что пришлют в качестве результата - не имею ни малейшего представления.
И это... это было тестовое задание. Научится чему-либо полезному по нему невозможно - чисто проверка
знаешь-не-знаешь в том объеме, который интересовал конкретного работодателя.
NEW 20.10.10 23:22
в ответ AlexOtt 20.10.10 22:52
Я работаю с очень разными проектами.
Часть из них - числодробилки, с упаковкой данных в битовые структуры.
Данных, особенно - промежуточных, тоже хватает и копошиться в них
приходится не мало.
Но(!) экономить байты и такты в том месте где неизвестно какая нагрузка
Я точно не буду - когда-нибудь железяка переварит данные и выплюнет
результат. Когда скорость не устроит - буду смотреть что и как.
Но вопрос не в этом - позиция Сениор С# девелопер и проверки на уровне
знания трюковых операций... да еще в том месте, где сущностная переменная
может быть заменена ссылкой на объект класса и все пойдет лесом.
Стороннее. Сегодня позвонила еще одна рекрутерша. Поговорили. Куча вопросов,
куча ответов. Последний вопрос - сколько хочешь денег? - Столько-то. - Может ли
эта сумма измениться? - Может, но в последнее время Я не видел предложений,
которые были бы интересны настолько, что Я был бы готов к существенному
снижению этой суммы. - Досвидания.
Вот такие переговоры.
Часть из них - числодробилки, с упаковкой данных в битовые структуры.
Данных, особенно - промежуточных, тоже хватает и копошиться в них
приходится не мало.
Но(!) экономить байты и такты в том месте где неизвестно какая нагрузка
Я точно не буду - когда-нибудь железяка переварит данные и выплюнет
результат. Когда скорость не устроит - буду смотреть что и как.
Но вопрос не в этом - позиция Сениор С# девелопер и проверки на уровне
знания трюковых операций... да еще в том месте, где сущностная переменная
может быть заменена ссылкой на объект класса и все пойдет лесом.
Стороннее. Сегодня позвонила еще одна рекрутерша. Поговорили. Куча вопросов,
куча ответов. Последний вопрос - сколько хочешь денег? - Столько-то. - Может ли
эта сумма измениться? - Может, но в последнее время Я не видел предложений,
которые были бы интересны настолько, что Я был бы готов к существенному
снижению этой суммы. - Досвидания.
Вот такие переговоры.






