剑指Offer
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2.2 共享桌面远程面试

共享桌面远程面试(Phone-Screen Interview)是指利用一些共享桌面的软件(比如微软的Live Meeting、思科的WebEx等),应聘者把自己电脑的桌面共享给远程的面试官。这样两个人虽然没有坐在一起,但面试官却能通过共享桌面观看应聘者编程和调试的过程。目前只有为数不多的几家大公司会在邀请应聘者到公司参加现场面试之前,先进行一两轮共享桌面的远程面试。

这种形式的面试,面试官最关心的是应聘者的编程习惯及调试能力。通常面试官会认可应聘者下列几种编程习惯:

● 思考清楚再开始编码。应聘者不要一听到题目就匆忙打开编程软件如Visual Studio开始敲代码,因为在没有形成清晰的思路之前写出的代码通常会漏洞百出。这些漏洞被面试官发现之后,应聘者容易慌张,这个时候再修改代码也会越改越乱,最终导致面试的结果不理想。更好的策略是应聘者应先想清楚解决问题的思路,算法的时间、空间复杂度各是什么,有哪些特殊情况需要处理等,然后再动手编写代码。

● 良好的代码命名和缩进对齐习惯。一目了然的变量和函数名,加以合理的缩进和括号对齐,会让面试官觉得应聘者有参与大型项目的开发经验。

● 能够单元测试。通常面试官出的题目都是要求写函数解决某一问题,如果应聘者能够在定义函数之后,立即对该函数进行全面的单元测试,那就相当于向面试官证明了自己有着专业的软件开发经验。如果应聘者是先写单元测试用例,再写解决问题的函数,我相信面试官定会对你刮目相看,因为能做到测试在前、开发在后的程序员实在是太稀缺了,他会毫不犹豫地抛出绿色的橄榄枝。

通常我们在写代码的时候都会遇到问题。当应聘者运行代码发现结果不对之后的表现,也是面试官关注的重点,因为应聘者此时的反应、采取的措施都能体现出他的调试功底。如果应聘者能够熟练地设置断点、单步跟踪、查看内存、分析调用栈,能很快发现问题的根源并最终解决问题,那么面试官将会觉得他的开发经验很丰富。调试能力是在书本上学不到的,只有通过大量的软件开发实践才能积累出调试技巧。当面试官发现一个应聘者的调试功底很扎实的时候,他在写面试报告的时候是不会吝啬赞美之词的。

面试小提示:

在共享桌面远程面试过程中,面试官最关心的是应聘者的编程习惯及调试能力。