社招面试的架构分析
然后面试官问到策略有几种。因为面试过程中面试官已经提前到面试者共享了桌面,所以面试者提议可否看着代码说还是需要背下来。面试官说可以看着代码说。面试者小声说:“我感觉是想让我背下来”同时打开了代码(说话的原则应该是言之有物、言之有理、言之有力。此时面试官脑子里画了问号:你这句补充是想表达啥?)。面试者通过代码查找到了有4种线程饱和后拒绝策略。我问面试者这四种策略都代表的什么意思,面试者说就是英文代表的意思。面试官问那这个英文是什么意思。面试者支支吾吾说英文不好,所以面试官告诉了面试者:AbortPolicy的Abort是中止的意思,DiscardPolicy是Discard是废弃的意思。那两个策略究竟有什么区别呢。面试者说没啥区别(实际上AbortPolicy:丢弃任务并抛出RejectedExecutionException异常。DiscardPolicy:也是丢弃任务,但是不抛出异常。)。这里面面试者本来只是知识深度不够。但是其回答方式容易让人联想到不符合实事求是的价值观或者是容易在压力下降低标准。但是面试官不会从一个问题给面试者定性,会结合其他问题一起来看。但是这整道题的分大概率没有了。
项目经历的表述大体和很多公司每年都会有的述职差不多。个人有个三段式的架构:先介绍项目上下文,拉齐背景信息;再介绍项目做了哪些优化或者个人有哪些业绩;最后总结一下项目心得。
项目上下文,拉齐背景信息
这部分表述的好要建立在站位清楚、逻辑清晰、对业务理解深入的基础上。建议从大到小、从整体到局部的顺序来介绍。不用着急,一定让面试官理解。否则下面的面试官都听不懂。
项目优化或个人业绩
这部分是我发现大多数面试者欠缺的地方。面试者会说目前只是维护或者是接入的工作,来了一个接入方我们对接一下之类的。给人的感觉是萧规曹随,自己没做什么。举个例子说明一下,如果是我的话,我怎么表达。
比如一个支付网关系统,所做的事情是就是对接支付宝支付、微信支付、其他第三方支付或者直接对接银行。经常面临的业务需求是一个新支付机构或者银行的接入。
我所做的项目优化如下:
1、配置化
将底层能力下沉,将原有新项目接入走代码变更发布转变为配置数据变更,提高了系统的稳定性及开发运维效率。
2、监控告警优化
之前告警频繁,以至于电话告警被无视,造成了“狼来了”式告警麻木。经过告警梳理,每周邮件告警降低到了40封以下,电话告警3个以下。提高了告警的敏感度。当然这么表述是不够的,要把方法说清楚,详见:《通知&告警治理(降噪)的7种方法》
其他优化省略。
项目心得
这个可以从很多方面来说,比如跨部门沟通方面: