30天魔鬼经历,百度Java岗硬核四面,已拿offer侥幸上岸
历经快一个月,四次面试,终于拿到了百度的java岗录取意向书,在这里记录一下面试经历。
个人情况
渣本硕士三年开发经验,于2020年3月开始开外边的机会。这段时间进行了一些面试,包括美团,快手,以及滴滴这些公司的社招面试
一面(特别累)
首先是自我介绍,然后针对楼主简历上的项目进行了项目的了解于提问。然后是基础知识提问,手撕代码环节。下边介绍面试官考察的知识点:
- 对象一定分配在堆栈对象不一定分配在堆上,JIT可以实现栈上分配
- JMM内存模型
- 原子性,可见性,有序性如何保证
- 工作内存与主内存
- volatile,重排序举例
- synchronized和Lock的区别
- synchronized内部实现,偏向锁,轻量锁,重量锁
- 为什么需要自旋?
- HashMap,HashSet,TreeSet,ConcurrentHashMap
- Spring事务是怎么实现的?
- 类加载机制?
- 双亲委派机制
- 自定义了一个String,那么会加载哪个String?
- HTTPS和HTTP区别?
- 非对称加密有哪些缺点?
- XSS和CSRF攻击
- NIO,Linux网络IO模型五种
- Redis持久化
- MySQL隔离级别,一致性视图,undo log,redo log和binglog
- MySQL索引结构,回表,最左前缀原则
- 不使用第三个变量交换a和b的方式
- 算法题目一:a+b+c=0
- 算法题目二:链表倒数第N个节点
面完之后一度以为挂了,不过还好在第二天就接到了二面的电话,HR说一面面试官评价很好???
二面
3.23进行了二面,二面感觉比一面严格了很多。
经过了一轮面试对基础知识点的狂轰乱炸,二面面试官主要考察对于项目的理解。涉及到的知识点如下:
- 多个项目的技术架构,不是业务架构
- MySQL,Redis,Nginx,Kafka这些技术架构
- 项目技术点,学到了哪些?也要具体知识点。
- MySQL中为什么是最左前缀?
- 有没有接触过一些自动熔断工具
- 502可能的原因有哪些?
- 线上问题怎么排查?Full GC频繁怎么办?
- 服务的QPS,数据库的架构和版本。
- SpringBoot的优缺点分析
- SpringBoot的启动源码分析
- 服务的部署方式?
- 算法题目:按照之字形分层遍历二叉树,要求bug free,并且构造二叉树进行测试。
三面
进行了一轮面试官对我基础知识的肯定,二轮面试官对我业务逻辑和处理问题能力的肯定。三面面试官主要考察一些开放性系统设计类型问题,涉及到的知识点如下:
- 项目介绍,从技术点和安全方面的考虑。
- 有研究过哪些算法?
- CAP理论的理解
- 如何设计实现中国象棋?
- 如何设计一个排队系统?
- 平时都是怎么学习的?最近都在关注哪些技术?为什么
最后问了一下面试官我的表现如何,面试官说非常满意。感觉稳了,然而没想到。。。看第四面。
加面
在2、3面被虐后,加面突然像是如沐春风的感觉,很轻松惬意
- 经过前面对了解,你知道我们这边做什么了吗,描述一下【描述】
- 我们的技术栈差不多,如果你来上班,如何快速过渡和上手适应【描述】
内部系统 => todev系统,针对人群不一样,技术栈类似,容易解决。 - 对b和c端业务对理解【描述】
简单来说,b端ui要求低、架构复杂;c端ui要求高、架构简单。详细的点,引申出去还有很多很多 - tob业务架构设计、技术选型【举例】
先出结构图、流程图,再给出表结构设计,确定了方案,组件、模块划分。技术选型一般就是三大框架+配套的标准ui了,如vue与ele-ui,react与antd,加上状态管理、路由等。如果复杂的混杂多项目多系统,使用微前端,spa或者iframe两种取其一,如果没有历史包袱可选spa、如果有历史包袱使用iframe嵌入,但需要和其他前端进行对协议(前端和前端联调😊)这里可以讲20分钟
*项目开发流程、生命周期【举例】 - 自动化测试设计思路【描述】
用例、断言、输出结果
总结
四面后第二天就等来了HR的电话,成功拿下offer。
这几场面试下来,感觉算法真的是基础吧,算法答不上来就比较危险了。怎么说呢?如果找工作之前做了一个比较全面而且系统的总结与复习,我感觉面试过程还是会比较顺利的,当然我也是顺利拿到了百度的Offer。这段时间还在看别家的机会,并且也已经拿到了美团的Offer。
这里给大家分享一波我在复习过程中刷的题(含详细答案解析)和一些学习资料,都已整理成PDF文档或者Word文档,有需要的朋友+q群895538573或者 点击这里免费领取
(一)最新java架构专题系列面试真题+解析(、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、、Mycat、Netty、Kafka、Mysql、Zookeeper、Tomcat、Docker、Dubbo、Nginx等)
(二)核心知识点整理
(三)最新大厂面试真题+解析(字节跳动,华为,腾讯,阿里 滴滴等)
(四)视频实战教学