Я разработчик C ++. Я знаю, как работает Windows на нативном уровне, но я не большой специалист по C # и .NET. Теперь мне нужен разработчик C # в моей команде (все мои разработчики - C ++). Как я могу нанять великого разработчика C #, если я не знаю C # на хорошем уровне? Как задавать вопросы, как проверить, хороши ли ответы или с глупыми ошибками?
15
Ответы:
Иногда я сталкиваюсь с проблемой интервьюирования программистов, которые в основном имеют опыт работы с C ++, который я не знаю так же, как и они. Моя стратегия заключается в следующем:
в основном задают общие вопросы программирования, алгоритмы, проектирование ОО, как проводить рефакторинг, что делает хороший модульный тест и т. д. Я добавляю несколько общих вопросов, направленных на стиль языка, поэтому для C ++ я мог бы спросить об управлении памятью и времени жизни объектов для C # Я мог бы спросить, например, может ли быть утечка памяти при использовании сборщика мусора?
постарайтесь узнать, как они выучили язык, какие книги прочитали и т. д.
убедитесь, что они написали значительное количество C ++. Подробно расскажите, когда они его использовали, сколько, что они с ним сделали и для кого. Затем попробуйте проверить это, насколько это возможно, используя их ссылки.
Если они могут хорошо ответить на сложные вопросы дизайна и теории и написали приличное количество C ++, то я ожидаю, что они будут, по крайней мере, наполовину хорошими, и, вероятно, смогут довольно быстро выучить любой недостающий материал.
источник
Настоящим испытанием для всех программистов является то, насколько хорошо они решают проблемы. Первоклассный решатель проблем с только посредственными навыками C # будет гораздо более ценным для вас, чем бог C # (dess), который не может понять, как обрабатывать ввод данных.
Попытайтесь найти разумную реальную проблему в вашей бизнес-сфере и позвольте ему решить ее в C #. Вы знаете домен и знаете, каким должен быть результат. Вы можете сами просмотреть логику и задать вопросы, так как основной поток и команды в C # не сильно отличаются от C ++.
Если вы все еще обеспокоены, отправьте его готовый код одному из ваших друзей в C # или, возможно, деловому партнеру и спросите их, могут ли они просмотреть его и оставить отзыв.
источник
Я предполагаю, что у вас есть реальная потребность в C # разработчике.
Сначала выясните, какой тип задач вам необходим для их выполнения.
Затем спросите их, как они будут выполнять эти задачи. Спросите, как они выполнили задачи, как это ранее.
Во время собеседования попросите других кандидатов оценить их предлагаемые решения. Я бы посоветовал посеять решения, которые, как вы знаете, не сработают, и, возможно, те, которые вы считаете хорошими. Это поможет определить, как кандидат может работать с вашей командой. Средства управления должны помочь отсеять людей «да» и « убийц идей» .
Это должно предоставить вам хорошую группу кандидатов с идеями, которые принимаются их коллегами и должны иметь возможность работать с вашей командой.
источник
пройти собеседование, пока вы работали на C ++. не слишком сосредотачивайтесь на технологиях C ++, а скорее на решении проблем, ООП и программировании в целом. Если бы вы наняли его как разработчика C ++, который хочет заниматься C #, то он был бы хорошим наемником.
источник
Будучи самим разработчиком .Net и много общаясь с ребятами на C ++, я думаю, вы все равно захотите узнать, знает ли человек хотя бы кое-что о платформе .Net: сборку мусора, GAC, JIT, NGEN, тип Value vs. Reference, цель IDispose и т. д. Хороший список вопросов доступен в блоге Скотта Хансельмана . Нет простого способа выяснить, верны ли ответы, если вы сами не понимаете вопросы, поэтому имеет смысл взглянуть на обзор .Net по MSDN или взять какую-нибудь хорошую книгу, например Essential C # 4.0.
Если вы ищете программиста с графическим интерфейсом, очень полезно попросить реализовать что-то простое, например, калькулятор или марсоход или что-то еще. Можно дать день или два для этого. Вы сразу увидите, насколько полезен и приятен графический интерфейс, например, как он ведет себя при изменении размера.
источник
Начните с проверки их ответов на вопросы C # на SO ..
источник