面试专家职位面试官会问什么

考察实践经验和方法

很早之前阿里打电话过来面试我,是一个架构师的职位。当时问我一个问题:在review代码的时候,如果代码特别长,比如几千行几万行,你如何去review呢?
我的回答角度是这样的:

1.review PR我一般不会review所有的代码,而是变更点。整体的代码review会以模块review的形式来做。项目成员介绍自己这块的架构是怎样的,解决了什么问题,有什么问题是待解决的。架构优势和不足等。然后再由开发人员自己去讲解代码。

2.我建议开发人员用好工具。比如作为一个git用户,非常重要的技能是必须能够维护一个清晰的语义化的变更历史暴露出来。review代码的时候可以通过历史清晰的看到代码的变更思路。如果一个开发人员还不具备这样的意识或不知道怎样做,我会建议他给开源社区贡献几个PR,相信这会对他影响很大。

3.我们整个团队的主要迭代策略是:小步快跑,小迭代。一次性提交的代码过多,很可能意味着阶段划分过粗。这时候应该和开发人员一起梳理一下合理划分流程。

4.我review代码的主要核心聚焦在防护代码上。就是代码一旦出现了问题,里面有没有紧急预案的措施进行控制。比如有没有加开关、报警,异常处理等。


考察蓝图

看过《浪潮之巅》的朋友们不知道有什么这样的感受:所有这些站在浪潮之巅的企业都是在其创始人实现了其最初的蓝图之后才开始走下坡的。因为这之后,很大的精力和努力都用来解决下一步怎么走的问题。
所以如果招聘者本身就有一个蓝图,他招人是很好招的。他只需要招有方法的人,这种人是可以培训出来的。但是有想法的人是很少的。按照我的世界观宇宙理论,这种人心里有一个强大的宇宙,在释放能量。
PS:我认为AI目前的发展方向永远不可能代替智能。人的思维、感情是量子层面的。用数字信号来模拟,就好比用大锤子击打一个原子,完全不在一个层面。

考察方法体系

这时一般会把考察放在两个层面。一个是理论,看面试者的讲述成不成体系,有没有漏洞。另外一个一般会考察在实际中的运用,一般用STAR来设立一个场景。

比如:手下有个同事,态度很好,也很上进,但是总是出这样那样的问题,这时候该怎么做。

这个场景是非常开放的,把这个人开了也是一种解决方法。把这个人安排做一些低风险的项目也是一种解决方法。建立更加规范的流程和工具也一种解决方法。

我的回答角度是这样的:

从两个方面着手。首先,如果出了问题,流程上肯定是有漏洞的。这是个极好的机会,去发现这方面有哪些不足并加以修正和改善。

另一个方面,从对同事本身的提高入手帮他分析根本原因。首先列举一段时间发生的事情。每件事情背后的本质。最终会有几条:

1.对结果负责而不是对行为负责。
2.对线上操作存有敬畏之心,三思而后行
3.准确性来源于深度和逻辑。
4.可以慢,可以少,做对,做好。

总结

应届生面试要考察算法、源码,越往后反而越不问了,问的都是书里代码里没有的。