聊聊后端面试那些事

简介: 聊聊后端面试那些事


聊聊后端面试那些事



面试到底怎么准备


面试官心里

  1. 简历必须真实
  2. 简历上写的最近的项目必须做到熟悉
  3. 你掌握的技术必须做到知根知底
  4. 具备做事的能力
  5. 简历上没有的软技能
  6. 态度和心态


候选人心里

  1. 我要刷题 top100?
  2. 我要准备自我介绍
  3. 我要熟悉项目
  4. 我要把数据库相关知识掌握
  5. 我要把NoSQL相关知识掌握
  6. 我要把语言层面的知识掌握
  7. 我要把态度摆端正


PK环节


面试官问你的问题肯定是你要具备的,但是你具体掌握到什么程度就看你造诣有多深,但是如果问你的问题你确实不知道,那么这个时候你去问下周边小伙伴知不知道,如果不知道那么可能是面试官他想知道你知不知道,如果不知道就真诚地说出来,没什么大不了的,但是知道的话又不太了解一定要说不知道!


其次不管面试官是刁难你还是顺从你,你都应该表现出是谦卑的姿态,面试官也是打工的,当然很多面试官都不知道自己是打工的,以为自己是高人,对你不屑一顾,这个时候你一定要冷静的面试完,不要跟他翻白眼。


最后就是你熟悉的知识不要做到一知半解,就是面试官问你你最拿手的知识,你却给面试官一句话总结了,这是不地道的,面试1h,你5s就答完了,剩下的时间你让面试官怎么办?难道多给你出两道hard题让你做?所以这个时候一定要把面试官往你熟悉的领域上引导,多说几句又何妨?


准备阶段

正常面试官问你的问题都是按照既定套路来的,这个套路大致如下:


1. 自我介绍

(XXX)网上有模板。


2. 最近项目介绍

(XXX)网上有模板。


3. 语言介绍

这里拿Go举例

  1. map的扩容原理
  2. slice的扩容原理
  3. chan的原理
  4. 并发控制技术有哪些
  5. gmp调度
  6. 内存分配和垃圾回收
  7. 性能调优


无非就这几种,你就看你了解吗,不了解回去背下来。

说实话,语言层面你如果一知半解,基本上给面试官的感觉就是你会写,你是初级水平而已,你离我要的候选人的目标差点意思,基本上心里已经把你毙掉了。


4. 数据库原理


这里拿MySQL举例

  1. 几种日志
  2. 隔离级别
  3. mvcc
  4. 幻读
  5. 间隙锁 行锁 Next-key Lock
  6. 索引优化 explain
  7. 索引类型和区别
  8. 主从相关
  9. 分库分表


基本上就这些知识,你如果不清楚,那么工作5年和工作10年你是一丁点都没积累,35岁淘汰的可能就是你了。


5. NoSQL原理


这里拿Redis举例

  1. redis几种数据类型
  2. 为什么是单线程
  3. 如何做持久化
  4. 大key删除和查询
  5. 后台线程或者进程有哪些具体做什么
  6. 主从相关
  7. Redis Cluster相关
  8. 脑裂或者鲸群相关
  9. 缓存击穿 穿透 雪崩
  10. 缓存使用策略


基本上就这些知识,我在这里重点强调一下,你可以不用它但是你不得不掌握它,不为别的就为和面试官能把这1h聊完,这样你就不用写算法了。


6. 其他组件原理
  1. kafka相关
  2. MQ相关
  3. ES相关
  4. Nginx
  5. 其他


就是你起码得熟悉一个组件,比如kafka或者MQ,因为大公司一定在用,所以不要局限在业务中说没有用到就不研究了,这样就大错特错,你得为你的将来负责,而不是成为公司的一颗螺丝钉。


7. 八股文


  1. 分布式锁
  2. 1亿个数 找到top100相关等无关痛痒的面试题
  3. 分布式一致性raft等
  4. 分布式事务
  5. 一致性hash
  6. 其他


这些问题说实话你回答出来就是加分项,你回答不出来也没事,因为基本用不到,所以这些你可以多阅读多积累,这样慢慢就会背下来的。


8. 架构
  1. 设计一个系统
  2. 微服务架构
  3. 监控指标或者SRE相关
  4. 部署相关
  5. 流量镜像或者分流
  6. 链路压测或者灰度流量
  7. API网管设计
  8. 服务治理
  9. 高可靠 高可用 可扩展等
  10. 集群相关


9. 算法


阿里比较厉害,基本不问算法

其他公司效仿字节都问算法,所以没办法你得多刷题

