尽人事,听天命,十二轮面试最终圆梦字节,回馈牛客

从21年八月份开始,经历了一次一面挂,一次二面挂,两次三面挂,这次终于成功上岸字节跳动飞书人力套件,回馈牛客,面经如下:
字节教育(一面以后第二天字节宣布解散教育,但是还是撑到了三面)
TreeMap讲一下
时间轮是怎么实现的
git中ignore是干嘛的
git merge gitrebase的区别
什么对象可以作为GCroot
JVM的垃圾回收算法
URL的编码方式
HTTPS
若钓鱼网站伪造了证书应该如何处理
DNS解析过程,DNS劫持
ARP介绍
写题:向有序链表中插入节点
二面:
进程间通信方式
select poll epoll
G1的原理
深拷贝,浅拷贝
HashMap
写题:缺失的第一个正数
三面:
写题:二叉树最近公共祖先
B+树如何实现更新的
内存池
Redis的String类型的数据结构
挂了。。。
抖音音乐(一面挂)
面向对象三大特征
操作系统的内存对齐,为什么要这么做
堆和栈存储什么的
虚拟内存,为什么要用虚拟内存,用虚拟内存的好处
快排最坏的情况,如何优化快排
写题:中文转阿拉伯数字
商业化技术(三面挂,面经就一二面的,三面找不到了)
一面:
如果现在要写一个服务,要连接数据库的话,如果你的前台请求,比如说是电商,请求比较大的话,那么服务的qps扛不住,要怎么优化。
Rocketmq是如何在消费端进行限流的
深拷贝、浅拷贝
二面:
死锁的条件以及如何避免死锁
针对于我们在项目开发过程中当想从MySQL中删除数据的话,应该怎么做
继承和抽象的概念
Static修饰不同的地方的含义
Spring注解,比如说NotNull的注解有什么用吗(被注释的元素不能为null)
写题:单词搜索
基础架构(二面挂)
一面:
设计相关的,Redis是一个内存性数据库,可以理解为是一个hashMap,假如说用任何语言写一个k-v的数据库,需要在基础之上为其生成快照,应该怎么设计。
spring控制反转和面向切面的编程,描述一下是什么以及有什么用。
断点续传怎么实现?
乱序的逻辑,把一个数组打乱,需要自己实现一个shuffle,有一个随机数生成器。
为什么会出现泛型
写题:二叉树的右视图
二面:
介绍一下实习的项目
怎么在mq中加幂等性校验
有没有其他的实现方式。为啥不用Java中的delayQueue呢
延迟消息,除了放到消息队列里面,还有其他的方案嘛
用一个延迟队列做,有什么问题嘛?怎么解决呢?
rocketmq的特点是什么,有那么多mq,跟kafka比有什么优势嘛
延迟消息的数量大概是什么样的呢?
你怎么知道线上的代码是正确的呢?
HTTP请求的状态码的含义,502和504有什么区别?
restfulApi有听说过嘛,设计接口的话,会符合什么规范嘛?
虚拟内存
飞书(这次三面终于过了)
一面:
哈啰实习的项目,介绍一个最熟悉的以及最有挑战性的项目
延迟消息的改造,延迟多久呀这个消息
rocketmq如何实现任意时间的延迟消息的
消息在发送成功后会写redis,如果redis中没有拿到key的话,是怎么处理的
发完消息以后写redis失败的话,应该怎么处理,网络上的延迟导致redis写失败了应该怎么处理
重复消费怎么处理
消息的量有多大呢
编码风格的规范
stream这块怎么debug哪里有异常呢
线程池里面有哪些核心参数
生产者消费者
平常都用spring开发是嘛
springAOP的原理是什么,到代码细节这一块。
数据库,MySQL的索引,平常建索引的时候应该注意一些什么
啥时候会走错索引
sql的题目,学生选课,LC单词拆分,生产者-消费者模型
二面:
对Linux系统的内存如何管理是否了解,进程当中看到的都是连续的虚拟地址空间,这个虚拟地址是如何跟计算机上的物理地址是如何映射的。
页式管理具体的机制是什么?
进程从诞生到结束的整个生命周期
就绪态什么时候运行,是如何进行调度的
进程所使用的资源是什么时候回收
分析一个输入URL到显示页面的过程,涉及到哪些协议
HTTP请求行请求头
HTTPS协议是如何保证传输数据的安全的
那我们写个sql吧
判断平衡二叉树
最短无序连续子序列
三面:
觉得研发流程哪个环节最重要
代码规范,开发语言是什么,在Java8里面哪些规范是必须遵守的。
代码量多少
上线的话,现在线上的Java服务,JVM有哪些配置,配一些什么样的参数
并发控制的话,在Java.util.concurrent包里面有哪些工具
能够实现复杂控制的并发控制的工具有了解嘛(不了解)
countDownLatch是什么(面试官说,你是背下来的嘛,没关系)
MySQL用过吗,innodb引擎来实现事务的隔离级别有哪些
可重复读能解决幻读的问题嘛(说了当前读和快照读的情况)
你说换一个项目吧,从软件设计架构来讲一下
项目的难点是什么
有多大海量啊
消息量没有体现出来你的架构思想。
你能再谈谈假如说你现在面临一个挑战,消息规模增加1000倍,你C端的客户增加100倍,这个架构你觉得有哪些优化的地方可以做技术架构的升级,假设你是这个项目的总负责人(PS:我不是,所以说不会doge)
这个系统哪些点需要被监控起来
比如说端到端的成功率,失败了要不要重试,某个组间挂了,有没有容灾补偿方式(都不会doge)
你们用的Redis的持久化方案有哪些
如果在线上搭一个Redis cluster,RDB是一定要开启,还是可以不开启
Redis中加一个节点的话,怎么复制啊
主从复制(答到了全量复制,面试官说,那回到之前的问题,RDB需不需要开启,面试官说学知识不要那么僵硬,要灵活起来)
面试官说你记忆的东西还可以,要消化吃透
设计模式,说一下你用过的设计模式
写题:二叉树从根节点到叶子节点和为某一值的路径
后来HR通知我过了,给了口头offer,说过两天会联系我走一下后面的流程
虽然过程有些曲折,但是结果还是好的,自己的努力也没有辜负







