下面是面试过程中的问题:
-
自我介绍下自己,不超过3分钟(我的自我介绍仍然不超过1分钟)
-
你说你熟悉并发编程,那么你说说Java锁有哪些种类,以及区别
-
如何保证内存可见性
-
Http请求的过程与原理
-
TCP连接的特点
-
TCP连接如何保证安全可靠的
-
为什么TCP连接需要三次握手,两次不可以吗,为什么
-
AOP的
-
动态代理与cglib实现的区别(这个,醉得很厉害)
-
那么你说说代理的实现原理呗
-
看过Spring源码没,说说Ioc容器的加载过程吧
-
了解过字节码的编译过程吗(这个还真不知道)
# 二面总结
二面面试官问的问题都比较直接,答案也是知道就知道,不知道就不知道。这些问题一部分是基础,一部分是根据你的专业技能的来提问的。
面完后面试官对我的评价是:中规中矩,有机会下次面试。虽说是中规中矩,但听到面试官说有机会下次面试就感觉这次面试应该过了。
虽说这次面试过了,但是我在思考的是为什么面试官对我的表现是中规中矩。后面我知道我的回答虽然答到了点子上,但是扩展程度不够,对一些问题的理解缺乏足够的实践经验。面试官告诉我,有时间可以去研究字节码的编译过程,以及JVM调优方面的知识(特别强调这个很重要)。
针对自己的不足,面完后又投入疯狂的看书写代码的生活中。虽然在面试中有一些回答不出来很正常,但是如果能够做到出乎面试官的意料,也是面试官对你很重要的加分项。
===========================================================================
三面与二面隔了5天,找了一个安静的地方开始电话面试。据说总监面会问项目多一点,所以在等待的这几天中给项目增加了几个比较肉的点。总监刚上来非常不客气,最尴尬的是总监那边老感觉有回声,因为不好意思提就忍了。
下面是三面遇到的问题:
-
自我介绍,不超过3分钟(这次好像时间更久了,也就2分钟多点)
-
说一下你对哪个项目比较熟悉
-
为什么做这个项目
-
项目采用了什么架构,数据库如何设计的
-
数据库由哪些表,为什么有这些表
-
主要有哪些核心模块,模块之间如何通信的
-
session放在哪里
-
如何保存会话状态,有哪些方式、区别如何
-
分布式session如何管理,你有哪些方案
-
学过数据结构和算法吗(当然),你说说二分搜索的过程
-
说一下快排的过程,写一下伪代码
-
了解哪设计模式,举例说说在jdk源码哪些用到了你说的设计模式
# 三面总结
本以为三面是交叉面,没想到是阿里的总监面试。由于具体的技术问题在前两轮面试中已经问过了,所以三面后不会有具体的技术问题,总结来看,对自己做过的项目一定要深入,包括使用使用到的技术原理、为什么要使用这些技术。
针对项目,面试官关注的无非以下几点:
1.项目中某个比较重要的点是如何实现的(需要深入技术的原理)
2.遇到的最大困难是什么(有哪些),你怎么解决的?
3.如果需要扩展某个功能,如何降低系统的耦合度
4.如果针对某个功能进行优化,你会怎么设计和优化
对于写在简历上面的项目,自己对照上面四个问题进行思考,才会在面试中游刃有余。因为任何在简历中作假的行为,面试官只要详细问你就露馅了。在听到面试官说有机会下次面试的时候,心中自然是非常高兴的。
=====================================================================
====================================================================
认清了自己的短板,自己欠缺的是什么,确立自己目标。
疯狂看书、写代码、写博客、做项目,每天都在对自己进行总结和反思,正是这样一个不断的自我反思与努力的过程中,我得到了真正的成长与进步。也是这段经历让我能够面对阿里技术面试官的提问应答自如,从而顺利拿到阿里的offer。
=================================================================
面完之后,我心飞扬,分享一下备战大厂的面试资料和学习资料等等,
有需要的朋友请转发+关注,然后添加我的VX(tkzl6666)即可获得免费领取方式!
一份Java面经(PDF)
这份面经除了一些大厂必问知识点之外,还有很多大厂优质面经场景,非常不错。
收集整理的面试题汇总(含答案)
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
![img](https://img-blog.csdnimg.cn/img_convert/3220b40e9ae66411d967f99c1ad871bc.jpeg)
总结
无论是哪家公司,都很重视高并发高可用的技术,重视基础,重视JVM。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。
最后我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。
[外链图片转存中…(img-yUXkW1k2-1713571134472)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!