[火][秘] 新鲜面经|还有人缺offer么
更新|5.16
实习和秋招都有的……社招也有的……
背景介绍
楼主去年6月毕业,目前北京入职字节近一年,人在今日头条PUGC客户端团队。目前团队人力持续吃紧,年初招过一批新同学,但是杯水车薪,还是太缺人了!!为了帮助大家有效面试,楼主约了新同学们的面试经验,和面试官们的关注要点,给大家打个样板看看哈。
今日头条核心团队,主要负责今日头条下相关客户端业务开发以及架构设计,业务广泛,挑战多多,适合成长与瓶颈突破,团队氛围融洽!!
🔥面试经验🔥
同学A
写在前面
北京某211研一在读,有过一段3个月实习经历(百度 深度学习技术平台部),去年十月底入职字节的,目前实习三个月左右( 由于疫情 + 寒假
一面 45mins
- 自我介绍,百度实习的项目(问了架构设计,建议改成系统流程设计)
- 之前接触的项目是AI,为什么选择客户端开发?
- Android开发四大基本组件
- 学习一个项目的过程,如何学习?一些大的非开源的项目
- C++编译过程
- 面向对象和面向过程的区别
- 操作系统:线程与进程区别,为什么进程切换开销大
- 计算机网络:
a. http&https的区别,https如何加密(对称+非对称)
b. url解析过程(tcp三次握手和四次挥手要详细介绍) - 智力题:赛马问题,25匹马,5个赛道,选3匹(7次)
Coding:
- 剑指offer 35:复杂链表的复制
- 二叉树的最大子二叉搜索树
二面 1h15mins
主要问了项目和从项目延伸的一些问题
- 介绍实习项目及自己的主要工作,传输过程中如果存在差错应该如何解决(校验)?传输过程中的信息安全如何保证?(对称加密 + 非对称加密)
- 毕设项目,介绍流程及自己的主要工作。如何解决海量数据的传输问题?传输过程中存在错误的情况下,如何设置校验?使用了冗余编码之后存在额外开销的问题,如何权衡实时性和可靠性?多线程是否经常使用,为什么选择使用python实现?常见的多线程使用场景有哪些?
- 智慧旅游服务平台(大创),自己负责的部分。有没有更好的路径规划算法(dijkstra以外的)。如何评估一条路线的好坏,通过非人工的方式去评估一个功能的效果?某个功能上线如何去考核验证其实用性?如何查验功能上线后的点击量是否增加?
- 实习时长的问题,两三个月的实习时间可能刚上手业务就要离开了。每周尽量保证全勤。早上10:30之前。
coding:leetcode-543 二叉树的直径
三面 50mins
- 自我介绍,实习项目介绍。
- 实习经历:在百度项目中自己的工作,如何评价自己写的工程代码。
- 毕设相关:数据传输的完整性校验以及正确性校验。
- 学习技术的思路与过程,github项目如何去学习;
- 未来职业规划;自己距离成为一名正式员工还有哪些欠缺;团队协作中自己的定位(倾向于去主导并做一些额外的工作)
coding:ip地址复原 leetcode-93
同学B
面试经历
先说说我的基本情况,楼主目前研二在读,学的的是计算机视觉,奈何算法岗太卷了,竞争不过各位算法大佬,所以润来了开发岗。某天清晨无意间看到了咱部门的招聘广告,由此开启了一段横跨春节的面试经历。
一面
一面来的猝不及防,简历刚投两三天就接到了面试邀请。一面主要以考察基础为主,面试官问的问题我大概回忆一下:
- 自我介绍
- 什么是面向对象编程,什么是多态
- 结构体和类的区别有哪些
- 编译的过程具体做了什么
- 浏览器输入url后发生了什么
- https和http的区别
- 你了解多线程吗
- 内存溢出和内存泄漏的区别
- 你讲讲你的这个项目吗
coding: 前k小数,题目很简单,这题要考虑不同的数据规模,对于海量数据必须要用堆做,我是用C++写的代码,所以直接就调用了优先队列priority_queue,题目写完后面试官让我手写了一下堆排序,很久没有手写堆排序了有点手生,不过最后还是写出来了
二面
一面结束第二天我就又被HR同学电话约面试了。因为这时候已经快过年了,所以就约了年后第一天二面。二面主要是通过项目进行知识点的考察,因为楼主简历上有放客户端相关项目(课设),所以二面面试主要以这个项目为主进行问题延伸
- 自我介绍
- 简单介绍一下这个项目吧
- 讲一讲Android的四大组件
- 就客户端用户登陆这一步,如何保证数据的安全性?
- 数据放在本地如何保证数据的安全性?
- 用户再次进入应用后,应该跳过登陆,那么用户信息应该怎么保存,怎么保证安全性?
coding:连续子数组最大和,我作死说了一句这题比较简单,然后面试官就换了一题,连续子数字的最大乘积,这题负数状态没想到怎么写进状态转移方程中,没做出来,最后还是回去做上一题了,然后对再对代码的时间复杂度进行了优化(呜呜呜,痛苦面具)
三面
二面结束后,第二天如期的收到了HR同学的三面邀约,我就选择了隔天
三面就没咋问基础了,问了问项目,问了问平时读什么书,然后聊到了深度学习上,说了现在正在做的毕设课题,问了问平时怎么做笔记的,看了我的博客,还问了问自己的优势,三面时间很短,大概半个小时就结束了,没有算法题了。
四面
三面结束后一小时,我就得到消息说我通过了,哈哈,可把我激动坏了,想着面试应该结束了,期待着第二天收到HR同学的上岸通知,结果等来的是四面,不过四面是HR面,感觉跟三面内容差不多,可能更偏向于让我陈述自己的竞争优势,平时的学习习惯,具体聊了啥记不清了,但是聊的挺愉快的哈哈,然后问了如果上岸准备实习多长时间,有没有转正意向,还问了我现在还有面其他家没有等等。四面也挺快的,大概也就半个小时。
然后就是漫长的等待了一周的offer审批,然后如愿的收到了oc
面试过程中,我能非常明显的感受到面试官的友善!他们会去挖掘你的优点,对于你不会的点不仅不会为难你,面试官还会教你,比如一面的时候,我内存泄漏和内存溢出概念搞的不是很清楚,面试官还现场教了我这两者的概念和区别哈哈!这个面试官后面成了我的mentor,非常nice!!
同学C
目前大三,趁下半学期课程不多出来实习增长见识
一面 50mins
- 项目相关,JetPack和MVVM框架
- 看过哪些源码?说了LeakCanary,顺势问了四大引用
- Activity的四种启动模式,具体任务栈...
- 输入一个url会发生什么
- HTTPS和HTTP的区别?
- Java实现三个线程顺序打印1—20
算法题:螺旋矩阵
二面 45mins
- View事件分发机制,ACTION_CANCLE事件有了解吗?
- 嵌套滑动遇到过吗?滑动冲突怎样处理?onTouchEvent的回溯
- 常见的数据结构,讲了HashMap原理
- 动态规划有了解吗?贪心算法和动态规划有什么区别
算法题:最大子数组和(打印子数组而不是返回最大值)
做算法题时紧张了,好多条件没有考虑到,之后在面试官的引导下找到了bug
三面
三面的话就没有针对具体的技术问题进行考察,问了问我的学习方法,我对Android现状的了解,为什么会选择做Android开发这个方向......
然后简单的做了一个算法题:复原IP地址
㊙️面试要点㊙️
特邀字节面试官亲述一些面试相关的要点
面试官A
关于简历面试官会关注哪些内容?
- 多写一些能突出技能的事项,例:专业、成绩、奖项、比赛、ACM、项目
- 无关项/含金量不高的可少填,例:***、导游证、无关资格证、音乐大赛
在面试前要不要进行准备?应该准备哪些?
- 面试前一定要进行准备,否则通过的概率会降低不少,除非对专业知识很自信
- 校内学的专业课程是基石需要多思考多理解,平时做的的大小项目也总结下重点难点
面试过程以什么样的姿态和面试官进行交流沟通?
- 平等且自信,把面试官当成学姐学长,是在进行一次专业技能的沟通,越自信效果越好
- 面试过程中遇到紧张气氛可以和面试官说给你几分钟来调整下自己的心态,调整后继续聊
- 有压力时及时调整自己的心态,不消极,不带情绪,保持沟通的顺畅性
在面试过程中被问到一些自己没有接触的知识应该怎么回答?
- 不用立刻说自己不了解,可以利用自己的专业知识来进行分析并尝试进行解答
- 真不了解也不用强行解答,分析出来的东西自己要有依据,无思路也可说不了解
面试结束后面试官让我提问题我应该提哪些问题?
- 面试结果相关的可以少问,这些问题面试官是不允许直接给回复的,相关问题可以问HR
- 面试结束后需要快速切换心态,想一想自己关注的问题,最好能提出1-2个有价值的问题
- 可以聊一些和岗位相关的,例如团队、氛围、培养、方向、流程、技术交流
面试官B
面试是一个双向筛选的过程,我会重点考虑【靠谱】和【合适】两点。面试通过或不通过并不代表我们优秀或不优秀,所以我觉得面试的过程重点要关注【靠谱】和【合适】这两点特质。如果一个候选人频繁修改面试时间,或者在约定的时间严重迟到,很容易让面试官联想到不靠谱等词汇。合适这点也很重要,我们应聘厨师的时候钢琴八级证书是没用的。所以对于技术类的岗位,在应届生的简历里我们更希望看到职业相关的证书或奖项,比如ACM、数学建模、挑战杯、poj/leetcode刷题量等,这些都是我们基础逻辑能力的体现。在社招的简历里,我们更希望看到自己对项目的贡献和思考而不是项目本身的发展,毕竟不是每个参与过千亿大买卖的人都是富豪,双11促销谁没参与过呢是吧。
面试官C
问:如何准备面试问题?
答:面试的目的是为了考验出面试者是否能胜任岗位,面试官一般会在简历中的项目经历中挑选出有一定复杂度的点来提问,来体现面试者的想法和解决问题的能力,所以写好项目经历很重要。项目经历可以是一个有一定复杂度的项目,或者是一个大作业,或者是一个钻研比较深入的知名开源项目。
问:面试官在面试中为什么总不看我?
答:写面评中,面试官需要对候选人的回答做记录。一般面试官在面试开始前会说明这个情况,但是不排除有些情况可能面试官没有说明,大家不必太在意。
问:写简历有什么建议吗?
答:隔离出与面试岗位无关的简历内容,如拥有汽车驾照、钢琴证书和能喝酒等之类的内容,重点描述出自己的能力与项目,可以准备出多份不同的简历,分别面向不同方向,例如客户端、服务端、机器学习等。之前收到过面试客户端岗位的简历,里面全都是机器学习的各种项目细节。不是说不可以写,但是要详略得当。
总结
简历
- 简历要突出重点,体现自己的能力,无关的内容不要放,避免信息的冗余
- 简历不要随意海投,面试都会有记录,过于“丰富”的面试经历会对后续有一定的影响
面试
- 面试的过程要注重下基本礼仪,不要迟到。线上面试注重诚信问题,不要轻易切换页面
- 面试是一个互相交流的过程,可以适当的输出自己的观点。
- 不会的问题/算法题可以多与面试官沟通思路
🔪面试内容🔪
面试一般分为三轮技术面+一轮HR面
技术面试会主要考察基础知识,算法代码编写能力,候选人的软素质,还会针对简历上的内容进行一些了解。
这里每个考察的知识点其实是存在一个难度渐进的概念,对于一个知识点,候选人这边是只知道一些浅层的,表面的东西还是知道一些深层次,更详细的东西。
计算机基础知识
基础知识主要是操作系统,计算机网络,数据库等相关内容,具体的知识点,相信大家懂的都懂,网上也都找得到。但是并不提倡大家死记硬背,是背过的内容,还是理解了,会应用,面试官其实是可以看的出来的。建议大家还是在理解的基础上去准备。
代码编写能力
代码编写能力分为编程语言知识基础和算法。
编程语言知识一般是候选人针对候选人主要使用的编程语言,一般是c++/JAVA。会考察候选人对相关内容的掌握深度,理解情况。
算法就是喜闻乐见的手撕代码环节,算是面试的一个重点的考查内容。这一环节主要考察候选人的代码设计,开发效率,代码质量等能力,所以不仅仅是能够将算法题做出来,编码风格和编码质量也是很重要的。如果编码卡壳不要紧张,可以和面试官交流下,阐述下自己的思路。还有面试官不会用特别偏门的算法题来为难候选人,这里大家一般leetcode 刷一刷,400道+。
软素质
通过面试的表现来观察候选人在以下方面的情况:自省,抽象总结能力,沟通能力,聪明程度,学习能力,工作热情,追求极致,ownership,结构化思考等。大家可以不用紧张,多多练习。
植入广告
字节跳动今日头条客户端团队(北京)招人啦!!!hc多多!!!
团队介绍
产品覆盖今日头条、头条极速版等各类产品,为上亿用户持续提供优质的资讯、视频等服务。我们通过建立良好的内容生态,鼓励原创优质的内容,为创作者提供优质的服务和创作体验,促进创作和交流,同时我们致力于通过尽可能丰富的内容体裁和尽可能多的分发方式,连接人与信息,丰富大家的精神生活,让人们看到更大的世界。
今日头条核心团队,主要负责今日头条下相关客户端业务开发以及架构设计,业务广泛,挑战多多,适合成长与瓶颈突破,团队氛围融洽!!
实习/23届校招
面向23届及以后毕业的同学,实习三月以上就会进行转正考察且转正名额较多。
不要求有客户端开发经验,更注重基础知识扎实,学习能力与潜力。
专业mentor手把手亲切指导,只要你肯学,没有教不会!
岗位职责
1、负责今日头条相关产品的客户端研发,编写高质量的代码;
2、和产品经理配合,深度参与产品需求讨论、功能定义等。
联系方式
备注:实习|2023校招
邮箱投递:yuzebang@bytedance.com
WX 👉 yuzeb008
入职分享
同学A
团队氛围很好,因为种种原因,刚入职一周就开始接手一些小需求,遇到了种种问题(最多的还是一些编译问题),刚开始比较没有头绪,每天压力也感觉比较大。好在mentor和团队的其他同学都耐心的进行解答,在解决问题的同时,还要知其所以然,走完一整套合码流程之后还是蛮有成就感的~
现在已经能比较独立的做一些比较大的需求了,对做需求这件事也有了更深的理解。沟通很重要,遇到不清楚的点,我们需要和PM、QA、Server等同学去确认,如果是双端需求还可以和另一端的同学多讨论,不要自己闷头做,这样很容易出现效果不符合预期的情况。
很喜欢mentor讲过的一句话:“需求是做不完的,更重要的是在做需求的同时不断积累自己,提升自己的能力”。的确如此,除了平时大大小小的需求,还要多看一些技术方面的文档,提升自己的软实力,永远走在技术前沿。
同学B
- 入职的这段时间,让我感受最深的就是我们良好的团队氛围,在团队里,有同事带着我一步一步前进,这种保姆式的带领让我快速适应了头条的工作模式。今天完成了前两天修改的bug的合码流程,当合码流程成功做完的那一刻,我真的产生了一种发自内心的喜悦和成就感!
- 现阶段开始接手第一个需求了,我相信做完这个需求后,我能对我们的开发流程有一个更好的认识!多学习,多实践,脚踏实地的做好每一件事。
同学C
两个月的实习生活给我带来很多感触
- 想先从团队氛围聊一聊,整个团队的氛围真的很好,无论是技术氛围,还是同事之间的相处,给人很轻松的感觉。团队很有活力,对新人也是十分的友好和热情。同事之间也会互帮互助,经常会看到他们聚在一起讨论技术。
- 工作方面,刚来会给时间去熟悉一下代码,之后就会开始接一些小的需求,不用有任何担心,导师会全程的指导你,遇到问题会悉心的帮你解决。同时,导师也会经常跟我one one,尤其是对于刚来一周就居家办公的我来说,真的解决了很多问题。
附言
真的是缺人啊。。。家人们,走过路过不要错过,犹豫就会败北的(滑稽。。。实在不行,加个微信细水长流嘛。实习校招都缺啊,社招也缺啊。。。
#秋招##内推##春招##实习##面经#