前言

首先在这里介绍一下这位大佬,他是之前就在看我博客的一个算是粉丝吧,自己是湖大毕业的,自己在学校里面就经常趁着假期去找各种实习的事,非常好学的一个人,平时有什么不懂的就来问我,我也很乐意解答,他是去年毕业的,前一段时间找我吃了个饭,告诉我自己进字节了,说实话我还是有点惊讶的,毕业一年进BATJ,这不是大佬是什么,下面附上大佬的面试感悟以及复习资料!

我这里还准备了一线大厂面试资料和我原创的超硬核PDF技术文档,以及我为大家精心准备的多套大厂面试题(不断更新中),希望大家都能找到心仪的工作!有需要的朋友点击这里备注csdn,自行下载即可,希望大家面试顺利,拿下自己心仪的offer!

一面 11.10 :44 min

  • 说下项目。

  • 线程与协程。(协程不会)

  • DNS查询。

  • DNS投毒。(不会)

  • 堆和栈的区别。

  • 堆什么时候做内存回收。(错了一半)

  • 项目有无用过多线程。(无,只看过书上的demo)

  • 多线程的参数。

  • 用过哪些设计模式,我说单例、工厂、观察者、代理模式。(他想让我说策略模式、装饰模式和适配器模式,但这三个我都不知道)

  • 说一下代理模式和使用场景。

  • Redis字典结构、扩容。

  • HashMap解决Hash冲突的方法。

  • MySQL的二叉树、B树、B+树、Hash索引比较,二叉树的缺点。

  • . MySQL的可重复读是怎么实现的,MVCC怎么实现的。

  • MySQL如何判断死锁,回滚的时间是空闲的,能做什么优化。(优化不知道)

  • 进程间通信方式,举例说明一个。(举例说明不会)

  • 一个跟内存泄漏比较相近的词,问我有没有听说过,具体忘了,答没有。

代码:二选一,做的第一个,没bugfree,改动了一次,挺遗憾的。

  • 字符串最长子串

输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。

输入: “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。

  • 给定一组正整数,重新排列它们的顺序然后组成一个最大的整数

输入: [11,5] 输出: 511

输入: [3,30,34,5,8] 输出: 8534330

  • 反问:

问部门语言

是不是ToB

跟商业变现的区别

我看有些面经都直接问自己过没过,面试官会直接说,我也问了自己过没过,他说等hr通知,我心里咯噔一下,但觉得不至于不过,也不怎么慌。

五点四十五左右面完,六点半hr回复我了,六点四十的时候二面hr就给我打电话预约下次面试了,约到了第二天两点,不得不说,字节效率拉满。

二面 11.11 54min

  • 问了什么时候能实习,实习多久

  • 项目里的登录状态怎么做的(一开始说的SpringSecurity的过滤链,看他表情好像说的不对,他给了点提示,我问是说cookie吗,他说对,然后开始说cookie)

-* cookie与session区别

  • 进程间通信方式,每个详细说明(一面问过了,可能一面答得不好,被标记成答不出来了,所以又问了一边,还好一面结束后好好背了一下)

  • url输入后的过程,https版本,顺便说了数字签名、证书,session-key的建立

  • TCP三次握手、四次挥手

  • TIME_WAIT作用

  • HashMap原理和扩容(脑子一紧张,扩容给忘了,想了能有10秒钟)

  • HashMap是否是线程安全的,从你刚才说的头插法插入链表说一下为什么不安全,是一个什么样的过程

  • 如果想要实现HashMap线程安全,要怎么做(我问可以直接说ConcurrentHashMap的原理吗,他说最好是根据HashMap的问题,一步步推导出来,然后我就对比了HashTable、HashMap说了一下,最后说到为了保持可见性和速度,value用volatile修饰,引出了下面的问题)

  • volatile性质(说错了,挺离谱了,我先说了可见性和原子性,又说了++不是原子性,自己打自己脸,面试官说那到底是不是原子性,我说部分原子性,他说不是原子性)

  • 什么是原子性

  • 缓存行原理(说错了,我说缓存行在内存里,他说不对,然后说CPU什么的,我说不了解)

  • CPU调度(不会)

  • volatile为什么使用缓存行

  • volatile对于64位缓存行的优化

  • 网卡的工作原理(数据到网卡,从网卡读取出来的方法等,不会,只知道到了网卡怎么出去)

  • 使用TCP的时候网络拥塞的处理(我答的流控制、滑动窗口那一套,看面试官表情应该是没错)

  • 滑动窗口大小如何确定

  • TCP拥塞控制

  • TCP连接的时候的攻击了解吗(我说了一直发送SYN让服务器多个连接处于SYN_RCVD状态来消耗服务器内存,他问我确定是内存吗,我说是吧,不太清楚)

