后端面试-总结(java)

  • 最近在准备面试,对于面试总结了一套自己的知识点,在这里大概罗列一下,后面会分别按照不同的知识点专门总结。

1.面试考察点

  • 项目经验

(1)有哪些能够拿的出手的项目(日活、qps、业务复杂度等较高的项目)

(2)项目开发过程中遇到的难点、怎么去解决的

(3)项目的了解程度,包括:业务、架构、优化点等等(有的面试官会从项目出发,问题一些技术或者业务相关的问题)

  • 技术深度

所谓的技术深度就是指你对这个技术的了解程度

(1)问你技术相关的知识点,至少都应该知道(例如mysql,你需要了解它的引擎、索引结构、事务、锁、特性、高可用等等),知识点的原理必须都了解(为什么有多种引擎?为什么用B+树?事务为什么有多重隔离级别,高可用是怎么实现的?等等)

image.png

(2)基础要扎实(大多数的技术往深了问都会回归到操作系统、计算机网络和数据结构)

  • 技术广度

所谓的技术广度就是指你当前主流技术的了解程度,以及行业内使用的技术趋势

(1)需要知道jvm、主流的开发框架(spring cloud 全家桶)、各种中间件(消息、缓存、大数据等等)

(2)需要了解最前沿的一些技术(例如垃圾回收器zgc,redis6.0之后的多线程)

  • 解决问题的能力

(1)处理系统问题(例如:遇到线上异常怎么去解决?)

(2)处理工作和人际问题(例如项目如果延期怎么去处理?同时来了多个需求怎么去安排?)

  • 思维和代码能力

(1)考察算法(leetcode)

(2)系统设计

(3)手写代码(生产者消费者模式、单例模式)

2.面试技巧

面试技巧其实是很重要的一块东西,好多人不太注意,导致面试经常碰壁,包括我自己。

(1)会的大胆说,不会的不了解的不要瞎扯

(2)回答问题要有调理,罗列个1,2,3出来

(3)碰到气场弱的面试官,把自己知道的都说出来(这种面试官不知道该问什么,等着他问有时候还不如自己说,把自己擅长的都给说了,对你对他都有好处)

3.面试知识点

这里大概罗列我后面会单独总结的知识点

(1)jvm

(2)java并发

(3)redis

(4)mysql

(5)rocketMq

(6)spring相关

(7)设计模式

(8)分布式知识

(9)操作系统

(10)计算机网络

你可能感兴趣的:(后端面试-总结(java))