面试经历整理|持续四个月面试19家公司,收获8家offer,面试总结
今年总共投了 19 家公司,有几家挂在了不同的阶段,最后拿到了 8 家的 offer,这段时间里面了几十场面试,大多数面试的问题都懒得做记载了,在此只记录一下大概的问题走向、一些面试常见的问题以及一丢丢面试技巧供大家参考。
一、战况
投递统计(统计了一下,共向以下 19 个公司投递了简历,共拿了 8 个 offer)
- 一线大厂:字节、百度、腾讯、拼多多
- 准一线大厂:***、华为、快手、美团、图森未来、京东、猿辅导
- 二线小厂:TP-Link、招银科技、深信服、b站
- 国企:中电 29 所、国电南自、农行
- 外企:shopee(算半个外企吧)
二、面试情况
挂在简历筛选的公司
只招与需求极度相符的人:b站、图森未来
要求没达到:农行(英语六级没过)
未知理由:京东(听说面试都挺迷的)
挂在机试的公司
机试一般有性格评测和笔试两部分,性格评测主要是性格测试题+阅读理解+小学奥数+找规律+图表题,大概30min完成。
性格评测挂了:拼多多(忘做了)、华为实习生(挂了被捞了)
笔试挂了:(应该是和简历综合评判之后觉得不符合)
挂在面试的公司
实习生面试挂太多了:腾讯(之前实习生面试挂了三次,估计评分很低)
只招与需求极度相符的人:shopee(后端岗疯狂问用过哪些后端框架,不问基础和C++)
面试累了,鸽了面试:快手、猿辅导
自己拒了:中电 29 所(研究方向不符)
收割 offer
- TP-Link:公司有 985 情结,面试基本就聊天,很容易就过了,在北京工资不高,并且无加班费
- 字节:典型的挂了又捞,捞了有挂,经历了安全岗简历挂和一面挂,被广告部门捞起来,技术面三轮 +hr 面拿 offer
- 深信服:机缘巧合投的大牛批,一面很水,二面是正常技术面,三面主管面很契合项目方向,拿了 ssp
- 招银科技:调过电话面(摸底),两轮技术面,问的东西都很浅,范围还比较广
- 国电南自:一面技术面,比较简单,三天发 offer,本科生薪资低,还需要出差
- 百度:无人车部门两面挂,语音识别部门三轮技术面+一轮主管面,跟字节类似,主管画技术饼
- 华为(待安排):实习生过了所以免笔试,一轮技术面+主管面,基本聊天,但 offer 下发周期长
- 美团点评(待安排):三轮技术面不是很难,hr面后两个月不给结果,估计是 hc 少,池子深
三、面试总结
由于大部分公司都是投的提前批,所以很少有笔试,面试一般是 2-5 轮,摸底面+技术面+主管面+hr面,侧重点各不相同。
摸底面
摸底面也就是很多公司的电话面,比如招银科技、国电南自,一般时间不会很长,大概在 10-20 分钟之间,主要是自我介绍+项目经历简介,有的会有一些常见的基础题,比如 TCP 为什么三次握手这种。只要有一定的准备,电话面基本都不会挂,有的公司如果你简历 or 笔试表现好会跳过这个环节。
技术面
技术面是面试流程中的核心环节,主要考察我们对计算机基础知识的掌握程度,一般会涉及计网、操作系统/Linux、数据库,编程语言(c++/Java等),部分会问到编译原理这种比较偏向计算机专业的问题。
一般公司的技术面为 2-3 轮,主要模式都大概相似,开始自我介绍,紧接着问一些基础知识相关的问题 or 项目相关的技术问题,最后是 1-2 道现场编程题,也有的公司会先上来让你写题,后续根据你的表现来决定问什么问题。
主管面
并不是所有公司都有主管面,一般是部门直招 or 你前面面试表现较好,可能有 sp 的情况下才会有主管面试,一般主管的级别越高就说明你的评级越高。
主管面并不会拘泥于具体的技术问题,在你的自我介绍后,主管喜欢针对项目进行提问,主要是考察你对自己所做项目的掌握程度,并且很多时候会问到一些与人沟通相处相关的问题,比如如果组员之间出现了意见分歧你们会怎么办,另一方面,你印象最深的一次项目经历也是常问的问题,这些都是需要提前准备好的。
在主管面的时候我会更多的讲一些自己的学生工作,领导项目 or 组织活动的经历,当然这种经历最好是与技术挂钩的。以及与主管讨论编程规范,自动化测试、软件工程、测试驱动开发,或者项目管理等问题也是正中他们要害的,并且一定要多问,一般主管们很喜欢给新人讲这些,给他们机会,装作很感兴趣的样子。
hr 面
hr面一般就直接确认 offer 或者谈薪了,极少见到 hr 面还刷人的(听说京东和阿里会),一般 hr 会问你一些基本的家庭和学习情况,以及你现在拿了哪些 offer。
在 hr 面自己也可以问一问公司的一些情况,比如薪资结构,五险一金,加班情况,加班费计算,升职加薪的规章制度,年假安排等,这些都是需要提前了解并且纳入 offer 考虑范围的,不过薪资才是硬道理。
四、知识点总结
实际上在实习生阶段已经整理了很多被问到的问题以及部分问题写了一下自己的解答(还有很大一部分坑没填呢),面试感觉其实万变不离其宗,问来问去都是那么几个问题,所以就没做记录了。在此依据记忆在几个主要的方向写出几个最常见的问题吧。
- redis集群使用,宕机怎么处理
- mysql分库分表,数据怎么做分片
- mysql索引了解和优化经历
- Zk数据同步,崩溃恢复
- docker k8s常用打包命令
- docker和虚拟机的区别
- volatile和synchronize关键字
- hashMap特性
- Zk锁之间的节点同步
五、面试资料合集
SpringCloud
Redis
JVM
MySQL
Zookeeper
Kafka
Dubbo
spring
Rabbitmq
springboot
六、个人感受
我感觉在技术面阶段实际上主要不在于你是不是都会,更好的实际上是你在某一两个问题上了解的特别详细,或者有项目经历,能跟面试官聊很久,这样在面试中就可以把面试官带到自己的点上,比如在面试官问网址访问过程的时候,我会讲的特别详细,这些常常会让面试官眼前一亮。
另外我感觉问面试官对自己的评价 or 自己哪些位置做的不好这种问题还是谨慎,如果自己表现得很完美就可以问问,不然面试官也不可能一直夸你,一般只会简单夸一下,然后绞尽脑汁想一想你有哪些位置做的不好,这就无形中提醒了他你的缺点。