本文主要针对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看缘分,背景调查是防火墙。