聊聊后端面试那些事
面试到底要怎么准备
面试官心里
简历必须真实 简历上写的最近的项目必须做到熟悉 你掌握的技术必须做到知根知底 具备做事的能力 简历上没有的软技能 态度和心态
候选人心里
我要刷题 top100? 我要准备自我介绍 我要熟悉项目 我要把数据库相关知识掌握 我要把NoSQL相关知识掌握 我要把语言层面的知识掌握 我要把态度摆端正
PK环节
面试官问你的问题肯定是你要具备的,但是你具体掌握到什么程度就看你造诣有多深,但是如果问你的问题你确实不知道,那么这个时候你去问下周边小伙伴知不知道,如果不知道那么可能是面试官他想知道你知不知道,如果不知道就真诚地说出来,没什么大不了的,但是知道的话又不太了解一定要说不知道!
其次不管面试官是刁难你还是顺从你,你都应该表现出是谦卑的姿态,面试官也是打工的,当然很多面试官都不知道自己是打工的,以为自己是高人,对你不屑一顾,这个时候你一定要冷静的面试完,不要跟他翻白眼。
最后就是你熟悉的知识不要做到一知半解,就是面试官问你你最拿手的知识,你却给面试官一句话总结了,这是不地道的,面试1h,你5s就答完了,剩下的时间你让面试官怎么办?难道多给你出两道hard题让你做?所以这个时候一定要把面试官往你熟悉的领域上引导,多说几句又何妨?
准备阶段
正常面试官问你的问题都是按照既定套路来的,这个套路大致如下:
1. 自我介绍
(XXX)网上有模板。
2. 最近项目介绍
(XXX)网上有模板。
3. 语言介绍
这里拿Go举例
-
map的扩容原理 -
slice的扩容原理 -
chan的原理 -
并发控制技术有哪些 -
gmp调度 -
内存分配和垃圾回收 -
性能调优
无非就这几种,你就看你了解吗,不了解回去背下来。
说实话,语言层面你如果一知半解,基本上给面试官的感觉就是你会写,你是初级水平而已,你离我要的候选人的目标差点意思,基本上心里已经把你毙掉了。
4. 数据库原理
这里拿MySQL举例
-
几种日志 -
隔离级别 -
mvcc -
幻读 -
间隙锁 行锁 Next-key Lock -
索引优化 explain -
索引类型和区别 -
主从相关 -
分库分表
基本上就这些知识,你如果不清楚,那么工作5年和工作10年你是一丁点都没积累,35岁淘汰的可能就是你了。
5. NoSQL原理
这里拿Redis举例
-
redis几种数据类型 -
为什么是单线程 -
如何做持久化 -
大key删除和查询 -
后台线程或者进程有哪些具体做什么 -
主从相关 -
Redis Cluster相关 -
脑裂或者鲸群相关 -
缓存击穿 穿透 雪崩 -
缓存使用策略
基本上就这些知识,我在这里重点强调一下,你可以不用它但是你不得不掌握它,不为别的就为和面试官能把这1h聊完,这样你就不用写算法了。
6. 其他组件原理
-
kafka相关 -
MQ相关 -
ES相关 -
Nginx -
其他
就是你起码得熟悉一个组件,比如kafka或者MQ,因为大公司一定在用,所以不要局限在业务中说没有用到就不研究了,这样就大错特错,你得为你的将来负责,而不是成为公司的一颗螺丝钉。
7. 八股文
-
分布式锁 -
1亿个数 找到top100相关等无关痛痒的面试题 -
分布式一致性raft等 -
分布式事务 -
一致性hash -
其他
这些问题说实话你回答出来就是加分项,你回答不出来也没事,因为基本用不到,所以这些你可以多阅读多积累,这样慢慢就会背下来的。
8. 架构
-
设计一个系统 -
微服务架构 -
监控指标或者SRE相关 -
部署相关 -
流量镜像或者分流 -
链路压测或者灰度流量 -
API网管设计 -
服务治理 -
高可靠 高可用 可扩展等 -
集群相关
9. 算法
阿里比较厉害,基本不问算法
其他公司效仿字节都问算法,所以没办法你得多刷题
你今天不刷题,明天面试官就把你刷了。
其实刷题不是让你刷一遍,重点在“刷“,就是一直刷,一直刷,一直刷,直到背下来,不然你刷1000道你还是不会,一定要刷高频题!
小结
总之面试是一场持久战,你起码得好好准备一个月左右,不要断断续续,要1个月持续学习,直到感觉自己背下来了可以上战场了才可以约面试,不然你面试的越多,浪费的时间越多,过不了的机遇越大,你的自信心下降的越厉害,你就越找不到工作,你就越颓废,最后死循环!
– END –
原文始发于微信公众号(堆栈future):聊聊后端面试那些事
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/103594.html