好不容易撑到了字节跳动Java三面,卡在了底层实现原理!

Posted Javachichi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了好不容易撑到了字节跳动Java三面,卡在了底层实现原理!相关的知识,希望对你有一定的参考价值。

大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助。

最近跟一个读者聊天,他准备了3个月,刚刚参加完字节跳动的第三面,视频面,嗯,挂了…
在这里插入图片描述

字节跳动Java三面凉经

一面

  • 自我介绍,聊项目, 这边挺常规的,从项目入手。
  • 解析Excel为什么用POI ? POI存在的问题?
  • 还知道哪些解析Excel的工具吗?
  • 你们项目中用过MQ,平时都用MQ来做什么?
  • 你处理过MQ得幂等问题,当时是怎么做的?
  • MQ的可靠性怎么保证?
  • redis你们都用来做什么?
  • redis的持久化机制?
  • 怎么样保证redis的高可用?
  • HashMap和ConcurrentHashMap的区别?
  • ConcurrentHashMap不同版本的差异?
  • 用过多线程吗?
  • 多线程的几种实现方式。
  • 做过微服务开发吗?
  • 说一说对重构的看法
  • 有什么问题要问我的吗?

二面

  • 二面看上去是个组长的人,年纪并不轻。同样的自我介绍开始,然后聊来北京发展的意愿,个人的情况,然后问了一下做的项目,就开始问问题了。

  • 项目中处理了哪些格式的数据类型?

  • 数据传输过程用的什么加密?

  • 对称加密和非对称加密的区别?

  • http和https的区别?

  • 为什么https使用混合加密的方式?

  • 说一说JVM调优的思路及你是怎么样调优的。

  • JVM常见的算法。

  • 抽象类和接口的区别和应用场景? ( 挺新鲜的,第- -)次碰到 )

  • 平时有没有用到什么设计模式?

  • 看过什么源码没有?

  • 什么是SpringAOP?

  • AOP实现的原理。

  • sql优化的思路。

  • 索弓|实现原理。

  • 有时候索引失效,为什么?

三面

  • 自我介绍,然后开始聊项目。
  • 数据采集的时候有没有对数据进行校验?
  • 有没有做加密处理?
  • 对称加密和非对称加密的区别?
  • 如何保证数据不丢失呢? ( 对账)
  • 你们项目中redis用来干什么了?
  • redis常用的数据类型?
  • redis持久化机制?
  • 分布式锁的实现?
  • 场景题:一个SQL的TOP N问题
  • JVM参数调优及JVM内存结构。
  • 常见的垃圾回收算法。
  • dubbo整个调用过程。
  • SpringMVC、Spring和SpringBoot的区别 ?
  • 线程池实现原理。
  • sql优化的思路。
  • 索弓|实现原理。
  • Seata如何解决"并发写隔离"设计原理剖析。

我们很多程序员都有一个大厂梦,但如何针对大厂进行面试准备,很多程序员就显得手足无措了。本文就根据自己一些见解谈谈如何准备面试。

关于笔者:字节跳动 Java开发工程狮一枚,喜欢技术、热爱开源。

八年积累经验分享

首先如何准备面试?

1、准备简历(敲门砖,不会包装简历的程序员只能去外包)

程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:

img

2、了解面试公司,做好功课,知道问什么

对一线互联网大厂的面试点,我也做了以下总结:

  • 阿里巴巴、百度、腾讯

img

  • 字节跳动、美团、京东

img

3、梳理知识体系,学会举一反三

实际上,梳理知识体系是最简单的事,但很多开发小白总是一头雾水,实际上从第二点的大厂面试点就可以总结梳理出来我们应该要学什么,要掌握什么,通常我的方法是“大厂面试点”+“工作年限”来梳理自己接下来的学习及发展路线图。

之后,就需要根据路线图上的重点去进行有针对性的学习,在学习过程中,学会举一反三,学会写笔记,做总结。

这里我分享我个人的一些笔记内容吧:

说明:本文限于篇幅,故而只展示部分的文档截图,完整的Java学习文档我已经帮你们整理好了,有需要的朋友文末有领取方式!

Java从入门到架构成长笔记目录

img

新手村—入门到开发半年(吃透12K+起步)

Java基础篇: 基础语法+集合+异常+反射+IO+TCP+多线程
Java web篇: mysql数据库+JDBC+Servlet
三大框架篇: Spring+SpringMVC+MyBatis+商城实战项目
SpringBoot+SpringCloud分布式开发篇: 微服务入门+实战
项目经验篇: 秒杀系统设计+SpringBoot商城实战

Java基础篇

img

三大框架篇

img

项目经验篇(秒杀+SpringBoot实战)

img

打怪升级第一步—开发1到3年

Java并发编程底层篇: 并发基础+JMM+线程池+阻塞队列+并发集合+并发工具类+锁+atomic
JVM与性能调优篇: 内存区域+垃圾回收器和内存分配策略+类加载机制+调优
网络编程篇: TCP/HTTP+Netty+多路复用
SQL调优篇: SQL优化原则+锁+索引+调优+事务+执行计划
Tomcat底层篇: 架构+基础+调优+集群+安全
设计模式篇: 六大原则+23种设计模式
Spring源码篇: IOC+AOP+声明事务源码解读
MyBatis源码篇: MyBaits源码架构分析+MyBaits核心模块分析+二级缓存

并发编程篇

img

JVM及调优篇

img

网络编程篇

img

MySQL调优篇

img

设计模式篇

img

Spring源码篇

img

MyBatis源码篇

img

打怪升级第二步:4-5年资深高开

img

分布式思维基础: 大型互联网架构演进过程+架构师应具备的分布式知识+主流分布式架构设计详解
分布式监控: Zookeeper+nginx
分布式消息队列: RabbitMQ+RocketMQ+Kafka
分布式存储: Redis+MongDB+Mycat

分布式监控

img

消息队列

img

分布式存储

img

打怪升级第三步:5到7年架构进阶

微服务架构进阶: Docker+SpringCloud+Spring Cloud Alibaba+K8S
亿级流量性能调优实战: 调优基础+基础代码性能优化+设计模式与性能+并发编程性能优化+JVM深度调优+数据库性能调优
一线大厂分布式场景实战: 分布式事务解决方案+一线大厂单点登陆方案+分布式任务调度方案+高并发场景下分布锁方案+缓存解决方案

性能调优实战笔记

img

大厂分布式场景实战笔记

img
以上《JAVA核心知识点总结》我已经全部为大家打包准备好了,希望对正在学习的你有所帮助!我的不少粉丝也因此同样拿到腾讯字节快手offer~

需要以上全部资料的小伙伴,可以一键三连,下方获取免费领取方式!
在这里插入图片描述

以上是关于好不容易撑到了字节跳动Java三面,卡在了底层实现原理!的主要内容,如果未能解决你的问题,请参考以下文章

字节跳动超高难度三面java程序员面经,mysql使用教程视频

字节跳动Java三面凉凉,一线互联网公司面经总结

圆你的大厂梦!字节跳动Java高频面试题真题:一/二/三面+常见问题

年前三面字节挂了,疫情狂刷左神算法,春招复盘成功入职字节跳动

字节跳动超高难度三面java程序员面经,java开发电脑选择

字节跳动超高难度三面java程序员面经,java开发电脑选择