技术面试相关考察点 - Wangxiaoman/tech-note GitHub Wiki
面试基本知识点
-
计算机基础知识
计算机基本构成
进程/线程
常用Shell命令
HTTP/TCP -
基本数据结构
数组
链表
stack
HashMap
Tree -
算法题目
Leecode
-
数据存储
关系型数据库:Mysql、Postgresql
KV存储:Redis、Memcached、MongoDB、Rocksdb -
开发语言
java、c/c++、python
-
系统设计
设计模式
缓存:本地缓存、集中式缓存、缓存击穿问题
分布式:CAP原则、一致性
服务高可用:负载均衡、故障节点检测增删、限流熔断、服务降级
消息队列:Kafka、RabbitMQ、Redis Stream -
相关工具
git、maven、docker
面试需要注意的一些方面
- 基础扎实:面试中遇到的一些问题不了解没有关系,但是对于知道的知识点一定要理解透彻。什么都用过,但是都不知道用法和原理就很减分
- 主动沟通:对于面试过程中一些没听清楚,或者理解不透的地方,一定要及时和面试官反应
- 循序渐进:对于一些问题,如果觉得有一些思路,可以一边在纸上画一画,一边和面试官沟通。有一个不成熟或者效率很低的解决方案要比没有结论好得多
- 主动思考:对于一些问题,即使已经回答出来,但是还有其他一些思路和想法,一定要主动提出来,并且可以拿多组解决方案对比,分析其中优劣
- 预设条件:对于一些问题,如果没有思路,可以增加一些预设条件在尝试(当前前提是面试官没有限定)。比如leecode中算法第七题,对于数字进行翻转,完全可以用字符串的方式来处理
- 连写带画:自带笔和纸,面试的时候,把思路和一些关键点写出来,一图胜千言。比如一些类关系图,数据结构的图,开发性题目的关键思路
- 态度端正:主动,积极,乐观
- 准备充分:对于面试公司自己要做功课,和HR约的时候最好问一下所面试部门做的业务方向