查看原文
其他

校招和社招有什么区别?不同时期重点不同!

IT服务圈儿 2023-02-06

The following article is from 牛牛码特 Author 牛牛码特

来源丨经授权转自 牛牛码特(ID:niuniu_mart)

作者丨牛牛码特

今天,就来聊聊大家都很关心的问题:面试到底面什么?

算法面试

国内算法面试的风气,可谓是被字节带起来的,很多公司现在都要求面试者手写算法,像字节这种,更是每面都要手写一道,如果算法没做出来,就基本凉了一半。

那面算法,到底是出于什么目的呢?觉得有以下三点:

1、最小成本筛查。算法是有标准答案的,会就是会,不会就是不会,通过这种方式可以筛掉一批人。

2、考察人是否聪明。有些公司会出一些需要灵机一动的题目,在短时间内能思考出来,那大概率可以证明这个人很聪明。

3、考察人的努力程度。有种说法,算法题能不能过,就看有没有刷到过,这个其实符合大多数人的情况,毕竟就短短十多二十分钟,想出一道自己完全没做过的题其实不易,所以从某种程度,也是一种工作量证明(POW)。

第一点非常适合大规模面试场景,比如业务发展迅速,团队海量招人期间,能快速过滤,减少成本

第二、三点适用于校招,因为这部分面试者大多数都还处于什么都不会的时候,这时候聪明不聪明,努力不努力(卷不卷)很重要。

其实算法面试一直是一个有争议的话题,有些会认为99%的岗位都是工程岗位,算法面试有点不切实际,另一方面,算法面试确实也能大体达成如上一些目的。

如果简单来总结的话,针对新手、初级程序员,算法面试还是有必要的,但随着工程经验越来越丰富,算法面试则可以省去。

基础面试

所谓基础面试,就是操作系统、网络编程、数据结构这类基础知识。在计算机中,这些基础知识反而是最为晦涩复杂的。

校招、以及毕业三年内的,基础知识的考查都是重点,基础知识的强弱程度,能很大程度反映出程序员的地基稳不稳,地基稳的程序员通常也会走得更远。

基础面试没啥好说的,无论是面试官、学校、还是学生都能理解其必要程度,这里不做赘述。

组件面试

组件面试是指面相关方向的技术栈,比如消息队列、Redis、MySQL、K8s,ETCD等,这些在实际工作中,都是非常有用的技术。

这些技术聊的内容也很多,可以从使用、到应用场景、到底层实现,很容易考察出一个人对知识的掌握程度,以及是否有来之即战的能力。

这块也是我最喜欢的问题,社招面试预期是对这块非常清楚,校招的话,如果这些实战知识都很强,就算算法有点薄弱,也会给机会,毕竟谁不想要个入职就能抗能打的伙伴呢。

场景面试

顾名思义,就是聊实际的业务场景,比如:

  • 电商场景中,账单模块你会怎么设计?
  • 双十一活动,秒杀场景怎么设计?
  • 一场明星直播,百万人同时挤进直播间,又该怎么设计?

从这些场景设计中,可以看出你过往的经历,是否对架构有深刻的把握,是否有领域抽象能力

校招、社招都可能会有场景面试,不同的是校招一般是一些小场景,让你模拟回答,考察你的思维能力,比如让你设计一个贪吃蛇游戏。而社招则通常会根据你过往的项目经验,深度挖掘场景中的难点痛点。

我有一个习惯,就是每年无论跳槽不跳槽,都会找一些公司聊聊。我发现,在工作好几年之后,其实面试基本不会让我写代码,一些技术细节也不会深究,就是聊聊业务、场景,但是场景的细节会扣得特别的深。

不同时期重点不同

上面说的几种面试,其实在每个时期都可能混合出现,但是不同时期,重点肯定是不同的。

校招:基础面试 >= 算法面试,组件面试加分,场景面试随缘

社招5年内:基础面试 = 组件面试 > 场景面试 = 算法面试

社招5年以上:场景面试为主,其它随缘。

最后

这次给大家分享了面试面什么、为什么以及校招社招各阶段的侧重点,大家可以以此为参考,揣摩面试官问问题的目的,才能给出最好的反馈。

另外,所谓君子不器,如果你校招时就有很牛逼的项目经验,并且理解得非常深,利用得当,是不是就是降维打击呢?面试的本质是选拔人才到自己团队,谁不希望一个来之即战的伙伴呢。

1、为什么 JVM 叫做基于栈的 RISC 虚拟机

2、优雅代码的秘密,都藏在这6个设计原则中

3、装机神器Ventoy新版发布 吹爆!

4、发布了一个jar包到中央仓库,我的心好累…

5、实战:画了几张图,终于把OAuth2搞清楚了

点分享

点点赞

点在看

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

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