投递的客户端岗位,面试流程从7月6号到7月21号,已意向;
一面:
1、自我介绍
2、C++11的新特性?
3、lambda表达式使用时需要注意什么?
4、模板了解吗?模板的优缺点?
5、介绍多态特性?如何查找定位虚函数表?如何找到对应的虚函数?
6、编译过程的详细步骤?
7、介绍智能指针?share_ptr 和 weak_ptr 的实现原理?
8、代码题:查找完全二叉树的最后一个节点;要求复杂度小于O(n);
思路:二分思路,根据左右子树最左侧路径的深度进行二分,判断到最后一个节点;
9、智力题:一个不规则的硬币,正面概率为p!=0.5,AB两人抛硬币,设计规则,使游戏公平;
思路:直接两人分别抛指定次数,正面次数多的赢;
10、有什么想问的:
1、部门具体职责?对图形图像要求? 答:特效部门,图形知识加分,可以给你推介到其他部门;
2、面试具体情况?下一步通知?感觉面试对我不太满意,答到一到三天发感谢信;
二面:
1、介绍下epoll?ET、LT?内部实现?epoll中为啥使用红黑树?
2、HTTP协议处理是自己写的吗?是纯字符串处理吗?
3、线程池怎么创建的?是模板类吗?看什么书?是muduo吗?
4、线程池模板类是不是和协议处理类有耦合?如何利用线程池处理多种协议?得加中间层;
5、日志线程怎么做的?消息队列加锁吗?取一个读一个的处理方式有没有性能问题?
6、move移动语义了解吗?A b = std::move(a); 的底层原理?
7、一个类A的两个对象a和b,里面有个int成员,A b = std::move(a); 操作后int型会变化吗?(答得不好)
8、resize 和 reserve 的区别?new 和 malloc 的区别?
9、make_shared 和 make_unique? 为什么要使用这两个方法?
10、有没有自定义过智能指针的deleter?
11、vector的动态扩容?设计的时候为啥没有动态缩容的机制?
12、类中定义的带参数的构造函数后,默认就不构造无参构造函数了,是出于什么原因?
13、explicit 和 implicit 关键字是干嘛的?
14、介绍虚拟内存?为什么要用虚拟内存?虚拟内存归根到底有什么作用?
15、模板类?定义和实现能写到一个.h文件中吗,为什么?可以 include .cpp 吗?
16、生成模板实例时,每个用到模板类的编译文件中都有相同的代码块,不啰嗦吗?编译器怎么解决这个问题?
17、代码题:01背包(没做过,想了好久,申请换题,面试官同意,换成了跳台阶,笑哭)
18、有什么想问的?
1、图形算法不了解,客户端纯开发岗位也可以吗?答:也有,也需要些纯开发人员,图形也可以边干边学;
2、第一道代码题没想出来,影响大不大?答:常有的事,面试官说自己算法也不好,以前都是出二分的题;
三面:
1、自我介绍?
2、线程有大小限制吗?线程池是完全自己写的吗?
3、epoll的内部机制?详细说一下;
4、结合select说一说用户态和内核态的转换过程?
5、生产者消费者模型?设计时怎么样兼顾性能和安全性?
6、单生产者、单消费者情况下,如何实现无锁的线程安全机制?
7、运行时多态的机制,特性?dynamic_cast<>底层原理?
8、频繁new、delete导致内存碎片,现在需要自己创建一个内存池,使用何种策略避免内存碎片问题?
9、给了一个继承结构的虚析构函数程序,判断析构时的顺序和输出内容;
10、模板了解吗?可以将模板的声明和定义写在不同的文件中吗?为什么?
11、模板的特例化了解吗?
12、对工作条件、工作内容的诉求和期望?
13、写代码吧,给一个有固定位置野怪的坐标地图,给一个英雄坐标,快速求距离英雄最近的野怪位置;
(由内向外逐层遍历效率低,还有更好的办法没?)面试官提示建立二维索引,没写出来;
14、有什么想问的?
1、渲染引擎研发岗的具体职责? 主要是研发,不太要求过多的图形学知识,主要负责开发图形运算渲染的逻辑框架;
2、对新人的培养方案? 很全面,一对一导师,有丰富的各岗位课程,试用期会进行针对性的学习;
3、代码题的思路? 这是典型的一个图形求距离的算法,可以利用四叉树、八叉树等数据结构实现;
4、代码题没做出来,可以再出一道吗? 面试官笑而不语,说他的问题问完了;
HR面:
1、自我介绍
2、为什么选择字节?
3、对其他互联网大厂有什么看法?
4、你觉得前几面的感受怎么样?
5、你觉得前面面试官对你的评价如何?优点?缺点?
6、你觉得你哪里最能打动面试官?
7、研三师兄那边有没有听到字节不尽人意的地方?
8、对工作岗位、工作内容的诉求?打算?期许?
9、华为的比赛有没有直通绿卡?为什么不选择华为?
10、比赛时遇到的最大困难?
11、比赛时如何合作?如何分配时间?谁来主导?
12、比赛时有什么遗憾的地方?吸取的教训?
13、问题?
1、从北京转到杭州,对面试有没有影响啊? 没有,都是多媒体部门,统一招聘,技术面面试官不管投递的哪个城市;
2、后续的具体流程?后续会和二三面面试官进行综合评定,约一周时间会发意向书或感谢信,如果通过的话九月份会商讨薪资和入职事项;
六天后收到字节的意向书,真的很感激字节跳动了,
因为投递得比较早,很多问题答得其实并不好,尤其是二三面的代码题,都没撕出来竟然还让我过了。。
字节这几位面试官给我的感受是,问的问题多是引导推导型的问题,不会按照套路问一些可以背书的常见面试题,
他们貌似更注重面试者思考问题的方式,能不能把知识融会贯通;比如二面的时候,面试官就问了好多类似这样的问题:
C++中有一个机制,是balabala,但是却没有对应的另一个机制,C++库的作者应该比我们都厉害得多,那他为什么不实现一个这样的机制呢?你有没有考虑过?
我个人也非常认同这种面试方式,确实可以在跟面试官的沟通交流中学习到新的知识,受益匪浅;
如果面经涉及到了公司隐私,还请麻烦联系我,我会尽快删帖;
全部评论
(2) 回帖