(本文首次发表于UCPU-NET(海外华人程序员工会),想了解海外华人程序员的状况,寻找海外工作机会,请访问www.ucpu.net)
onsite编程是很多公司招聘程序员的常规手段,和其它招聘题目相比,onsite编程真刀实枪,可以更全面和客观的反应一个候选人的编程功底。另外一 方面来说,对缺乏经验的编程者来说,be ready to 现场编程不是那么容易糊弄的事情,费时而且费力。面试官通常希望通过现场编程来考察应试者
1. 对编程语言的掌握;
2. 对开发环境的掌握;
3. 编程效率;
4. 结构设计能力;
5. 对数据库或者操作系统或者其它相关知识的掌握;
6. 交流、分析问题、解决问题的能力。
现 场编程一般分为两种,一种是在真实的开发环境下编程,你可以调试、调用联机帮助,直到你得到你想要的输出或者超时;另外一种是“纸上谈兵”,给你几张白纸 和一支笔,让你把代码写出来。笔者个人认为,后者更具挑战性,但也因人而异。大部分场合,面试者会让你stay alone,直到你完成编程题目(交卷)。
既然我们已经了解了面试官的企图,为了得到我们需要的offer,我们就要投其所好,尽量编出“完美”的代码。完美的代码应该:
1. 总是产生正确的输出;
2. 变量命名直观,标准统一;有合适的注释;代码结构清晰;
3. 健壮性,能够预防不正确的输入;
4. 没有明显的效率隐患;我的建议是要尽量避免O(n2)的循环&#x
onsite编程是很多公司招聘程序员的常规手段,和其它招聘题目相比,onsite编程真刀实枪,可以更全面和客观的反应一个候选人的编程功底。另外一 方面来说,对缺乏经验的编程者来说,be ready to 现场编程不是那么容易糊弄的事情,费时而且费力。面试官通常希望通过现场编程来考察应试者
1. 对编程语言的掌握;
2. 对开发环境的掌握;
3. 编程效率;
4. 结构设计能力;
5. 对数据库或者操作系统或者其它相关知识的掌握;
6. 交流、分析问题、解决问题的能力。
现 场编程一般分为两种,一种是在真实的开发环境下编程,你可以调试、调用联机帮助,直到你得到你想要的输出或者超时;另外一种是“纸上谈兵”,给你几张白纸 和一支笔,让你把代码写出来。笔者个人认为,后者更具挑战性,但也因人而异。大部分场合,面试者会让你stay alone,直到你完成编程题目(交卷)。
既然我们已经了解了面试官的企图,为了得到我们需要的offer,我们就要投其所好,尽量编出“完美”的代码。完美的代码应该:
1. 总是产生正确的输出;
2. 变量命名直观,标准统一;有合适的注释;代码结构清晰;
3. 健壮性,能够预防不正确的输入;
4. 没有明显的效率隐患;我的建议是要尽量避免O(n2)的循环&#x