程序员在面试中如何占据主动?
很多关于程序员面试的文章,都在讨论如何很好地回答面试官的问题。其实,面试是一个双向选择的过程(如果你不这么认为,说明你还不够自信),你大可不必在面试中完全处于被动,相反,你也可以问面试官一些问题,以便看看这个公司是否合你胃口。
比如,你可以问面试官如下这些问题:
- 你们公司开发软件使用的最新工具是什么?
这个问题的目的是看该公司是否落后。如果答案是一些比较古老的工具,比如Visual Studio 2005,说明该公司已经落后几年了,这也许意味着,该公司软件代码库中可能藏匿着一些灾难性的bug。
- 我想使用x语言(该公司目前未使用的语言),你怎么看?
这个问题是看该公司对于不同事物的态度。如果该公司基于微软的编程语言,那么就问Python或Java,看面试官如何回答。如果他们考虑过这种可能性,甚至为此感到兴奋,那么说明他们对于改变和增长持开放态度,这是一个好兆头。
- 你怎么去规划软件的改进?
通过这个问题,你也许可以得知该公司的大致流程,以及有多少官僚机构。如果他们一开始就列出一个很长的、需要咨询的人的名单,这可能意味着该公司对软件的改进比较缓慢和混乱,正所谓“厨子太多反而把汤做坏”。
- 你会采取什么措施来帮助改善团队精神?
这个问题比较有趣,有可能面试官会给你宣讲一下他们提供给编程团队的一些特殊福利。通过回答,你可以看出该公司对待程序员的总体态度,对程序员的重视程度。
- 你们是否愿意提供培训或为想参加培训的程序员提供一些补助?
可以看出该公司是否愿意为他们的程序员进行投资。如果他们愿意这样做,说明他们很看重你和你的发展。但大部分公司更愿意只支付你薪水,让你自己找时间学习相关技能。但也有公司会说,愿意支付一些,但在合理范围内。
- 你认为Y技术怎么样?
这里的Y,可以是过去一两个月内出现的尖端技术。这个问题可以让你得知该公司对行业趋势的态度。他们可能没有听说过这个技术,但他们至少应该表现出一定的兴趣,想知道更多。如果表示不关注、没兴趣,说明他们正工作在一个“泡沫”中,安于现状。另一方面也说明,他们不愿意花时间来增长知识。 - 你如何解决团队中程序员之间的矛盾?
该问题可以得知他们在处理人与人之间个性冲突的速度、处理方法,以及如何彻底解决等。如果他们立即采取行动,将当事人叫到一起谈谈,确保每个人都满意,这表明该公司还是比较关心程序员的,像关心他们的代码一样多。
- 贵公司是否有反馈箱,或者有其他方法让员工提供改善公司的建议?
该问题的目的是看一家公司是否能够听进去员工的意见,并加以实施。他们可能目前还没有类似的措施,你需要看他们听到你的建议后,是否愿意这样做。
总结
以上这些问题,可以帮助你选择到一个积极向上、能够让你快乐工作并有利于你职业生涯发展的公司,而不是一个士气低落、态度恶劣、对你百般限制的公司。
另外,在询问面试官这些问题时,你需要注意场合、面试官的心情、你询问的方式语气等等。如果你因为问了这些问题被刷掉,我只能说“对此我深感抱歉”。