前言

我觉得有一个能够找一份大厂的 offer的想法,这是很正常的,这并不是我们的饭后谈资而是每个技术人的追求。像阿里、腾讯、美团、字节跳动、京东等等的技术氛围与技术规范度还是要明显优于一些创业型公司 / 小公司,如果说能够在这样的公司锻炼几年,相信对自己能力的提升还是非常大的。不论是校招还是社招都避免不了各种面试、笔试,如何去准备这些东西就显得格外重要。不论是笔试还是面试都是有章可循的。

因为大厂面试一般都有专业团队负责,某个知识点你到底是掌握了还是单纯背下来,面试官一问就可以看出来(PS:真正到面试特别是你觉得准备面试的时间不够的时候,你可以多挑一些面试常问的问题来看,注意理解,一定不要死记硬背)。一定不要过分寄希望于各种面经,试着去提高自己的综合能力。

“ 80% 的 offer 掌握在 20% 的人手 ” 中这句话也不是不无道理的。决定你面试能否成功的因素中实力固然占有很大一部分比例,但是如果你的心态或者说运气不好的话,依然无法拿到满意的 offer。运气暂且不谈,就拿心态来说,千万不要因为面试失败而气馁或者说怀疑自己的能力,面试失败之后多总结一下失败的原因,后面你就会发现自己会越来越强大。

面试常问技术有哪些

数据结构,多线程,jvm,Spring,优化,消息框架,分布式,缓存等以及你使用过的框架且第一轮的基础很重要,通过会后录取可能性就相对高了!

一面

面试官很和蔼,由于疫情的原因,大家都在家里面进行远程面试。

开头没有自我介绍,直接开始问项目了,问了比如

  • 常用的 Web 组件有哪些(回答了自己经常用到的 SpringBoot,Redis,Mysql 等等,字节这边基本没有用 Java 的后台,所以感觉面试官不大会问 Spring,Java 这些东西,反倒是对数据库和中间件比较感兴趣)
  • Kafka 相关,如何保证不会重复消费,Kafka 消费组结构等等(这个只是凭着感觉和面试官说了,因为 Kafka 自己确实准备得不充分,但是心态稳住了)
  • Mysql 索引,B+树(必考嗷同学们)

还有一些项目中的细节,这些因人而异,就不放上来,提示一点就是要在项目中介绍一些亮眼的地方,比如用了什么牛逼的数据结构,架构上有什么特点,并发量大小还有怎么去 hold 住并发量

后面就是算法题了,一共做了两道

  1. 判断平衡二叉树(这道题总体来说并不难,但是面试官在中间穿插了垃圾回收的知识,这就很难受了,具体的就是大家要判断一下对象在什么时候会回收,可达性分析什么时候对这个对象来说是不可达的,还有在递归函数中内存如何变化,这个是让我们来对这个函数进行执行过程的建模,只看栈帧大小变化的话,应该有是两个峰值,中间会有抖动的情况)
  2. 二分查找法的变种题,给定target和一个升序的数组,寻找下一个比数组大的数。这道题也不难,靠大家对二分查找法的熟悉程度,当然,这边还有一个优化的点,可以看看我的博客找找灵感

完成了之后,面试官让我等一会有二面,大概 10 分钟左右吧,休息了一会就继续了

二面

二面一上来就是先让我自我介绍,当然还是同样的套路,同样的香脆

然后问了我一些关于 Redis 的问题,比如 zset 的实现(跳表,这个高频) ,键的过期策略,持久化等等,这些在大多数 Redis 的介绍中都可以找到,就不细说了

还有一些数据结构的问题,比如说问了哈希表是什么,给面试官详细说了一下java.util.HashMap是怎么实现(当然里面就穿插着红黑树了,多看看红黑树是有什么特点之类的)的,包括说为什么要用链地址法来避免冲突,探测法有哪些,链地址法和探测法的优劣对比

后面还跟我讨论了很久的项目,所以说大家的项目一定要做好,要有亮点的地方,在这里跟面试官讨论了很多项目优化的地方,还有什么不足,还有什么地方可以新增功能等等,同样不细说了

一边讨论的时候噼里啪啦敲了很多,应该是对个人的面试评价一类的

后面就是字节的传统艺能手撕算法了,一共做了三道

  • 一二道是连在一起的,给定一个规则S_0 = {1} S_1={1,2,1} S_2 = {1,2,1,3,1,2,1} S_n = {S_n-1 , n + 1, S_n-1}.第一个问题是他们的个数有什么关系(1 3 7 15... 2 的 n 次方-1,用位运算解决)。第二个问题是给定数组个数下标 n 和索引 k,让我们求出 S_n(k)所指的数,假如S_2(2) = 1,我在做的时候没有什么好的思路,如果有的话大家可以分享一下
  • 第三道是下一个排列:https://leetcode-cn.com/problems/next-permutation 的题型,不过做了一些修改,数组大小10000<n<100000,不能用暴力法,还有数字是在 1-9 之间会有重复

hr 面

一些偏职业规划的话题了,项目经验,工作经历这些。

总结

基础很重要!这次准备到的 Redis,Mysql,JVM 原理等等都有问到了,(网络这一块没问,但是也是要好好准备的,对于后台来说,网络知识不仅仅是面试,还是以后工作的知识基础)。当然自己也有准备不足的地方,比如 Kafka 等中间件,只会用不会原理是万万不行的。并且这些基础知识不能只靠背,面试官还会融合在项目里面进行串问

问到了不会的不要慌,因为面试官是在试探你的技术深度,有可能会针对某一个问题,问到你不会为止,所以你出现不会的问题是很正常的,心态把控住就行。

