前言
话不多说,但先介绍一下本人还是要的,末流985大学本科,自动化方面业余,自学Java和后端。
听敌人说字节往年后端投递的人十分多,竞争比拟大,我本科不是CS,也只是做翻新创业项目的时候接触过Java后端,起初看到有说客户端0教训的,就让他人帮忙内推了一下,没想到四面过了!!!哈哈哈
分享一下我的面试流程:
一面(45min左右):
- 自我介绍。(我就说了下本人的经验和我的项目)
- 问了一下平时怎么学Java的,做的我的项目有没有和Java无关的。
- 过程和线程的区别。
- http申请三次握手,四次挥手。为什么是四次挥手。
- https的工作原理和流程。
- 罕用的网络状态码有哪些,50x是什么类型的谬误。
- Java ThreadLocal的源码,举个理论的利用场景。
- java内存透露的问题,非动态外部类为什么能够拜访到外部类的成员。
- 算法题:青蛙跳台阶,有多少种跳法。(起初问了一下我怎么去思考这个算法的,边界条件怎么设计的等
等)
留神:这次面试过程比拟长,内容繁多,在文章中我基本上简述了,文章里的面试题完整版和我集体的总结办法教训(面试学习和刷题笔记),都整顿有PDF完整版,有须要的能够关注我的公众号前程有光收费分享给你。
二面(60min):
- 自我介绍(为什么又让我介绍???可能是不同的面试官吧)
- 数据结构和操作系统方面平时有没有学习,感觉本人学的如何。(说是自学的,上了学校的一些课程)
- HashMap的实现原理,Java 1.8前后的次要区别是什么。
- hashCode()和equles()办法有什么关系,为什么重写了前者必须要重写后者。不重写会有什么问题。
- Java内存模型,内存共享等系列问题。(我认为是问办法区、堆、栈等这种内存划分,后果是指的内存共享方面的问题,面试官等我答完了才跟我说答错了,领导我答复正确的答案)
- 线程锁的问题,synchronized关键字,造成死锁的条件是什么。
- 算法题1:让我写几种生产消费者模型。(我写了三种实现)
- 算法题2: 版本号的比照,比方:1.7.93和1.8.1这种。
感觉二面官非常重视Java根底,而且问的问题也是由浅入深的,依据你的答复状况来抉择下一个问题。
三面(60min):
- Java类加载的流程,双亲委派机制是什么,它是为了解决什么问题。
- Java GC回收的原理,新生代老年代划分机制。
- Java设计模式学的怎么样,动态代理和动静代理的区别,各有什么劣势。
- 手撕三种Java 单例的写法。最优的写法是什么,为什么?(这道题答得不是很好)
- 给定一个长度为n的钢条,以及一个价格表p,p中列出了每英寸钢条的价格,将长度为n的钢条切割为若干短钢条发售,求一个钢条的切割计划,使得收益最大,切割工序没有老本。(《算法导论》上规范的动静布局例题。)算是运气比拟好吧,面试官也没有在算法上特意刁难,问了一道典型的动静布局问题。
感觉三面官是所有面试官里最庄重的,问的问题也更重视根底,思考的更深刻。
四面(HR):
HR面大略就是问了一下本人的职业倒退方向啊,将来有什么打算啊
面试经验总结
置信大家都很好奇,我是非科班出世,又是前面自学的java后端,是怎么一步步从外包走到字节跳动的呢?
留神:下文次要是我集体的总结办法教训(面试学习和刷题笔记),都整顿有PDF完整版,有须要的能够关注我的公众号前程有光收费分享给你。
1.本人布局好路线图,学会查漏补缺
把本人的知识点梳理好,根本问题不大
- 并发编程:多线程,高并发,CAS,锁,容器,线程池底层
- 性能调优:Mysql,IO及网络调优,算法调优,JVM
- Spring全家桶:Spring,SpringMVC,MyBatis,IOC,AOP
- 缓存数据库:Redis,mongoDB,MySQL
- 分布式&微服务:SpringBoot,SpringCloud,docker,maven
2.依据本人布局的路线图,找出本身有余
JMM内存模型
- 古代计算机模型基础理论常识
- 什么是线程 深刻了解Java线程
- JMM Volatile 缓存一致性协定
- 指令重排、可见性、原子性、程序一致性、happens-beofre详解 as-if-serial
Mysql性能调优
- Mysql索引数据结构深度解说
- B+树
- Hash
- 红黑树
- Mysql 执行打算与索引解说
- explain工具深度应用
- 索引优化最佳实际
Zookeeper
- Zookeeper疾速入门
- Zookeeper多节点集群部署实战
- Zookeeper典型利用场景实战
- 服务注册与订阅
- 分布式配置核心
- 分布式锁
- Zookeeper中znode、watcher、ACL、客户端API详解
- Zookeeper客户端服务端源码分析
- Zookeeper迁徙、扩容、监控详解
Dubbo
- Dubbo企业级利用实际
- Dubbo 调用模块详解
- Dubbo容错机制与高扩展性剖析
- Dubbo RPC协定底层原理与实现
- Dubbo设计原理剖析与源码详解
- Dubbo负载平衡策略剖析
- Dubbo管控后盾治理与部署详解
Redis
- Redis外围数据结构分析
- Redis在微博,微信及电商场景典型利用实际
- Redis长久化机制与平安机制详解
- Redis主从及哨兵架构详解
- Redis Cluster集群架构实战及原理分析
- 集群数据分片算法及动静程度扩容详解
- Jedis、Redisson客户端源码分析
- Redis高并发分布式锁实战
- Redis缓存穿透,缓存生效,缓存雪崩实战解析
- Redis布隆过滤器实现
- Redis缓存设计与性能优化
这份面试文档当然不止这些内容,实际上像Spring Cloud、设计模式、Netty、分布式、数据结构等其余局部的面试内容均有波及,因为文章篇幅,就不全副在这里论述了,须要的能够关注我的公众号前程有光收费下载完整版。
写在最初的话
对于大厂面试,我最初想要强调的一点就是心态真的很重要,是决定你在面试过程中施展的要害,若不能失常施展,很可能就因为一个小失误与offer失之交臂,所以肯定要器重起来。另外揭示一点,充沛温习,是打消你缓和的心理状态的要害,但你温习充沛了,天然面试过程中就要有底气得多。
再揭示一下,如果你想要学习,却无奈于没有干货学习材料,以上所有的材料内容都能够收费分享给你,关注我的公众号前程有光以上所有材料一次性打包带走!