字节跳动后端Java开发工程师1~3面,回馈牛客

前言:本人大概是6月份初投递的字节跳动,之前字节教育相关的部门约过面试,但是最开始自己没有准备太好,在第二面的时候凉了,本来已经觉得与字节无缘了今年,没想到当前后端财经方向的部门把我捞起来了,万分感谢!
这是一些记录我简单回忆然后写下来,希望对大家有所帮助:
1面:一面流程
(简单自我介绍)2-3分钟;
(简单项目经历介绍)4-5分钟;
(重点考察Java基础知识)这是面试重点,面试老师一问一答的形式,考察知识点如下
1):集合(linkList 和arrayList的区别,hashmap的数据结构,concurrentHashMap分段锁结构,segment,1.7和1.8的不同:1.8取消了分段锁机制,而是用synchronized+cas具体去锁每个桶实现更细粒度的线程安全,链表和红黑树解决hash冲突,红黑树的特点,红黑树为什么比搜索树快)希望朋友们自己要去深究一下这个!
2):java并发相关:synchronize,reentainlock,volatile这三个是重点考察对象,如何实现线程安全的,synchronize指令monitor.enter和monitor.exit,volatile解决指令重排和内存可见性的原理;sync与reentainlock的区别,二者的重入是什么原理,如何实现;
3):多线程实现方式runable和callable区别,线程池的参数有哪些,常用线程池有哪几种,一般会问你你们项目里用的什么线程池。
4):数据库相关,mysql事务4大特性,事务隔离级别,每个级别解决,脏读、幻读、不可重复读什么问题,mysql索引的结构,普通索引和聚簇索引的区别,为什么用b+树做索引,b+树的特点,索引覆盖和回表的实际过程。什么情况向索引失效等等。
(算法-另一个考察重点):算法每次考试都不一样,所以我只能说我遇到的,推荐大家准备面试之前先去复习一遍数据结构的常用数据结构数组、链表、二叉树、队列、栈等、然后再去吧leetcode的简单经典题刷一遍,再去仔细研究研究,回溯,动态规划等等差不多就可以了,没有必要去刷困难题,因为面试官不会等很长时间等你写出来困难题。所以他也不会出困难题,基本难度都是在简单题里面,我记得最难的就是那个在一个矩阵里找到岛屿有多少个,我遇见的。
2面:二面流程
(简单自我介绍)2-3分钟;
(项目介绍-重点讲自己特别拿手又能拿的出手的地方,比如有难度而你自己又能解决的模块);二面面试官会重点问你项目相关的知识,比如我的搜索系统用到了ES那么面试官就重点问了ES索引结构,分片和副本机制,项目中针对ES做搜索有哪些优化等等,另外还用到了kafka,那么问了kafka如何解决消息发送丢失和消息重复消费的方案,kafka的架构,Topic分区机制,消费者组的机制等等,另外还有zookeeper选举机制,节点间通讯用的协议;
(另外推荐大家简单复习一下网络相关的知识):计算机网络的5级分层,应用层-传输层-网络层-数据链路层-硬件层;分别主要用什么协议,另外去看看tcp ip udp协议有什么区别,还有http和https的区别;
(算法考察)找到一棵完全二叉树的最后一层的最右节点,我自己最开始用的广度优先遍历,最后一个遍历的节点就是这个节点,时间复杂度是O(n),另外还有更优化的方式,具体去网上搜一些有很多,如果能写出时间复杂度很棒的算法,面试加分会很高。
3面:三面流程
不得不说一句,字节跳动的面试流程真的很流畅,很看重时间,也很尊重双方的时间,我2面刚结束,第二天就通知了结果和下次面试的时间,非常nice!
三面同样式自我介绍+项目简单介绍。
三面面试官是一个很棒的老师,问的更多是软实力,对技术问的很少,但是可能只是我这个情况,大家还是要积极准备的,问学历背景,问工作背景,问哪里人,问未来规划,问为什么跳槽,另外针对我的未来规划给出了一些业内大牛式的建议,感谢!!!
基本问完之后差不多20来分钟就说没啥问题,然后问我有想问的吗,ummm特别尴尬自己问的事情太low了,老师说这些都是细枝末节的问题,包括技术,自己现在想学想问的,5年之后早被淘汰了。umm就不献丑了,直接说没啥想问的,特别感谢老师的面试。
总结:字节从面试流程上来看就能看得出来是一个很珍惜时间的公司,可能这就是加班多活多的原因吧,整个流程特别丝滑流畅,不管结果如何都会及时反馈。整体总结就是还是要自己准备扎实,不管面试任何一个公司都不慌。目前已经收到hr消息三面通过明天最后hr面,期待能有好的结果,自己再来牛客还愿!感谢牛客,也感谢各位老哥的分享,老哥们的面经对我帮助很大,让我系统的理了理自己的知识结构和准备方向,感谢!
#面经##字节跳动##Java工程师##社招#
全部评论
感谢分享! 欢迎大佬参加我们的社招面经征集活动呀!有京东卡可以拿~社招面经征集|参加过社招的牛友,来发面经吧,拿京东卡~:https://www.nowcoder.com/discuss/374207 #社招面经#
2 回复 分享
发布于 2020-11-25 16:55
楼主是一二面一起的么?
点赞 回复 分享
发布于 2021-08-30 19:14
收藏了就是我会了
点赞 回复 分享
发布于 2020-11-23 10:46
真棒
点赞 回复 分享
发布于 2020-11-23 10:41
祝福
点赞 回复 分享
发布于 2020-09-24 22:23
楼主入职了吗
点赞 回复 分享
发布于 2020-09-24 14:34
我之前两次面字节,二面都给我整了道leetcode的困难难度的题
点赞 回复 分享
发布于 2020-08-05 15:56
楼主你好,请问你是实习、校招还是社招
点赞 回复 分享
发布于 2020-08-05 14:56