无论是做题,还是回答问题的时候,牢记你不是在考试,而是在交流,和面试官有互动和沟通是很重要的,你说的一些疏漏的地方,如果你及时跟面试官反馈,还是可以补救一下的

最重要的一点字节的面试就是算法一定要牢固,每一轮都会有手撕算法的,这个不用想,LeetCode+剑指 Offer 走起来就对了,心态很重要,算法题不一定都是你会的,要有一定的心理准备,遇到难题可以先冷静分析一波,而且写出Bug free的代码也是很重要的。

最后祝大家在秋招取得好的 Offer,奥力给!

1000道互联网工程师面试题

Java核心面试知识点整理

学习视频

疫情海投简历,收到字节跳动面试通知,三面险过(已拿电子offer)相关推荐

  1. 字节跳动面试(第三次面试)总结1:

    面试总结: 非计算机专业,没有项目经验,重点考察理论/逻辑基础:大体了解,但细节和关键点知识有所欠缺(3分一下是没回答好的) 3- 前端:了解一些基础知识,但是实践缺乏 3- 性格:主动性好,善于表现 ...

  2. 前端校招字节跳动面试 第三篇

    1. promise以及then方法相关. 参考一步一步实现自己的Promise 2. 使用构造函数创建对象相关. (1). 使用new创建时JS都做了哪些事情. (2). 如何自己实现new这个过程 ...

  3. 【2020-07】字节跳动面试凉经(年轻人的第一场 技术面试)

    字节跳动面试 比较坎坷的经历 2019年12月份报名过字节跳动的日常实习 当时可能就是想试试 连简历筛选都没过 也是啥也不会 即使半年多 过去了 也是啥也不会 但是知道 应该干点啥了 所以连在线笔试都 ...

  4. 我所经历的字节跳动面试

    面谈时间2020-8-23, 面试时间下午5:30~6:20, 牛客网视频面谈 投了Python数据挖掘,然后上来就让面Java后端. 猎头说不用考leetcode题,但是其实是需要考的. 我跟面试官 ...

  5. 这样投简历,99%没面试机会!

    在求职过程中,求职者问的最多的问题就是简历投递出去没有回音.没有回音的原因很复杂,除了简历制作不够吸引HR外,简历的投递方式也是重要环节.前程无忧论坛调查发现以下四类网投行为被企业拒绝的可能性很高. ...

  6. 想拿到大厂offer?带你9步拆解字节跳动面试环节

    做软件测试这么多年,可以说大大小小面试也有几百来场了,身边经常有测试的朋友过来找我面经,问的多了,我就想干脆写下来,省的每次总是重复一样的话. 面试次数多了就会发现,很多人面试被PASS,并不是因为专 ...

  7. 作为字节跳动面试官,这篇文章可以满足你80%日常工作!附小技巧

    前言 下面的题目都是楼主在Android交流群大家在面试字节跳动时遇到的,如果大家有好的题目或者好的见解欢迎分享,楼主将长期维护此帖. 参考解析:郭霖.鸿洋.玉刚.极客时间.腾讯课堂- 内容特点:条理 ...

  8. 找工作,除了海投简历和刷题,我还能做什么?

    续前文<如何在经济寒冬中找到好工作?>,最近就业行情不太好,有朋友断断续续投了近一个月的简历,但没什么面试机会,心中有些发慌.想问问,除了到各大招聘网站海投简历之外,还可以做些什么来增加面 ...

  9. “作为字节跳动面试官,有些话我不得不说!”

    转载自字节跳动 由于肺炎疫情的影响,不少同学年初跳槽的计划被搁置.虽然计划被打乱,但是这也给我们留出时间更好的准备面试.随着企业复工时间的延长,不少公司裁员.降薪甚至倒闭,之后只会更难. 看了不少「面 ...

最新文章

  1. 0基础学python难吗-0基础学武汉Python开发课程有多难?该怎么入门?
  2. Emacs之LaTeX环境配置及效果展示
  3. Ubuntu15.04 64位安装Theano(已经测试可执行)
  4. 《算法之道》精华 经典算法部分
  5. 这群程序员疯了!他们想成为IT界最会带货的男人
  6. STL9-vector容器
  7. Java反射详解_java反射详解
  8. html点击计数器的实现,点击计数器_Servlet 教程_w3cschool
  9. leetcode力扣49. 字母异位词分组
  10. 数据结构与算法分析-用C语言实现栈(数组方式)
  11. 任正非“2012实验室”讲话全文曝光
  12. 易效能:有哪些可以高效休息的方法?
  13. 【软件工程】结构图(SC)——期末复习用
  14. 魔兽十区服务器人最多,十区毁灭计划 新一轮wow大服务器实装公告
  15. 误码率与信噪比的关系matlab,误码率BER与信噪比SNR的关系解析
  16. ATTCK v10版本战术介绍—侦察
  17. 脑机接口中的流形嵌入知识迁移学习
  18. JavaScript 基础知识查漏补缺
  19. 分不清合约机与定制机,怀疑被骗
  20. android动画特效

热门文章

  1. python 矩形树图_好看的数据可视化的图片是怎么样做的?
  2. arduino红外热释电传感器_Arduino与Processing互动之红外热释电与感应路灯
  3. Java打印输出:委托代销
  4. php中怎么输出制表位,word如何使用制表位 word制表位的使用方法
  5. 犀牛Rhino:将点投影到网格(函数方法)
  6. PMPBOK6项目管理计划及其子计划
  7. 白模处理成b3dm格式数据
  8. MySQL错误码大全
  9. 从零开始搭建一个GIS开发小框架(七)——GMap.Net组件WPF版本加载POI性能测试
  10. YouTube直播SDK集成(二)