今日头条/字节跳动 后台开发岗(应届生)三轮技术面试
字节跳动特重视算法,不怎么关注编程语言啊,开发框架啊什么的,比较注重考察思维能力,也会问一些基础的操作系统网络通信什么的
感觉头条的面试思路跟微软谷歌差不多 就靠算法题看编程能力
然后也问了问我读研期间写的几个系统
总体感觉真是 难哭了呜呜
第一轮视频面试
视频面试是通过牛客网,双方写的代码都可以实时反馈给对方1.(项目经历)面试官特别关注项目里用到了哪些机器学习算法,尽管我报的是开发岗,依然详细询问我模型中用到的测试集。反倒是我写的系统用了哪些框架,哪些些技术,这些都没有被细问
2.(手写算法题)第一道题是leetcode原题:Minimum Window Substring。不是特别难,但是面试官会不断和面试者交流 有什么想法之类的。
3.(手写算法题)第二道题,调整一棵二叉树,调整后,要求所有节点的右子树的最大值大于左子树的最大值。
第二题也不算太难嘛,二叉树的题都不算太难,仔细想一下就成了,开心开心
4.(手写算法题)第三道题变态难:用两种积木,2X1型,1X1型,摆满n行m列,有多少种摆法。
提示就是先 考虑2行m列有多少种摆法,再算n行m列,有了这个提示好做多啦幸福
第二轮视频面试
1.(项目)继续问自己的项目,有啥困难啊,怎么解决啊。
- request 到 response 发生了啥,从应用层一直往物理层描述一遍
- (编程题)
3.1 实现一个类TestLimited, 类通过构造方法初始化int limitedTimes成员变量。
实现类的非静态成员方法qdsAllowed(),要求每秒钟qdsAllowed至多只能被调用limitedTimes次
class TestLimited{ int limitedTimes; TestLimited(int limitedTimes){ this.limitedTimes=limitedTimes; } public void qdsAllowed(){ doSomething(); } }
3.2 (继续3.1)当有多个线程来调用qdsAllowed,上述程序如何改进
我开始都没听懂啥意思,第一次做这么神奇的题想了好久心塞塞
第三轮视频面试
1.(系统设计)
设计一个微博系统,用户之间可以互相关注,
如果 A关注了B,B关注了C
那么 A间接关注了C且 A与C之间的度为1
然后系统有一个功能 输入俩用户 输出他俩之间的 度
如何设计系统 包括数据库,最短路算法都陈述一遍即可
2.(算法题)leetcode原题 Longest Increasing Path in a Matrix
a very usual question,just try to solve it recursively 😃
- 其实还问了我TCP中的’滑动窗口’,我说那不是大二学的嘛这都4年多了中间也没看过早就忘了~~然后就拉倒了人家没问
然后HR又聊了20分钟
问问人生理想啊为啥加入字节跳动巴拉巴拉
我的感想
真是什么也不敢想。。。人生第一次参与技术面试根本没来得及准备太多,好多题我也不知道怎么想出来的。遇到不会的题还是要多多和面试官交流,也不是必须每道题都得做得特别顺溜,肯定要有很难的题目,人家还是重点看一个你解决问题的表现吧。
总之不能傻坐着,千万别说你不会了想不出来,想不出来就问问面试官,问问他是怎么想的,有什么好思路借鉴一下(索求提示)
- 今日头条C++后台开发实习面试总结
- 2015腾讯校招后台开发类内推电话面试(技术工程事业群TEG内推面试分享)
- 今日头条2017实习生面试(三轮)
- 【今日头条】【招聘】后台研发工程师--java,前端开发工程师
- 迷迷糊糊参加面试当然得挂。。。2017年4月13日今日头条测试开发
- 字节跳动今日头条笔试题目经历2018
- 今日头条财经部门后台研发实习生面试
- 2015.11--360校招面试-后台C++开发工程师
- 网站开发后台技术一
- 应届生面试所需技术基础
- 腾讯WEB前端开发三轮面试经历及面试题
- 腾讯后台开发面试总结(别人的)
- Linux后台开发面试问题汇总
- App后台开发运维和架构实践学习总结(1)——App后台核心技术之用户验证方案
- [2017/06/02]腾讯后台开发实习生面试总结
- Java开发核心技术面试心得分析
- 【Unity】游戏开发过程中的前后台切换技术
- 今日头条2018校招测试开发方向(第一、二、三、四批)编程题汇总 - 题解
- 后台开发高频面试题目
- 2015年4月腾讯校招实习生(后台开发)面试经验(一面二面三面)