本内容来源于 16 年毕业的学长,先在 58,后阿里,如今准备跳槽了,以下内容为他的最近面试经历,
我最近从大厂离职之后在合肥呆了个把月,之前已经准备了半个多月,从7月底开始投简历面试,目前是java高级职位,到现在为止已经面了24+公司了,手上也有一些意向offer。现在把跟面试官对垒的面试问题总体记录一下。
手撕代码连环炮
-
单例模式了解吗?有哪几种?
-
写个单例模式?这个单例模式有什么问题?
-
sychronized怎么用的?
-
volatile呢?
-
写个冒泡算法?
-
假如有个数组[1,2,3,3,4,4,5,6,6,7],相对递增有序,给定一个值假如3,打印这个值在数组中出现的第一个索引下标?分析一下你写的这个程序的时间复杂度。
-
写个快速排序?非递归怎么实现?
-
写个二叉树的前序遍历?二叉树的非递归中序遍历?
-
假如有个数组[3,2,2,3,3,4,4,5,6,6,7,4,4,4],有重复数据,现在要去重,要求去重后的数组元素与原来数据的索引顺序一致。分析一下时间复杂度和空间复杂度?有没有更好的解法?思路是什么?
-
假如有个数组[1,3,7,3,8,4,9,6],现在要求数组中存在最大差值的两个数的索引下标。条件是要索引下标大的减索引下标小的才可以。分析一下时间复杂度和空间复杂度?有没有更好的解法?思路是什么?
-
手写一个LRU Cache,保障get/put api都是O(1)的时间复杂度?
-
编写一个程序实现最小栈?
网络协议连环炮
-
网络协议了解吗?
-
说一下7层网络协议有哪些层?
-
说一下我从浏览器输入一个url访问天猫网站整个过程经历了什么?
-
DNS是干嘛的?
-
CDN了解吗?干嘛的?
-
假如我访问12306,发现很慢,怎么排查?
-
说一下http协议的请求头有哪些?
-
说一下https与http的区别?
-
说一下http的状态码有哪些,代表什么意思?
-
说一下HTTP中session和cookie的区别?
-
说一下HTTP建立链接的过程?
-
RPC框架用过吗?是基于TCP协议的吗?
-
说一下TCP协议的握手和挥手过程?为什么是三次握手,四次挥手呢?
-
TCP滑动窗口了解吗?解决了什么问题?
-
假如我的RPC服务出现了大量Timewait和closewait的链接应该怎么排查?
-
TCP长链接和短链接了解吗?有什么区别?分别适用于什么场景?
设计模式连环炮
-
你用过哪些策略模式?举几个例子?
-
mybatis或者spring源码阅读过吗?了解里面有哪些设计模式吗?
-
java类加载机制了解吗?用的是什么设计模式?
-
单例模式用过吗?写个单例模式?还有其他实现方案吗?有什么区别?
-
说一下什么是策略模式?有什么优缺点?说一下代理模式在哪些地方会用到?
-
假如我要对接第三方的系统,但是我自己的业务服务协议不支持,如果支持的话有一定改造成本,用哪种设计模式会减少对系统的侵入性?
-
说一下适配器模式和桥接模式的区别?
业务系统架构连环炮
-
你好,我是xx公司的面试官我叫xx,你先做个自我介绍吧?
-
说说你比较擅长哪方面?java后端?更详细的呢?
-
说说你怎么用这些技术的?
-
说一下你比较熟悉的项目?
-
说一下哪些系统或者大型模块是你独立作为owner开发的?有什么挑战?
-
画一下业务架构图?里面有哪些核心业务模型?
-
业务领域有哪些?
-
是微服务架构的话你这么多工程是通过什么分工的?为什么这么做?
-
你觉得这个系统的架构模型有什么缺点?
-
DDD了解吗?如果是你你怎么梳理领域模型?
-
不依赖任何具体框架你怎么设计工程架构和业务功能模块?说说这么做的好处是什么?
-
说几个你熟悉的业务流程,在纸上/白板上画一下?
hr连环炮
-
你好,请问你对我们的面试流程有什么想法?
-
觉得我们的面试官怎么样?
-
我们公司的办公环境怎么样?
-
你在上家公司主要是做哪方面的内容?有什么成长?
-
你离开上家公司的原因是什么?
-
说说你对上家公司的印象?工作氛围怎么样?
-
请问你对下一份工作有什么要求吗?想从事哪方面的工作呢?
-
工作中遇到哪些令你印象深刻的问题?你是怎么解决的?
-
说说你最近有没有其他需要学习的地方?你平时是怎么学习的?
-
你觉得你有什么优缺点?
-
有女朋友吗?
-
我们公司目前会有加班,你可以接受吗?
-
你期望的最低薪资是多少?
-
你现在面试了多长时间呢?
-
手头上有几个offer?如果给你offer你大概最快什么时候可以入职呢?
性能优化连环炮
-
做过java程序性能优化吗?
-
假如我有一个RPC服务出现了FGC怎么排查?
-
假如我有很多服务在不同的机器上,其中某个服务超时比较严重该怎么做?
-
假如我通过监控发现CPU飚的比较高怎么看?
-
一条sql执行的比较慢你会怎么排查?
-
RPC原理了解吗?说说RPC的调用过程?
-
假如你去设计一个RPC框架你会从哪些方面去考虑这个框架的性能和高可用?
-
说说为什么要进行服务治理?
-
微服务中引入docker/k8s有什么优缺点?
-
你平时部署系统的时候用的持续集成系统是什么?有什么特色功能提高开发效率?
-
做过性能测试吗?如何评估一个接口的性能指标?
-
假如我某个上游系统调用我的接口并发很高,我该怎么做?
-
如果上游系统对时延比较敏感你该怎么做?
-
如果上游系统是比较核心的应用不能限流怎么办?
反问面试官连环炮
HR:
-
请问你们公司一般上下班是大概几点呢?
-
请问你负责的这个部门目前技术团队大概有多少人呢?
-
请问你们公司未来准备招多少人?
-
是不是处于业务上升期呢?
-
听说你们公司最近风评不太好,是真的吗?
-
现在手头上还有其他offer,假如能给offer的话,你这边能开出什么更有吸引力的条件吗?
-
目前公司的福利啥的能简单介绍一下吗?
面试官:
-
我现在没有什么问题了,你有什么要问我的吗?
-
我问一下你现在负责的大概是哪方面的内容?
-
你们部门目前在公司是怎么样的定位?
-
你们部门团队目前有多少人?
-
请问你最近有没有遇到过比较有挑战的问题?
-
你们部门做的这个系统有没有考虑商业化呢?
-
存储系统怎么做的,Mysql?
-
你能说一下你负责的这个业务的大体内容和流程吗?
-
我问一下刚刚面试的问题你有什么思路吗?
以上就是近期面试的面试题总结,答案已经整理成文档了,大家可以扫描下方二维码获取:暗号【 CSDN 】免费获取
BAT面试题:1000+BAT面试题资料汇总