本文主要针对Java高级工程师,技术专家路线的那种。

既然说是“面试指南”,就敢保证10家公司(正规的名气大点的),至少8家会按照这种套路去考察刁难你。

别人热情邀请你去面试,不是因为爱上了你,而是想多一个备胎。

千万千万别想多了。

 

一、门槛题

1.统招本科,最为基础。

专科,被各种大厂嫌弃。(别拿个例否定整体结论)

2.985/211背景 加分

3.大厂背景,加分

4.硕士学历,加分

5.计算机相关专业,优先

 

二、简历题

专业技能、项目经验、教育背景啥的。

简历中的每个技术点、技术名词,项目中提到的技术点、可能的技术问题、业务流程。

只要你写了,那都是潜在的“坑”。不会的,别瞎写。

面试,说起来是别人“考察”你,实际上很多人就是在找你的“茬”,挖你的“坑”,数你的“bug”。

当bug达到一定的数量,或者bug占比过高,就直接凉凉了。

 

三、自我介绍-一个人的尬聊

大多数的面试官,根本就没有提前看过你的简历,更不要说是他筛选的。

面试官让你自我介绍,并不是对你有兴趣,也不是想听你自我介绍,而是趁着1分钟的时间,他好瞄一瞄你的简历。

就是这么尴尬~

面向一个没兴趣听你吧啦吧啦的人,自我介绍,可能真是一种无趣的存在。

 

四、面试邀请非常热情,但都是套路

简历筛选,很多时候是HR再做,少部分是用人部门。

筛选,通常是客观的,根据基本条件过滤。

之后,通常会热情打电话邀请你去面试,这绝对不是因为你很优秀,也不是因为别人对你真的热情,而是人家的职业素养比较高。

说难听点,有点套路的味道。

 

五、必答题

1.算法

大厂必答题。不少大厂,先以2个题库中的算法来考考你,手写的还比较多。

比如:已知二叉树的先序和中序遍历,求后序遍历,求树的结构。

手写冒泡排序或快速排序等。

部分大公司,会从leecode之类的高端题库里,找几个,特殊岗位有。

2.Java核心

数据结构、多线程、IO、GC、JVM、类加载

3.分布式等通用问题

分布式理论、(分布式)事务、分布式锁

4、源码题

LinkedList和ArrayList底层结构和全方位对比、HashMap源码实现、CAS怎么实现

5、MySQL数据库专题

索引优化、索引失效(为啥不走索引)、索引结构

6、常见技术选型、原理、为什么

MQ,熟悉几个,选哪个,为什么。推和拉选哪个。

缓存,Redis还是ES?

Redis数据结构,怎么实现?备份机制、多线程还是单线程、怎么保证高性能

Dubbo,选哪种序列化,为什么?

参考招聘JD和简历中中提到的技术点,几乎都会问一下

 

六、项目题

围绕简历中做过的项目,先让你简要介绍核心业务流程,然后问用到的技术,再结合业务场景,谈下技术实现。

 

七、若干常见的技术题目

1、spring cloud和dubbo有啥区别,你怎么选?

2、Executor构造线程的参数

3、数据库事务的四大特性以及事务的隔离级别

4、分布式事务有哪些实现方式

5、Spring的ioc和aop

6、cas操作是怎么实现的,为什么是原子性的。

网上题目非常多,有时间的,认真研究下,通过率会提高不少。

 

总结:学校学历是基础,简历是面试题材,技术知识是核心,面试offer看缘分,背景调查是防火墙。