字节跳动 基础架构部 暑假实习面经

本人目前在南京大学 本硕都是电子 比较水。。。
之前有在图森基础架构部门实习所以对容器编排,docker和faas函数计算有所了解,
就走的头条的内推,推的是上海的基础架构部门。
有一点还是体验不错的,刚内推完半个小时hr就来电话约面试时间,非常的效率。
我约的时间是下午四点,一次性面完3面大概持续了3个小时。
形式走的是牛客网的面试平台,视频面加上编辑器撸代码。

一面:
第一面一上来先让我自我介绍,说说自我感觉最好的项目。
1. 函数计算是什么?
2. 函数计算的缺点是什么?追问
3. python 切片的细节
4. 装饰器的用法,手写计算函数调用时间的装饰器,如果函数有返回值怎么得到,闭包
5. python多继承问题 方法的解析顺序 解析父类的同一个函数
6. GIL全局解释器锁是什么 怎么来的  有什么问题
7. gevent相关
8. is和==的区别
9. 如何判别一个变量的类型  哪些方式 有什么区别
10. 元类型 知道么?
11. 深拷贝浅拷贝
12. * 和** 是什么 怎么用
13. python的GC 说一下
14. python和java的区别 说说你的理解
15. java和python的多线程的区别
16. java有多继承么 python的多继承
17. xrange 和range
算法题:
1.最长回文子串
直接让我先写暴力解,没问马拉车。。写完暴力解的时候想说优化的事情结果就问下一题了。
2.地图上有若干个点,怎样得到某个点到达某个点的所有的换乘路线
这题我是没咋明白,感觉信息有点少,就问是不是单源最短路径问题,迪杰斯特拉算法。。。然后问到最后面试官给了一个详细的情景:如果两个点之间是不可达的各自在一个不相联通的环内怎么告诉用户不可达
我回答并查集。。
有什么问题问他。。

二面:
首先聊项目,主要是聊之前在图森的faas函数计算的事情,可能这边也在做所以聊的很多,包括使用的开源框架openfaas这个面试官也比较里了解。
具体问题如下:
1.你写你调研过fission,kubeless,openfaas那你说说他们之间的异同
2.openfaas的缩到零有使用过么?为什么使用这个功能?如果实现根据函数的调用次数 去自动的改变函数的副本的个数?
3.说说你用到的rpc协议,jsonrpc主要的问题 ,有没有了解过其他的rpc框架,他们的好处是什么?
4.看你做过linux服务器的开发  那么说说epoll
5.epoll的触发方式 水平触发和边沿触发说一说
6.http复用连接 如何区分请求?
7.看你使用过gevent 那么说一说,什么是协程,协程的切换是怎么做到的 ?
8.协程的调用栈切换
9. monkey补丁知道么?
10.说说图森tuyaco是什么?
11.openfaas的服务发现是怎么做的?
算法题;
给你一个字符串,字符串当中是一段c语言的代码和注释,注释只有/* */这样的可以嵌套,不包含//
1.请返回去除所有注释的代码
2.如果代码当中的/*和*/可以不完全匹配如何告知出现错误

三面:
先聊项目,聊了蛮久的,然后面试官也主要在介绍他们主要做什么。。。
然后问问题:
1.docker的底层实现是什么 说说namespace 和Cgroup
2.tcp的重排序的细节是什么 如果传输的数据很大是如何重排序的
3.tcp是如何保证稳定传输的
4.c++ 开发当中遇到过段错误么? 如何调试的怎么解决的?
5.其他的问题目前想不起来了。。。

算法题:
1. 给你一个2G的电脑 10G的文本 文本有1k行的字符串,要求输出所有互为逆序的字符串的组合
最后问我 实习时间 想不想去北京实习

然后晚上就是hr面大概面了十几分钟吧:
1.前面几轮面试的感觉怎么样?
2.为什么投递这个岗位?
3.实习的时间是多久
4.从哪里得知内推的消息
5.和我聊了聊实习的工资和补贴
6.建议我先去北京实习 因为我投的是上海的部门
7.说后面就是offer审批流程
8 加微信等结果


整体头条的面试的效率是非常的快的一天就搞定了所有的面试。但是出结果的话还是需要等审批流程我是上周四面完的然后现在还在走审批。。。问了hr告诉我
因为是5月去实习所以没有催审批,但是这周出结果。希望别出什么岔子。。。