代码:基础题型,Bugfree。

给定一个仅包含数字0−9 的二叉树,每一条从根节点到叶子节点的路径都可以用一个数字表示。

例如根节点到叶子节点的一条路径是1→2→3,那么这条路径就用123 来代替。

找出根节点到叶子节点的所有路径表示的数字之和

反问:

问了结果,面试官一开始不想说,最后反问快结束的时候给说了,说给过了,基本符合他的预期。

问了三面侧重点在哪,是项目还是基础,面试官笑了,说不知道,说他自己看重基础,说他自己不了解三面。

问了新人怎么培养,面试官说有官方培训还有组内交流。

问了实习生多久参与线上项目,面试官说一个周,基本把实习生当正常员工用,面试官还问了有没有转正需求,我说有。

三面 11.12 25 min

  • 问我投没投别的公司,我说就字节和滴滴,然后问我为啥没投其他厂,我说美团、阿里现在不招,腾讯感觉语言方向不太合适,不太想去。

  • 让我对自己的基础状况做个评价,我说我对计算机网络、MySQL、Redis比较熟悉,操作系统相对薄弱一些。

  • 问我考研专业课考了什么,我说只考了c语言和数据结构,还有部分算法,当时他听到后还挺吃惊的,又确认了一遍,觉得学的太少了,到这我就感觉不太妙了。

  • 手撕生产者、消费者模型,10个生产者,10个消费者,队列容量为30个,没写出来,这个怪我,之前看了一遍还手写了一遍,但是当时都给忘了,能有10分钟,没写出来。然后他说“你不是看过吗”,我说有点忘记了。

  • 讲讲同步IO、异步IO、(还有个IO我不记得名字了),从用户态与内核态的角度讲一下。(不会,都说了操作系统薄弱,还问我这种问题)

  • 项目为什么用SpringBoot。

  • 知道事务的传播吗。(没了解过)

  • 对于Spring你了解什么。我说了IOC和AOP,然后他问使用AOP的好处是什么。

  • 设计模式了解吗,说一下策略模式。这个我准备了,看的大话设计模式,举了满减、优惠例子,还说了抽象类、实现类、工厂类、客户端做什么,然后他说我说的不对,不是策略模式,我就问那我说的是什么模式,他说有点像模板方法模式,然后问策略模式的好处。

  • 说说自己有什么优势,好像是这么个问题,就是问学习状态之类的,我说专注、效率高之类的。

  • 问我能不能接受半年且没有转正机会的实习。听到这我挺火大,虽然三面面的有点稀碎,但我就这么差吗,半年就半年,连转正资格都没有,我又不是非吃你这口饭不可,然后我就说不太想考虑。

反问:这块我就知道自己凉了,那既然都到三面了,也不能白来,你们部门干嘛我也不感兴趣了,又进不去,就问了下面试官对于面试者的考核问题,还问了下问什么三次面试都几乎没有提及Redis,是不是部门里用的少,他说不能说,然后说就到这吧,我说好,就结束了。

结果:11.16接到电话了,说三面表现不好,面试官给的结果是待定,换个部门加面,然后约到了11.19号。

四面 40 min

面试官说咱们先做个题试试,我说可以,我一说他啪的就把题目打在了公屏上,很快啊,然后上来就是一个"二维数组查找",一个"2*N铺瓷砖",一个"TopK",我全防出去了啊,防出去以后,自然是传统面试,点到为止,我已经准备背八股文了,他突然袭击,一记"还有别的方法吗?",打过来了,我大意了啊,没有背,当时流眼泪了,我说停停,我不知道。

