查看原文
其他

社招面试的架构分析

编程一生 编程一生
2024-08-10
背景
社招面试的同学往往有个误区:认为面试准备更多的是刷leetcode和按照网上的常见面试题准备。甚至花钱买网课学习kafka、flume、Redis、ES等框架,以便可以进入大厂。但是这种准备方法,最后拿到的offer级别都不会太高。一般是阿里的P6、字节的2-1、京东的T6或T7、滴滴的D7、美团老职级体系的2-3及以下。阿里的P9、美团的4-1以上我也不知道该怎么面试。但是针对阿里P7-P8、美团3-X级别,个人有如下建议。

重点考察点的比重
项目经历
项目经历在面试中比重很大,大概占到60%-80%。如果这部分回答的不好,实际上已经被pass了。面试官问基础知识环节只是为了符合面试的流程要求走的过场。因为一般大厂为了体现对面试者的尊重,对面试时间有要求,不能低于40分钟。
个人履历
个人履历背景占比10%以上。这个背景主要指学习经历、工作经历等。比如跳槽频繁、没有长时间在一个公司或者岗位工作的经历会严重减分。这里面的逻辑是这样的:
对于一个岗位或者业务真正达到精通一般需要2年以上的时间,这时候一般都完成了从0到1的过程,业务也会趋于稳定。自己的能力和创造性将项目带的更长远至少还需要1年或者更久。也有可能按照公司的规划,所负责的项目目前的设施和能力已经够用,不需要再深耕。那就说明自己这块已经做的不错了,理论上上级会有新的业务来让自己做。所以,有4年以上同一家公司的工作经历侧面上有可能表示之前做的还不错。
软素质
软素质占比5%以上。常见的软素质包含沟通能力、领导力、抗压能力等。其实价值观也是面试官非常希望考察的项目,只是在短时间里很难精准的判断。这部分主要依赖背景调查阶段的了解。但是问题比较大的话,还是能被面试官在面试阶段捕捉到。
比如面试官问了一个问题:Java线程池参数详解。
面试者回答如果使用ThreadPoolExecutor来创建,有5个参数(实际有7个,这个无伤大雅),分别是线程池基本大小、线程池最大大小、线程存活保持时间、任务队列、策略(实际为线程饱和策略,说的不明确也可以接受,如果希望面试者说明确,面试官有义务进一步提问,否则不应该给面试者扣分。)

然后面试官问到策略有几种。因为面试过程中面试官已经提前到面试者共享了桌面,所以面试者提议可否看着代码说还是需要背下来。面试官说可以看着代码说。面试者小声说:“我感觉是想让我背下来”同时打开了代码(说话的原则应该是言之有物、言之有理、言之有力。此时面试官脑子里画了问号:你这句补充是想表达啥?)。面试者通过代码查找到了有4种线程饱和后拒绝策略。我问面试者这四种策略都代表的什么意思,面试者说就是英文代表的意思。面试官问那这个英文是什么意思。面试者支支吾吾说英文不好,所以面试官告诉了面试者:AbortPolicy的Abort是中止的意思,DiscardPolicy是Discard是废弃的意思。那两个策略究竟有什么区别呢。面试者说没啥区别(实际上AbortPolicy:丢弃任务并抛出RejectedExecutionException异常。DiscardPolicy:也是丢弃任务,但是不抛出异常。)。这里面面试者本来只是知识深度不够。但是其回答方式容易让人联想到不符合实事求是的价值观或者是容易在压力下降低标准。但是面试官不会从一个问题给面试者定性,会结合其他问题一起来看。但是这整道题的分大概率没有了。


项目经历怎么表述

项目经历的表述大体和很多公司每年都会有的述职差不多。个人有个三段式的架构:先介绍项目上下文,拉齐背景信息;再介绍项目做了哪些优化或者个人有哪些业绩;最后总结一下项目心得。

项目上下文,拉齐背景信息

这部分表述的好要建立在站位清楚、逻辑清晰、对业务理解深入的基础上。建议从大到小、从整体到局部的顺序来介绍。不用着急,一定让面试官理解。否则下面的面试官都听不懂。

项目优化或个人业绩

这部分是我发现大多数面试者欠缺的地方。面试者会说目前只是维护或者是接入的工作,来了一个接入方我们对接一下之类的。给人的感觉是萧规曹随,自己没做什么。举个例子说明一下,如果是我的话,我怎么表达。

比如一个支付网关系统,所做的事情是就是对接支付宝支付、微信支付、其他第三方支付或者直接对接银行。经常面临的业务需求是一个新支付机构或者银行的接入。

我所做的项目优化如下:

1、配置化

将底层能力下沉,将原有新项目接入走代码变更发布转变为配置数据变更,提高了系统的稳定性及开发运维效率。

2、监控告警优化

之前告警频繁,以至于电话告警被无视,造成了“狼来了”式告警麻木。经过告警梳理,每周邮件告警降低到了40封以下,电话告警3个以下。提高了告警的敏感度。当然这么表述是不够的,要把方法说清楚,详见:通知&告警治理(降噪)的7种方法

其他优化省略。

项目心得

这个可以从很多方面来说,比如跨部门沟通方面:


相关阅读

分享一个作为面试官的面试思路

推荐一种通过刷leetcode来增强技术功底的方法

刷14道leetcode的总结

继续滑动看下一个
编程一生
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存