2009-06-21 3 views
2

У нас есть новые новые разработчики .net, и мы дадим им задачу ASP.NET, которая займет около 2 недель, после чего мы будем оценивать их по отдельности и выберем некоторые из них.Оценочный лист для нового .NET Developer?

Может кто-нибудь предложить некоторые основные моменты, которые необходимо принять во внимание для этой оценки? Если у вас есть какие-либо ссылки, это также будет приветствоваться. Мы хотим сделать это очень профессионально.

+1

В некоторой степени зависит от вашего домена. ASP.NET довольно большой! –

+0

Что конкретно вы пытаетесь измерить? –

+0

Я пытаюсь проверить общее умение, технические, логические мысли ... –

ответ

4

Измерение таких вещей, как качество кода, может быть затруднено. Это субъективно и может быть функцией времени.

Я бы сказал, что приложения на базе ASP.NET ухудшают эту проблему, так как не только основной язык меняется каждый раз несколько лет, но и новые технологии (WPF/Silverlight/XAML, WCF, ASP.NET MVC) которые влияют на ваше приложение, выходят все время.

Если вы ищете лучшие практики в одной конкретной точке, это может привести к тому, что вы выбросите действительно идеального кандидата. Я бы меньше беспокоился о том, «Что я ищу в коде?» и больше о «Что я ищу в кандидате?»

Вот что я надеюсь на:

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

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

  • Хорошо ли они работают без надзора? Будут ли они позволять себе блокироваться второстепенными деталями и пропускать результаты, или они будут проактивно стремиться вернуться на правильный путь? Если им задана задача, могу ли я рассчитывать на их выполнение без микроуправления?

Если бы я искал в коде, мои приоритеты будут:

  • ли код они пишут функционально правильно? Действительно ли их выход работает и отвечает всем бизнес-требованиям? Это делает это стабильным способом, или он падает?

  • Легко ли их читать и обслуживать? Хорошо ли подходит приложение для изменения бизнес-требований или невозможны изменения без глубокого знания кода?

  • Являются ли они эффективным использованием легкодоступных структур данных или они изобретают колесо? Если они изобретают колесо, они берут мою обратную связь к сердцу в будущих результатах, отказываются ли они от моего отзыва с аргументированным аргументом или продолжаются по тому же пути?

2

Во-первых, вам нужно будет решить, что именно вы пытаетесь оценить, и соответствующим образом настроить как свою задачу, так и критерии оценки. Некоторые идеи:

  • Код качества/чистоты. Прокомментировал ли пользователь свой код полностью и значимым образом? Являются ли их имена переменных понятными? Их расположение отформатировано хорошо и легко следовать?
  • База знаний. Хорошо ли использует выбранный набор методов или демонстрирует опыт в разных областях программирования .NET, как они используют базу данных, очищают свои соединения и т. Д.
  • Критические навыки мышления. Может ли пользователь думать о возможных решениях, даже если есть что-то, что предотвращает наиболее очевидный ответ? Насколько уникальным является решение, которое они придумали, - это стандартное закрытое решение или оно построено с учетом последующих дополнений или модификаций (даже если они специально не связаны с этим, это может указывать что это всегда часть их мышления).
  • Работа в команде. Можете ли вы дать человеку задание, в котором им нужно будет взаимодействовать с другими, или вы ищете только пример своего уровня «самостоятельно»?
  • Деловой контекст. Они задают вопросы о том, для чего они будут использоваться, и пытаться действовать в контексте потребностей конечного пользователя?
  • Сходство с другими решениями в Интернете. Хотя я ожидал, что они придумают решение самостоятельно, выполнит ли поиск по сегментам своего кода в Google верные точные совпадения? Считаете ли вы, что это плюс (они не тратили время на повторное изобретательство колеса) или минус (они скопировали большие разделы дословно и не могли сами писать код).

Хотя некоторые из них являются очевидными хорошими/плохими точками, другие зависят от вас - вы хотите, чтобы кто-то думал о том, что нужно клиенту, и реагирует соответственно, или вы хотите, чтобы кто-то придерживался спецификации? Будет ли человек работать самостоятельно или сотрудничать?

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

0

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

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

Смежные вопросы