代码:

  1. 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
  2. 我们可以用2 * 1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2 * 1的小矩形无重叠地覆盖一个2 * n的大矩形,总共有多少种方法?写出您的代码 。
  3. 在100亿个无符号整数中取最大100个 topK Memory has limited. What’s time complexity of this solution?(题的原文就这样,一半中文一半英文,说思路就行,先问了有内存限制的情况,我说堆排序,他说什么堆,我说最小堆,他说时间复杂度呢,我说N * log K,他说要是没内存限制呢,我说快速选择, 他说时间复杂度呢,我说K,他说最坏的情况会到N方,还有别的方法吗,我想了一会,说如果均匀分布可以用桶排序,其他的不知道了,他没说话,就结束了。)

基础知识问题:

  1. HTTPS加密过程。
  2. MySQL为什么用B+数,不用二叉查找树、红黑树。
  3. 知道pagefault吗。(没听说过这个名词,我说知道一些页的内容,您可以说说这是什么我可能知道一些相关的,他说知道页中断吗,这个词我也没听说过,我就问是"缺页"吗,他也没说话,我就说不知道了,但是我面完一查,确实是跟缺页相关的,他要是说是我又能背五分钟。。。怎么就不说话呢)

反问:

问这次发的邮件是”广告研发“,之前是”广告系统“,想问区别是啥,他说没区别。又问多久参与上线代码,1-2个周。然后就完了,也没说过不过,然后HR通知说过了。

最后

我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的,在我看来,自己付出多少,回报就有多少。

最后提供免费的Java架构学习资料,学习技术内容包含有:Spring,Dubbo,MyBatis, RPC, 源码分析,高并发、高性能、分布式,性能优化,微服务 高级架构开发等等。,还有Java核心知识点+全套架构师学习资料和视频+一线大厂面试宝典+面试简历模板+阿里美团网易腾讯小米爱奇艺快手哔哩哔哩面试题+Spring源码合集+Java架构实战电子书一起免费分享给大家!

有需要的朋友点击这里备注csdn,自行下载即可

粉丝经历!湖大毕业工作2年,成功拿下字节跳动后端研发岗offer!相关推荐

  1. java后端简历项目经历_为了面试字节跳动后端开发岗(Java)鬼知道我经历了什么.....

    字节跳动的招聘十分火热,基本上全年都是铺天盖地的宇宙条的招聘信息.但是其实录取率并不高. 无论是找后端方向还是其它方向,我相信整个面试的过程和时间节点都能对你有一定的帮助.字节跳动的面试流程基本上是我 ...

  2. ChatGPT泄露用户聊天记录标题;Adobe加入AIGC战局;阿里大模型前带头人杨红霞加盟字节跳动丨每日大事件...

    ‍ ‍数据智能产业创新服务媒体 --聚焦数智 · 改变商业 企业动态 诸葛智能推出"诸葛CDP 2.0"等三大产品升级 3月22日,容联云旗下场景化数据智能服务商"诸葛智 ...

  3. 字节跳动 python面试_字节跳动数据分析实习岗面试全经历,竟然也会问这样的问题?...

    临近年底,又有不少人跃跃欲试想跳槽了. 但跳槽这个事说容易也容易,投简历总是有人要的,但说难也难,要进大厂,不光要看能力,更要看项目,看背景. 就怕辛辛苦苦准备半天,面试的时候没表现好,直接被刷掉,面 ...

  4. 10天拿下字节跳动offer! 阿里P8指路:9大面试误区+字节面经分享

    去年,学校有位学长参加秋招的时候,拿到了字节跳动.快手.阿里.美团--等等 7 家大厂的 Offer,在此之前,学长一直"默默无闻",基本可以说是在秋招一战成名,成为众多学弟学妹羡 ...

  5. 工作8年,跳槽字节跳动,月薪从1w涨到7w,网友:本科的话有点牛逼了

    点击上方"码农突围",马上关注 这里是码农充电第一站,回复"666",获取一份专属大礼包 真爱,请设置"星标"或点个"在看&quo ...

  6. 【面经】记一次字节跳动后端面试经历

    太长不看版 对于实习招聘(甚至校招)来说,项目经历可能是获得面试的敲门砖,但是基础绝对是赢得面试的通天索. 即使是实习招聘,白板写代码也很可能逐渐成为主流面试的标配,平时要有意识地锻炼这方面能力,要不 ...

  7. 非985、211毕业,却选择了拒接百度Android开发岗offer?

    前言 今年上半年其实就已经有了换工作的想法,奈何疫情原因和岗位缩减,加之信心不足,到六月底投递了百度的Android岗位,本以为像我这种非211.985没工作经验的渣渣只能被直接pass,结果却意外的 ...

  8. 2021年计算机保研经历:人大信院、南大软院、华师数据院、厦大软件、湖大信院【7000字详细介绍】

    今年准备保研期间,我在网上看了许多保研经验贴,受益匪浅. 如今尘埃落定,那么我也将自身经历详细写出,希望对学弟学妹们能有所帮助.(如果觉得有用就点个赞吧~) 我最后去人大信院了,欢迎今年保研人大的同学 ...

  9. 字节跳动大数据中心17万服务器硬实力支撑今日头条等产品线(公号回复“字节跳动”下载PDF典型资料,欢迎转发、赞赏支持科普)

    字节跳动大数据中心17万服务器硬实力支撑今日头条等产品线(公号回复"字节跳动"下载PDF典型资料,欢迎转发.赞赏支持科普) 原创: 秦陇纪 科学Sciences 昨天 科学Scie ...

