AVK>>А толку с таких? GoF, кстати, читать не обязательно, часа изучения википедии для разговора хватит. DDI>не понял идею DDI>как быть если человек не знает паттернов но отличный каркасс строит, работать легко и удобно DDI>рядом со мной таких двое
Дать им в руки Фаулера или Мартинса или нечто подобное и о чудо, окажется что они по паттернам каркас строят, только сами этого не знают
Здравствуйте, Dan Dare III, Вы писали:
DDI>мое мнение DDI>- качество кода низкое
думаю, что это просто культура программирования, принятая в его первой компании. никаких исключений, минимальный наьбор функций и т.д.
DDI>- думать умеет DDI>- общительный, объяснять умеет DDI>- не пугливый, выглядел уверенно DDI>- с проектами знаком в общих словах (работает скорее всего кодером, хотя утверждал что имел отношение разработке движка)
почему ты решил, что он работает кодером?
DDI>- потенциально больше всего писал на vb, а не C# DDI>- фантазёр(после собеседования пытался объяснить, что есть объективные причины не знать "такие мелочи" ) DDI>- любит сделать работу и забыть, не углубляясь DDI>- пытался обхитрить с угадайкой DDI>- интереса к изучению чегото нового не распознал в нем
ровно наоборот — монетки, знание архитектуры проекта, sql говорят об обратном. не зщабывай, что если человек любит изучать новое, он не обязан знать именно то, что знаешь ты
DDI>Итог — несмотря на опыт 2.5 года, уровень студента 5го курса. Потенциал на будущее низкий.
Здравствуйте, Dog, Вы писали:
DDI>>студенты это моя слабость у них еще вкус к изучению не угас, брать можно почти любого кто хотя бы пришел на собеседование Dog>Заменить студенты на студентки
Здравствуйте, BulatZiganshin, Вы писали:
DDI>>>студенты это моя слабость у них еще вкус к изучению не угас, брать можно почти любого кто хотя бы пришел на собеседование Dog>>Заменить студенты на студентки
BZ>откуда ты знаешь — может ему студенты нравятся?
Здравствуйте, BulatZiganshin, Вы писали:
BZ>думаю, что это просто культура программирования, принятая в его первой компании. никаких исключений, минимальный наьбор функций и т.д.
отношение к работе оно не важно у кого если у кодера то кодить плохо если у начальника то плохое отношения будет в руководстве проявляться
DDI>>- думать умеет DDI>>- общительный, объяснять умеет DDI>>- не пугливый, выглядел уверенно DDI>>- с проектами знаком в общих словах (работает скорее всего кодером, хотя утверждал что имел отношение разработке движка)
BZ>почему ты решил, что он работает кодером?
кроме того сеньор обычно представляет зачем нужна обработка ошибок и как ее оформить в проекте
сеньор представляет зачем нужны слова virtual и override
BZ>ровно наоборот — монетки, знание архитектуры проекта, sql говорят об обратном. не зщабывай, что если человек любит изучать новое, он не обязан знать именно то, что знаешь ты
у меня к тебе вопрос, ты знаком с этим кандидатом ?
SQL обычно пишт специальные люди а не сеньоры или лиддевелоперы
откуда сведения про знание архитектуры ?
этих знаний как раз и не обнаружилось
зъяснил структуру приложения, объяснил как работают основные блоки
структура и архитектура это разные вещи — я на этом настаиваю
но допустим ты прав, тогда архитектор подавший резюме на позицию кодера не интересен
DDI>>Итог — несмотря на опыт 2.5 года, уровень студента 5го курса. Потенциал на будущее низкий.
BZ>студент с реальным знанием sql?
ты знаком с этим кандидатом и теми студентами которые были до него ?
смонетками и SQL у них отлично их тоже в сеньоры и архитекторы записать ?
AVK>При чем тут нетовские? Для собеседования, если уж мы о микродизайне заговорили, хватит знания таких слов как синглтон, посетитель, стратегия, фасад, фабрика. Что, на изучения этих слов не хватит часа чтения википедии? Неужели можно стать приличным архитектом, не переварив значительное количество современной литературы по дизайну приложений? Неужели, являясь действительно приличным специалистом, можно ничего не слышать про слова "контракт", "связность", "модуль", "слой абстракции"? Если всего этого нет, о чем еще можно говорить?
чего ты на броневик лезешь ?
AVK>А знания всяких хитромудрых аббривеатур врое SOA, MDA, MSA ( ), SCSF, UIP, SCOAB и т.п. на собеседовании требовать смысла нет никакого.
я и не требую
AVK>Паттерны нет никакого смысла знать. Их нужно понимать. А для понимания, если мозги в нужную сторону повернуты, много времени не нужно. В GoF все паттерны просты как три копейки. Единственно, что нужно заучить — их общепринятые названия, чтобы потом общаться можно было.
вот с названиями и проблемы если человек умеет объяснять общий язык быстро находим
DDI>> но отличный каркасс строит, работать легко и удобно AVK>Заставлять смотреть дальше своей каморки, иначе синдром "первый парень на деревне" обеспечен.
не понял про деревню поясни
у них десятки проектов за спиной которые были из убитого состояние приведены в рабочее
проекты не разовые при том
Здравствуйте, Dog, Вы писали:
DDI>>- любит сделать работу и забыть, не углубляясь DDI>>- интереса к изучению чегото нового не распознал в нем Dog>Имхо, основные минусы перевешивающие любые плюсы. Всё остальное со временем поправимо.
даже это поправимо, но на это нет времени проще взять более отесаного
если все остальные будут еще менее пригодны придется взять этого благо SQL монетки и задача есть в наличии
но брать его сразу — слишком много минусов
Здравствуйте, Dog, Вы писали:
DDI>>рядом со мной таких двое Dog>Дать им в руки Фаулера или Мартинса или нечто подобное и о чудо, окажется что они по паттернам каркас строят, только сами этого не знают
умных идей к сожалению мало по этому такое чудо вовсе и не чудо я с тобой согласен
Здравствуйте, Dog, Вы писали: Dog>Всё правильно. Только вы перепутали топики. Здесь идёт речь о собеседовании. У вас есть два выбора или гордо послать всех на (...) или открыть Рихтера и прочитать 20 страничек за чаем. Это не Маринина, думаю вам даже будет интересно и мне кажется вам не составит ни какого труда во всём этом разобраться, там более вы с этим сталкивались.
А почему именно Рихтера из 5 Гига MSDN?
если не считать, что есть ещё другие источники
Здравствуйте, Dan Dare III, Вы писали:
DDI> s[0] реализовал как s.substr(0,1) (substr — это обычное дело на бумаге) а вот s[s.length-1] реализовал как s.substr(s.length,s.length). DDI>спросил у него, как нумеруются символы в строке, стало s.substr(s.length-1,s.length-1)
Текстовые символы в строке не нумеруются через индексатор Учите матчасть Один Char совсем не обязан представлять текстовый символ в строке.
Здравствуйте, Она На Нас Ий, Вы писали:
ОНН>Здравствуйте, Dog, Вы писали: Dog>>Всё правильно. Только вы перепутали топики. Здесь идёт речь о собеседовании. У вас есть два выбора или гордо послать всех на (...) или открыть Рихтера и прочитать 20 страничек за чаем. Это не Маринина, думаю вам даже будет интересно и мне кажется вам не составит ни какого труда во всём этом разобраться, там более вы с этим сталкивались.
ОНН>А почему именно Рихтера из 5 Гига MSDN?
потому что Рихтер продается книгой это одна из сильнейших книг по нету
Y>>Я могу посоветовать поступить так: выложить на сайте компании тестовое задание, а на собеседовании беседовать по выполненному заданию. Dog>Это должна быть очень хорошая работа, что бы я согласился тратить время на тестовое задание (имхо)
Естественно, это должна быть очень хорошая работа А разве соискатели когда-нибудь ищут другую?
Здравствуйте, Dog, Вы писали:
Dog>Хм... так я вроде именно об этом и пишу
Ты пишешь о том, что незнание алгоритмов GC смертельно.
Dog>И как можно знать это и не представлять как работает GC ?
А какое отношение к GC имеет IDisposable и using?
Dog>Ммм... давайте вэб трогать не будем, десктопные приложения и второй фрэймворк. Если вы уж начали делить на смертельно не смертельно. Какие знания языка и платформы по вашему более критичны.
Т.е. я конечно тебе отвечу и бесплатно, но только на конкретные вопросы, а не на требование составить обзор.
Dog> Не надо делать обзоры, можно просто перечислить.
Перечислить это и есть обзор.
Dog> Нескольких будет вполне достаточно. Я не флэйма ради, интересно ваше мнение, раз уж вы ввязались в это
Ну как минимум надо знать базовые конструкции языка, вроде классов, структур и их различий, массивов, полиморфизма, интерфейсов, событий и делегатов. Надо знать концепцию потоков, понимать базовые моменты реализации string и для чего нужен StringBuilder, понимать что такое атрибуты и с чем их едят. Обязательно нужно представлять себе, что такое IEnumerable<T>, List<T> и Dictionary<K,V>, и знать временную сложность основных операций. Если предполагается использование многопоточности — понимать что такое поток, чем плох Thread.Abort, что такое lock и объекты синхронизации ядра, уметь работать с коллекциями, поддерживающими одного писателя и нескольких читателей одновременно, понимать как себя ведут энумераторы при параллельном доступе. Ну и т.д., в зависимости от области использования.
... << RSDN@Home 1.2.0 alpha rev. 725 on Windows Vista 6.0.6000.0>>
Здравствуйте, Dan Dare III, Вы писали:
DDI>чего ты на броневик лезешь ?
Не хами. Никто никуда не лезет.
AVK>>Паттерны нет никакого смысла знать. Их нужно понимать. А для понимания, если мозги в нужную сторону повернуты, много времени не нужно. В GoF все паттерны просты как три копейки. Единственно, что нужно заучить — их общепринятые названия, чтобы потом общаться можно было.
DDI>вот с названиями и проблемы если человек умеет объяснять общий язык быстро находим
Ну так вот эта проблема не стоит и выеденного яйца, и если человек терминологию освоить не в состоянии это уже о многом говорит.
AVK>>Заставлять смотреть дальше своей каморки, иначе синдром "первый парень на деревне" обеспечен.
DDI>не понял про деревню поясни DDI>у них десятки проектов за спиной которые были из убитого состояние приведены в рабочее DDI>проекты не разовые при том
Поясняю. Если человек не интересуется, что происходит вокруг (а иначе в современных условиях невозможно не владеть базовой терминологией), то единственное, на что этому человеку приходится ориентироваться, это его окружение. Рано или поздно, если это не клиника, человек свое окружение в профессиональной области перерастает. И начинает считать себя чуть ли не гением. На RSDN периодически такие вылазят.
P.S. А ты, случаем, не в геймдеве работаешь? Только там такой махровый заповедник может встречаться. Да еще, пожалуй, в какой нибудь государственной или полугосударственной конторе.
... << RSDN@Home 1.2.0 alpha rev. 725 on Windows Vista 6.0.6000.0>>
Здравствуйте, egaron, Вы писали:
E>Хорошим манерам типа использования StringBuilder, String.Format (если строка с параметрами) s.Length = 0 вместо s == String.Empty научены почти все шарписты.
s.Length недоступна для записи. И присвоить ему 0 никак нельзя. (Разве что вы имели ввиду StringBuilder)
Здравствуйте, AndrewVK, Вы писали:
Dog>>И как можно знать это и не представлять как работает GC ?
AVK>А какое отношение к GC имеет IDisposable и using?
отношения никакого но все это управление ресурсами
если Idisposable не знаком я про гц и не пробую спрашивать
AVK>Ну как минимум надо знать базовые конструкции языка, вроде классов, структур и их различий, массивов, полиморфизма, интерфейсов, событий и делегатов. Надо знать концепцию потоков, понимать базовые моменты реализации string и для чего нужен StringBuilder, понимать что такое атрибуты и с чем их едят. Обязательно нужно представлять себе, что такое IEnumerable<T>, List<T> и Dictionary<K,V>, и знать временную сложность основных операций. Если предполагается использование многопоточности — понимать что такое поток, чем плох Thread.Abort, что такое lock и объекты синхронизации ядра, уметь работать с коллекциями, поддерживающими одного писателя и нескольких читателей одновременно, понимать как себя ведут энумераторы при параллельном доступе. Ну и т.д., в зависимости от области использования.
если ты все это спросишь то завалишь всех людей которые были у меня за весь период
с выделенного надо начинать кстати
DDI>>>- любит сделать работу и забыть, не углубляясь DDI>>>- интереса к изучению чегото нового не распознал в нем Dog>>Имхо, основные минусы перевешивающие любые плюсы. Всё остальное со временем поправимо. DDI>даже это поправимо, но на это нет времени проще взять более отесаного
Каким образом вы собираетесь отёсывать... если человек не хочет учиться ? Я понимаю ещё можно научить отсуствущим знаниям... если есть желание...
DDI>если все остальные будут еще менее пригодны придется взять этого благо SQL монетки и задача есть в наличии DDI>но брать его сразу — слишком много минусов
... имхо, сталкиваясь с такими людими, я так и не знаю как ... "привить интерес к работе" таким людям. гораздо проще взять человека интересующегося и научить\передать ему свои знания ... имхо
Dog>>Хм... так я вроде именно об этом и пишу AVK>Ты пишешь о том, что незнание алгоритмов GC смертельно.
Нет. Ещё раз повторюсь. Здесь не идёт речь об общих знаниях .net разработчика. Я так же считаю что не необходимо знаие именно алгоритмов работы GC. Меня поражает то что спрашивают именно знания без применения этих знаний. (из личного опыта)
Dog>>И как можно знать это и не представлять как работает GC ? AVK>А какое отношение к GC имеет IDisposable и using?
Хм... даже не знаю... недетерминированная очистка, отдельна очередь для деструкторов, если вы узнали всё это, не понимаю почему бы не прочитать всё стальное....
Dog>> Нескольких будет вполне достаточно. Я не флэйма ради, интересно ваше мнение, раз уж вы ввязались в это AVK>Ну как минимум надо знать базовые конструкции языка, вроде классов, структур и их различий, массивов, полиморфизма, интерфейсов, событий и делегатов. Надо знать концепцию потоков, понимать базовые моменты реализации string и для чего нужен StringBuilder, понимать что такое атрибуты и с чем их едят. Обязательно нужно представлять себе, что такое IEnumerable<T>, List<T> и Dictionary<K,V>, и знать временную сложность основных операций. Если предполагается использование многопоточности — понимать что такое поток, чем плох Thread.Abort, что такое lock и объекты синхронизации ядра, уметь работать с коллекциями, поддерживающими одного писателя и нескольких читателей одновременно, понимать как себя ведут энумераторы при параллельном доступе. Ну и т.д., в зависимости от области использования.
+1
Навеное многое из этих вещей воспринемаются мною как само-собой разумеющееся... Опять же рефакторинг Фаулера был мне скушен, я не понимал как можно делать рефакориннг, у меня такие случаи почти не возникали.
Я бы добавил сюда ещё понимание элементарных и ссылочных типов, дженерики... и как не странно есть непонимание между делегатами и событиями...
зы. Кстати, на каждом собеседовании спрашивают чем отличаются List от Dictionary ... и лишь в одном случае, имелли ввиду ListDictionary
DDI>>>рядом со мной таких двое Dog>>Дать им в руки Фаулера или Мартинса или нечто подобное и о чудо, окажется что они по паттернам каркас строят, только сами этого не знают DDI>умных идей к сожалению мало по этому такое чудо вовсе и не чудо я с тобой согласен
Это и есть паттерны