一枚小渣渣的社招之路
先说下个人情况吧。
985本硕,纯学渣。专业偏硬件,读研转投Java门下,校招进了上海某二线厂,本来是打算过完年跳一波的,结果疫情把一切都搞乱了。。最近面了几家,发上来大家做下参考,也向各位大佬学习。
1. 刚开始练手的小厂
a. 某线上陪玩公司
体验相当不好,面试一会儿时间变一下,感觉不是很靠谱。二面的时候HR跟我讲他打王者忘记安排面试了。。
面试题:
- 自我介绍
- Java基础:集合类,Map,HashMap底层实现原理?有序的Map(TreeMap,实现原理?)
- 常用框架:SpringBoot,SpringBoot启动原理?Spring,Spring是怎么设计,使得可以兼容SpringBoot和SpringCloud的?
- 用过的中间件有哪些?Redis,Redis怎么用的?Redis如何加锁,保持一致性的
问题不算难,回答的一般,之后也有二面,一顿聊,聊完没信了。。
b. 某线上生活服务平台
体验比前一个好,一面的面试官问到你回答不出来会给提示,面试的挺开心。二线是那边的技术总负责人,基本没问技术问题,直接聊了1h的业务。
一面面试题:
- 描述一下项目或者项目遇到的问题:提到了慢SQL
- 如何优化慢SQL,用explain分析,提到了索引,索引数据结构,最小单位是页,页的大小是多少?b+树和b-树的区别,聚簇索引和非聚簇索引的区别?
- 一条SQL执行的完整流程?inno DB底层如何实现查询的?
- 索引的4个隔离级别,默认隔离级别是哪个?举个幻读的例子?
- 从浏览器输入网址开始的整个流程?SpringMVC的原理?
- java常用数据结构?hashSet底层实现原理?
- java同步关键字用过哪些?synchronized怎么用的?和volatile的区别?lock和synchronized关键字的区别?用对象作为锁的原理是什么?
- final关键字,为什么String设置成final类型?常量池和堆里对象的区别?
- jvm内存模型,gc收集器用过哪些?g1收集器用的具体算法?
- 遇到过什么线上问题?线程池用法不对,频繁full GC怎么处理的?回答内存dump,定位问题。线池shutdown方法的实现是什么?
MySQL之前稍微补了一点基础知识,回答出来一点,其他回答一般。
2. 大厂
a. 某线上电商
这个说起来一把辛酸泪。。一面挂,面试官看起来就是技术向的,我感觉面的两个人都很难受= =,相对来说要求还是高一点吧,当时也是受打击不小。痛定思痛,还是继续翻滚吧~
- 介绍项目的难点:QPS不高,不是难点;
- Redis分布式锁;
- 计算机网络:TCP拥塞控制
- 数据库,B+树
- 手写算法题:输入一个二维数组,里面只有0和1,找到其中全为1的面积最大的正方形。
相对校招来说,社招会比较重视项目经验,会问较多项目中的细节,项目的难点&技术挑战。如果没有总结过或者项目本身比较水会比较难受。。
某视频网站
现场面,办公环境还行,面的一般。。
- 自我介绍
- SpringBoot原理,spring.factories里的内容
- AOP原理
- 手写负载均衡算法,包含异步更新&并发获取
- Redis分布式锁的实现方式,redis集群的实现方式
- MySQL4个隔离级别,读已提交会发生幻读吗?
- JVM原理,类加载过程,static变量加载时机
- JVM调优过吗,常用的垃圾算法是什么?G1的回收算法,CMS的回收算法
持续更新。。。
#java面经##面经##社招##Java工程师#