我的公司即将招聘。net开发人员。我们在各种。net平台上工作:ASP。NET,紧凑框架,windows窗体,Web服务。我想整理一份好问题的清单/目录,这是一种衡量应聘者是否有经验的最低标准。我的问题是:
你认为一个优秀的。net程序员应该能够回答哪些问题?
我也会把它看作是我自己的一张清单,以便看到我自己的缺陷在哪里(有很多……)
*更新:它想要明确的是,我们不仅仅测试。net知识,解决问题的能力和一般的编程技能对我们来说更重要。
我的公司即将招聘。net开发人员。我们在各种。net平台上工作:ASP。NET,紧凑框架,windows窗体,Web服务。我想整理一份好问题的清单/目录,这是一种衡量应聘者是否有经验的最低标准。我的问题是:
你认为一个优秀的。net程序员应该能够回答哪些问题?
我也会把它看作是我自己的一张清单,以便看到我自己的缺陷在哪里(有很多……)
*更新:它想要明确的是,我们不仅仅测试。net知识,解决问题的能力和一般的编程技能对我们来说更重要。
当前回答
琼恩·斯基特是谁?
其他回答
我将提出一些问题,重点是理解使用dotnet之类的编程概念
托管环境和非托管环境之间的区别是什么? GC的利弊 JIT的利弊 如果我们需要开发应用程序X,我们可以使用dotnet吗?为什么?(这将确定他如何看待dotnet)
我还建议写一些小方法,让他用更好的dotnet类或标准方法重写它们,使它们具有更好的性能。 也写不正确的方法(在任何方面)逻辑或其他,并要求他纠正它们。
我自己总是会寻找软技能——这不是双关的意思。优秀的OO设计,测试驱动开发,良好的多(编程)语言背景和全面的智能(我猜是把事情做好!)
一个聪明的开发人员在学习你需要他们了解的技术时应该不会有任何困难,即使他们以前从来没有看过这些技术——所以我不会太担心关于WCF/紧凑框架之类的具体问题。
我会让他们写一些代码——这是了解他们知道什么以及如何工作的最好方法。任何人都能记住“引用类型和值类型之间的区别是什么?”
“你会在生产中使用ASP中的哪一种控制,为什么?”
这将很快告诉你,你的对象是否曾经真正构建和维护过一个大项目,以至于被datagrid和LinkButtons弄得精疲力竭,或者他是否仍处于“21天自学”的拖放阶段。
(答案是asp:Repeater, asp:PlaceHolder, asp:Literal和asp:Content)
诚实?
“什么是。net ?”
如果他们能给你一个明确的答案,关于。net是什么,不是什么,它是如何使用的,它是由什么元素组成的,等等……如果他们能让你相信他们知道这是什么,那么他们很有可能非常了解。
事实上,很多人并不真正知道。net是什么。甚至包括那些为它写程序的人。
我想如果我在面试一个有LINQ经验的人,我可能会让他们解释一下LINQ。如果他们能解释延迟执行、流、IEnumerable/IEnumerator接口、foreach、迭代器块、表达式树(无论如何都是加分项),那么他们可能就能应付其余的问题。(不可否认,他们可能是“还行”的开发人员,还没有“得到”LINQ -我真的在想这样的情况,他们声称知道足够的LINQ,使这个问题成为一个公平的问题。)
在过去,我问过几个已经列出的问题,以及其他一些问题:
引用类型和值类型之间的区别 按引用传递vs按值传递 可替换和终结器 字符串,不可变性,字符编码 浮点 代表 泛型 可空类型