然后有了解头条的基础架构部门的可以加我微信 15850536511
#实习##面经##字节跳动##C++工程师#
全部评论
1. 求解所有换乘路线思路应该跟最短路差不多吧,dp[i]表示从起点s出发到达i点的所有路线,dp[v] += dp[u]如果u点能到达v的话,dp[t]就是从起点s到达终点t的所有路线。 2. 求所有互为逆序字符串我有个思路不知道对不对,从左到右扫一遍得一个字符串哈希码s,从右到左扫一遍得到一个哈希码t。1k行字符串得到1k个pair<s,t> (pair默认小的在前),那么相同的pair<s,t>则是一个互为逆序字符串。内存不够可以分批读取。
点赞 回复 分享
发布于 2019-03-04 14:27
最近受牛客网邀请,写了一个关于面试和求职的专栏:《收割BAT:C++校招学习路线总结》:https://blog.nowcoder.net/zhuanlan/QMdpMr 欢迎大家支持~ 使用我的专属优惠码只需要1元~:D3btI8p 或者点击链接 https://www.nowcoder.com/order?itemId=17&itemType=ZHUANLAN&couponId=D3btI8p
2 回复 分享
发布于 2020-03-17 21:19
刚去搜了一下faas是啥
点赞 回复 分享
发布于 2019-03-04 14:22
拿到offer啦头条还是很效率的~  选择的上海 
点赞 回复 分享
发布于 2019-03-06 20:13
还想起来的几个问题是  1.操作系统的调度算法了解么 说一说 2.惊群知道么?
1 回复 分享
发布于 2019-03-05 20:36
这些问题楼主基本都能答上来嘛
1 回复 分享
发布于 2019-03-04 14:11
马拉车需要掌握吗
点赞 回复 分享
发布于 2020-06-04 21:42
tql
点赞 回复 分享
发布于 2020-04-12 17:38
复制大佬offer路线😂 等了6天审批收到offer letter。
点赞 回复 分享
发布于 2019-12-19 11:24
三面最后的算法提题怎么做呢
点赞 回复 分享
发布于 2019-07-17 11:07
给你一个2G的电脑 10G的文本 文本有1k行的字符串,要求输出所有互为逆序的字符串的组合,请问楼主这题怎么做的
点赞 回复 分享
发布于 2019-05-19 17:55
大佬最后决定去头条了吗
点赞 回复 分享
发布于 2019-04-02 22:32
请问楼主大概审批了多久?我这边审批快一周了,还没收到正式offer
点赞 回复 分享
发布于 2019-04-01 08:32
牛逼炸了!
点赞 回复 分享
发布于 2019-03-13 00:25
我也是投的基础架构实习,二面之后让等结果,感觉凉了
点赞 回复 分享
发布于 2019-03-05 12:59
下午面头条后端,膜一下大佬
点赞 回复 分享
发布于 2019-03-05 10:05
这也太难了吧😂
点赞 回复 分享
发布于 2019-03-05 09:30
请问楼主面的什么岗?感觉好难的样子
点赞 回复 分享
发布于 2019-03-04 15:02
巨佬!
点赞 回复 分享
发布于 2019-03-04 14:11

相关推荐

2025-12-24 15:25
已编辑
门头沟学院 前端工程师
是腾讯的csig腾讯云,前天晚上九点突然打电话约面,激动的通宵学了一晚上,第二天状态很差改了今天(以后再也不通宵学习了)感觉自己浪费了面试官一个半小时单纯手写+场景,无八股无项目无算法,打击真的很大,全是在面试官提醒的情况下完成的,自己技术方面真的还是有待提高,实力匹配不上大厂和已经面试的两个公司完全不一样,很注重编码能力和解决问题的能力,然而我这两个方面都很薄弱,面试官人很好很耐心的等我写完题目,遇到瓶颈也会提醒我,写不出题也会很耐心的跟我讲解好感动,到最后面试结束还安慰我打算把下周最后一场面试面完之后就不面啦,如果能去实习还是很开心,但是最重要的还是好好努力提高技术以下是面经第一题//&nbsp;实现一个解析&nbsp;url&nbsp;参数的函数function&nbsp;parseUrl(urlStr)&nbsp;{//&nbsp;TODO}parseUrl('*********************************************');//&nbsp;返回&nbsp;{a:&nbsp;1,&nbsp;b:&nbsp;2,&nbsp;c:&nbsp;3}追问:在链接里见过什么部分?用&nbsp;hash&nbsp;路由的话放在哪第二题//&nbsp;考虑有一个异步任务要执行,返回&nbsp;Promise,这个任务可能会失败,请实现&nbsp;retry&nbsp;方法,返回新方法,可以在失败后自动重试指定的次数。/***&nbsp;异步任务重试*&nbsp;@param&nbsp;task&nbsp;要执行的异步任务*&nbsp;@param&nbsp;times&nbsp;需要重试的次数,默认为&nbsp;3&nbsp;次*/function&nbsp;retry(task,&nbsp;times&nbsp;=&nbsp;3)&nbsp;{//&nbsp;TODO:&nbsp;请实现}//&nbsp;---------------测试示例&nbsp;----------------//&nbsp;原方法const&nbsp;request&nbsp;=&nbsp;async&nbsp;(data)&nbsp;=&gt;&nbsp;{//&nbsp;模拟失败if&nbsp;(Math.random()&nbsp;&lt;&nbsp;0.7)&nbsp;{throw&nbsp;new&nbsp;Error('request&nbsp;failed');}const&nbsp;res&nbsp;=&nbsp;await&nbsp;fetch(&#39;https://jsonplaceholder.typicode.com/posts&#39;,&nbsp;{method:&nbsp;'POST',body:&nbsp;JSON.stringify(data),});return&nbsp;res.json();}//&nbsp;新的方法const&nbsp;requestWithRetry&nbsp;=&nbsp;retry(request);//&nbsp;使用async&nbsp;function&nbsp;run()&nbsp;{const&nbsp;res&nbsp;=&nbsp;await&nbsp;requestWithRetry({&nbsp;body:&nbsp;'content'&nbsp;});console.log(res);}run();第三题就是给&nbsp;retry&nbsp;函数添加类型注释,用到泛型第四题:在组件库中将&nbsp;Alert&nbsp;用&nbsp;api&nbsp;的形式实现(应该就是&nbsp;message&nbsp;这个组件)怎么渲染到一个浮层里而不是原地渲染出来
不知道怎么取名字_:技术这个东西,太杂了,而且要下功夫的
查看5道真题和解析
点赞 评论 收藏
分享
评论
19
205
分享

创作者周榜

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