你今天不刷题,明天面试官就把你刷了

其实刷题不是让你刷一遍,重点在“刷“,就是一直刷,一直刷,一直刷,直到背下来,不然你刷1000道你还是不会,一定要刷高频题!


小结

总之面试是一场持久战,你起码得好好准备一个月左右,不要断断续续,要1个月持续学习,直到感觉自己背下来了可以上战场了才可以约面试,不然你面试的越多,浪费的时间越多,过不了的机遇越大,你的自信心下降的越厉害,你就越找不到工作,你就越颓废,最后死循环

相关文章
|
6月前
|
设计模式 算法 Java
后端面试题:接口和抽象类的区别?抽象类可以多继承吗?
字节后端面试题:接口和抽象类的区别?抽象类可以多继承吗?
62 0
|
6月前
|
前端开发 JavaScript
【面试题】面试官:如果后端给你 1w 条数据,你如何做展示?
【面试题】面试官:如果后端给你 1w 条数据,你如何做展示?
|
1月前
|
存储 安全 Java
每日大厂面试题大汇总 —— 今日的是“美团-后端开发-一面”
文章汇总了美团后端开发一面的面试题目,内容涉及哈希表、HashMap、二叉树遍历、数据库索引、死锁、事务隔离级别、Java对象相等性、多态、线程池拒绝策略、CAS、设计模式、Spring事务传播机制及RPC序列化工具等。
47 0
|
1月前
|
存储 消息中间件 NoSQL
每日大厂面试题大汇总 —— 今日的是“京东-后端开发-一面”
文章汇总了京东后端开发一面的面试题目,包括ArrayList与LinkedList的区别、HashMap的数据结构和操作、线程安全问题、线程池参数、MySQL存储引擎、Redis性能和线程模型、分布式锁处理、HTTP与HTTPS、Kafka等方面的问题。
108 0
|
3月前
|
缓存 前端开发 中间件
[go 面试] 前端请求到后端API的中间件流程解析
[go 面试] 前端请求到后端API的中间件流程解析
|
1月前
|
JSON 安全 前端开发
第二次面试总结 - 宏汉科技 - Java后端开发
本文是作者对宏汉科技Java后端开发岗位的第二次面试总结,面试结果不理想,主要原因是Java基础知识掌握不牢固,文章详细列出了面试中被问到的技术问题及答案,包括字符串相关函数、抽象类与接口的区别、Java创建线程池的方式、回调函数、函数式接口、反射以及Java中的集合等。
29 0
|
1月前
|
存储 Java 数据库
每日大厂面试题大汇总 —— 今日的是“顺丰-后端开发-一面”
文章汇总了顺丰后端开发一面的面试题目,涵盖了Java虚拟机内存模型、HashMap与ConcurrentHashMap的区别、Spring框架设计模式、SpringBoot与SpringMVC差异、Nacos注册中心原理、Seata分布式架构、MySQL事务隔离级别、数据库死锁问题解决方法、乐观锁实现方式、HBASE底层设计、BIO与NIO区别、以及为何不使用现有开源框架而选择自建平台等问题。
19 0
|
5月前
|
索引 NoSQL 关系型数据库
【后端面经】【NoSQL】ElasticSearch - 1 -2 Translog + Elasticsearch索引与分片 + 面试准备
【6月更文挑战第15天】Elasticsearch利用Translog确保数据安全,类比MySQL的redo log,它在内存缓冲后记录Translog,每隔5秒持久化磁盘,提供高效且顺序的写入。尽管如此,仍可能最多丢失5秒数据。索引由分片组成,每个分片有主从结构,分布于不同节点以降低故障影响。当主分片失败,主节点会选择新主分片。面试中可讨论公司如何使用Elasticsearch、其性能、索引设计、可用性策略及解决过的挑战。常见问题涉及Elasticsearch的应用场景、问题解决及写入流程。
49 1
【后端面经】【NoSQL】ElasticSearch - 1 -2 Translog + Elasticsearch索引与分片 + 面试准备
|
4月前
|
算法 网络协议 Linux
|
4月前
|
存储 安全 Java
Java面试题:假设你正在开发一个Java后端服务,该服务需要处理高并发的用户请求,并且对内存使用效率有严格的要求,在多线程环境下,如何确保共享资源的线程安全?
Java面试题:假设你正在开发一个Java后端服务,该服务需要处理高并发的用户请求,并且对内存使用效率有严格的要求,在多线程环境下,如何确保共享资源的线程安全?
71 0

热门文章

最新文章

下一篇
无影云桌面