相关推荐

鸿雁于飞:1. 求职定位乱成一锅粥,直接劝退HR 你期望职位同时写了「项目经理/技术经理/交付经理」,这仨岗根本不是一个赛道!项目经理玩流程和干系人,技术经理玩架构和带技术团队,交付经理玩客户和回款,你仨全堆上,HR直接判定「这人自己都不知道自己要干啥,没核心竞争力」,直接扔简历。 ​ 2. 2年多的职业空窗期,一个字不提,纯纯自杀行为 金融行业最看重职业连贯性和背景干净,你2018年5月到2020年8月,整整2年3个月没上班,啥说明都没有!HR直接脑补你是不是有竞业限制、是不是创业失败、是不是有啥背调过不了的问题,直接不敢往下看,首轮就给你筛了,这是最致命的坑! ​ 3. 工作经历纯纯摆烂,干货全藏起来了 你每段工作就写个公司、职位、时间,干了啥、带了多大团队、出了啥核心成果、给公司赚了/省了多少钱,一个字没有,全堆到后面的项目里了。HR看简历就3秒,第一眼看不到你每段工作的价值,直接就划走了,根本不会翻你后面的项目。 ​ 4. 项目经验像个大杂烩,还全是bug 你堆了快10个项目,银行、证券、公安、政务、日本项目啥都有,跟个杂货铺一样,HR根本看不到你的核心优势在哪。而且项目连个起止时间都不写,谁知道你这是最近的标杆项目,还是10年前刚入行干的活?还有数据前后矛盾,一会说「零事故交付」,一会说「生产事故率降低50%」,HR一看就觉得你瞎包装,根本不信。 ​ 5. 15年经验的经理岗,还在写一线拧螺丝的活,层级完全错配 你都应聘经理级岗位了,简历里还在写自己写接口、写测试脚本、做前端开发这些一线执行的活,完全没写你怎么搭建管理体系、怎么带团队、怎么搞定甲方、怎么控项目风险、怎么拿经营结果,MBA的价值一点没体现出来。HR看完直接觉得:合着你干了15年,还是个高级开发,根本达不到经理岗的要求,直接pass。 ​ 6. AI风口完全没抓住,写了句空话等于没写 现在全行业都在卷AI+金融,人家招管理岗,都要能落地AI场景的人。你就写了句「深化Transformer与大模型底层技术研习」,纯纯空话,一点实际落地成果都没有,跟其他候选人比,完全没差异化优势,人家凭啥放着年轻能落地的不要,要你这个只学了理论的? 姐好好看看,然后改改简历吧,要专,要精,然后降低求职目标。希望你能早日拿到offer
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
13
155
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务