#字节跳动面经##字节跳动##面试题目#
全部评论
励志啊 下周一三面 应该是第十五轮面试了 希望可以过😭
2 回复 分享
发布于 2022-03-08 19:13
楼主,请问是广州飞书吗
1 回复 分享
发布于 2022-03-08 20:01
老哥想问下你前面如果挂了,会有面评记录导致后面的面试越来越难嘛?
1 回复 分享
发布于 2022-03-09 09:52
老哥tql!我下周一约了三面,现在慌得很😖话说字节是没有HR面的嘛?
1 回复 分享
发布于 2022-03-10 16:05
强啊老哥,谢谢你的面经
点赞 回复 分享
发布于 2022-03-08 23:33
请问是实习还是校招?
点赞 回复 分享
发布于 2022-03-09 10:47
面挂了还能继续投吗,我下周面😥
点赞 回复 分享
发布于 2022-03-09 19:12
同人力套件 不过我是杭州的组 飞书见了伙计🤣
点赞 回复 分享
发布于 2022-03-14 10:38
统一回复一下,最后没去字节,去外企了。😂
点赞 回复 分享
发布于 2023-03-29 10:35 上海

相关推荐

满意offer一个就好:springboot学完就差不多了,面试的话,数据库操作系统计算机网络这些基础问的比较多,要去大厂redis也要会,消息队列可以晚些学没关系(我是进了腾讯云智才学的)
点赞 评论 收藏
分享
先上正文,文末贴复盘以及可以改进的地方表现得很差,但是1小时后通知选2面时间,许愿下次自己能自信点,好好讲解项目自我介绍- 蓝桥杯是什么- 问两个开源项目:   - Threejs 那个怎么说(2年前的项目了,根本不记得多少,扯了一下新版实现,模型优化,看了一下源码解决bug)  - 某音乐网站嵌入 tauri 二次开发(扯了一下写的 vite 插件,实现了把外部网站嵌入到脚手架内实现的直接开发,还有重写部分热重载代码,以及代理后端,实现内容覆盖与整个网站的控制权,以及扯了一下这种跨平台开发要注意的是什么,然后就扯了一下ipc通信与序列化的性能)    - 做了这些插件最终的意义?(提升开发体验与效率) - 这些是自己做的还是实验室做的(第一个跟隔壁实验室哥们一起做的,第二个是自己做的,2023年7月 -> 2024年8月,有GitHub提交可查)- 说一下你对前端工程化的理解(尽可能地实现非业务部分过程自动化,使得开发者可以专注开发)- 用过webpack吗,没有,直接 vite 上手- 说一下你对 vite 的认知,越多越好,尽可能地说(esbuild 开发环境,rollup 生产环境,vite 在加速方面做了哪些努力(esbuild 构建开发环境js,预构建依赖,对源码更新采用链失活处理(仅概念)))- esm cjs(同步与异步导入,import 静态分析)- url 到页面呈现(合法判断,cache,dns,tcp,dom树,cssom,js 阻塞,render tree,绘制,部分 css 送入 gpu 处理)- 说一下用 Astro 的原因(vite 作为底层驱动支持,内容驱动静态网站生成,支持SSG,SSR)- 除了 SSG,SSR 还有什么渲染,区别是什么(ISR,CSR,增量静态生成)- Astro SSR 还有哪些应用场景(扯了一下官网文档的电商平台,用户可以先看到页面商品内容,具有交互性质的按钮可以在后续注水激活)- 说一下 yjs 是干什么的(以CRTD为核心思想的并发冲突解决库)- 在线演示平台,平台有多少人在用(不多,给内部人员编辑使用)- 做这个遇到最难的地方是什么(服务端崩溃上下文丢失后内容恢复,说了目前的实现与未来最好实现)- VSCode 插件看一下效果(演示了一下并说了转 ast 做处理的简单流程)笔试第一题:对url中的query参数中将title提取出来:https://aaaaa/?aaa=bbbb&title=dddd创建一个 box,长 100px 宽 50px,插入到整个页面中,要求水平垂直居中针对 box 写一个动画:500ms 后长宽变成 100px700ms 后移动到右上角笔试第二题:```jsfunction get() {}const obj = {  layer1: {    layer2: {      val: 1    }  },  target: [1,2,{ok:1}]}get(obj, 'layer1.layer2.val', 'target[0]', 'target[2].ok')```笔试第三题有一个树:1| \2  3| \4  5现请你遍历该树,并在到达叶子节点时将其前方所有的值拼接为数字,对于本树就是: 124 + 125 + 13 = 262本来要反问了,感觉节奏不对,继续跟面试官扯完了简历上的后两点:- 页面预览实现?  成本有点高,目前思路是转发脚手架页面  曾经做过的努力:  - 用 astro 的编译器看看能不能 build 一些组件并拼接完整页面(不能,必须依赖 node 环境或在浏览器实现需要的 api)  - 用 SSR (审查了 astro 部分源码发现对于 markdown 编译逻辑都是写在 vite 插件内,打包时是直接把 markdown 编译成 js,SSR执行时直接静态出字符串,没有运行时编译过程)  - 11月14号新出的 content layer api,去官方文档看了milestone,其中写清楚了不把运行时编译 markdown 放在目标内,与 astro 的 baseline 与解决问题场景不一致- jsx 编写通用组件?  曾经做过的努力:  - 调研 tinyMVC,在示例仓库里发现他针对各个框架都写了一套 renderless 逻辑,还为此写了一个专门抹平框架差异的函数  - taro,基于编译器实现,背后有编译团队,运行时团队,小程序团队和跨平台团队支持,对于小团队开发成本太高了反问:- base 北京上海- 二面什么时候(已约下周三)- 主要业务?负责抖音头条等搜索处理- 需要改进的地方?(东西做的很多,但是要把项目重点总结好)总结:- 这次面的状态真的很差,比上次腾讯的还差,不清楚是什么原因,但最后不到残血又不会玩,可能我真的需要休息一下吧- 不够自信,项目都是自己做的,但是一问就只能答出想到的点,后面复盘的时候一下子联想到了很多  - 桌面播放器能扯的非常多:rust 过程宏生成 ts 声明辅助开发;dll 打包内联,怎么同时放下 nodejs 脚本,网页注入脚本,还有 rust 自身大小优化;组件库用 storybook 实现预览;针对本地音频文件采用流式传输,计算 range 大小;为什么用户手动安装node,在这之前有做过什么努力吗(pkg,deno,node dll 预制插件打包);热重载代码为什么不影响原网站(原网站采用 SSR 水合,自己的部分是渲染);离线访问(包爬虫 + rust 三方库内联到程序内);具体参考我的博客吧:https://blog.shiinafan.top/posts/%E5%A1%9E%E5%A3%AC%E5%94%B1%E7%89%87%E6%A1%8C%E9%9D%A2%E7%89%88%E6%8A%80%E6%9C%AF%E5%88%86%E6%9E%90/- 笔试表现很差,把简单问题复杂化- 八股文同理,每次一问就进入了意识狭隘的通道,复盘才想起来还有好多可以回答- 没有总结好重点,其次是没有引导面试官到自己熟悉的领域- 说话逻辑有点混乱,没有一口气讲到重点我想我可能需要休息一下,想清楚和搞好状态再继续,下周一腾讯约二面,许愿自己能讲清楚项目内核,先写这么多吧
投递字节跳动等公司10个岗位
点赞 评论 收藏
分享
评论
8
42
分享
牛客网
牛客企业服务