2019年字节实习面经
一面:
第一面一上来先让我自我介绍,说说自我感觉最好的项目。
- 函数计算是什么?
- 函数计算的缺点是什么?追问
- python 切片的细节
- 装饰器的用法,手写计算函数调用时间的装饰器,如果函数有返回值怎么得到,闭包
- python多继承问题 方法的解析顺序 解析父类的同一个函数
- GIL全局解释器锁是什么 怎么来的 有什么问题
- gevent相关
- is和==的区别
- 如何判别一个变量的类型 哪些方式 有什么区别
- 元类型 知道么?
- 深拷贝浅拷贝
- 和** 是什么 怎么用
- python的GC 说一下
- python和java的区别 说说你的理解
- java和python的多线程的区别
- java有多继承么 python的多继承
- xrange 和range
算法题: - 最长回文子串
直接让我先写暴力解,没问马拉车。。写完暴力解的时候想说优化的事情结果就问下一题了。 - 地图上有若干个点,怎样得到某个点到达某个点的所有的换乘路线
这题我是没咋明白,感觉信息有点少,就问是不是单源最短路径问题,迪杰斯特拉算法。。。然后问到最后面试官给了一个详细的情景:如果两个点之间是不可达的各自在一个不相联通的环内怎么告诉用户不可达
我回答并查集。。
有什么问题问他。。
二面:
首先聊项目,主要是聊之前在图森的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.其他的问题目前想不起来了。。。
算法题:
- 给你一个2G的电脑 10G的文本 文本有1k行的字符串,要求输出所有互为逆序的字符串的组合
最后问我 实习时间 想不想去北京实习
然后晚上就是hr面大概面了十几分钟吧:
1.前面几轮面试的感觉怎么样?
2.为什么投递这个岗位?
3.实习的时间是多久
4.从哪里得知内推的消息
5.和我聊了聊实习的工资和补贴
6.建议我先去北京实习 因为我投的是上海的部门
7.说后面就是offer审批流程
8 加微信等结果