最新文章

  1. 学习用C#在Unity中创建一个2D Metroidvania游戏
  2. SpringBoot第十一篇:springboot集成swagger2,构建优雅的Restful API
  3. localStorage、sessionStorage、Cookie的区别及用法
  4. Spring-security配置
  5. 推荐12个Android开发源码(包括应用、游戏、效果等等)
  6. [翻译]Chameleon介绍(3) : 列表控件
  7. wireshark网络分析就这么简单 pdf_才知道,PDF、Excel、Word互转这么简单?涨知识了...
  8. VALSE 2020-18 《如何写/审AI领域的论文》笔记
  9. c#如何通过ftp上传文件_ftp自动上传文件,如何设置ftp自动上传文件及环境配置...
  10. linux为什么要交换内存,Linux系统中交换内存是什么?
  11. linux 跨物理 集群,linux学习之使用keepalived结合lvs搭建高可用负载均衡集群
  12. regex 正则表达式_使用正则表达式(Regex)删除HTML标签
  13. 树莓派控制电机转速_怎样用树莓派控制直流电机的方向和速度
  14. CSS之viewports剖析
  15. Windows7中右键菜单无新建文本文档选项的解决办法(注册表)
  16. 性能测试工具AlldayTest 的测试方法及说明
  17. Atitit 常用的登录认证法 目录 2. 表单验证 1 3. OAuth 认证 1 4. Web票据模式验证 1 4.1. Token验证 1 4.2. Cookie-Session 认证 1
  18. 【涡动协方差及能量平衡系统】
  19. 城市大数据及开放数据索引
  20. VS Code常用快捷键

热门文章

  1. 2023版大数据学习路线图(适合自学)
  2. uniapp 微信小程序 控制台警告和错误处理
  3. 你想要的宏基因组-微生物组知识全在这(1909)
  4. 苹果开发者账号官方翻译篇-团队管理
  5. 弱加密算法有哪几种_不安全的加密算法有哪几种
  6. 计算机软考网络工程师 查询,软考网络工程师怎么查询报名是否成功?
  7. java程序 部署服务器_Java代码如何布署到云服务器
  8. 精准医学:NGS和MFC方法在多发性骨髓瘤MRD评估中的比较|预后监测
  9. 公安部:办案中总结出来的60种电信诈骗形式
  10. html 手机登陆验证码,手机号登录(验证码).html