前来还愿啦,一波面经给需要的人
双非渣硕一枚,主要使用的编程语言是c++,投递的岗位是后台开发。感谢牛客网提供了一个很好的交流平台,回馈一波。
春招
CVTE
一,二面
- 自我介绍
- 介绍一个自己最熟悉的项目
- 为什么采用tcp不用http?
- tcp分包处理
- 如何顺序处理接收的数据?
- protobuf2和3有什么区别?
- 找出字符串中第一个不重复的字符
- udp如何实现可靠传输
- 你还有什么想问的
hr面
- 给自己一二面的表现打一个分?为什么?
- 介绍一下家庭情况
- 你可能拒绝cvte的offer的原因
- 几个offer你选择,为什么
- 最让你印象深刻的事情
- 最讨厌什么人
- 喜欢工作的地点
- 如果被cvte拒绝,你觉得可能是什么原因
- 你还有什么想了解的
cvte是我春招拿到的一个offer,虽然最后拒了,但真的很感谢这家公司,是对我实力的一种肯定吧,有offer和没offer找工作的感觉真的差距很大。
阿里天猫(测试开发工程师)
一面
- 自我介绍
- 为什么想来阿里
- 介绍一下你的项目
- 你对数据库了解多少
- 索引的优化,动态索引
- 事务和锁你了解多少,这两个分别在什么情况下使用
- 反馈训练问题
- 从一堆商品中挑出不合格商品
- 对文字的分词处理
- 你有什么想问的
二面
- 自我介绍
- 介绍项目
- 项目中你做了哪些优化
- 你对测试了解多少
- 你以后想要就业的方向
- 对一个搜索引擎进行测试,你有什么测试案例和方法
- 进程和线程的区别
- 多线程中一个线程中任务已经完成,如何通知其他线程终止该任务
- 除了简历上写的,你还有哪些写代码的经历
阿里二面就挂了,感觉他们应该是想要找哥做智能测试相关的人,可是我算法和测试都不怎么了解。这里我想强调一下在找工作之前最好能确定下自己想要从事的岗位,不要想着每个岗位都投一遍,这样你会浪费很多机会。我的经历就是教训,这之后阿里就再也没有给过我面试的机会了。
网易互娱
- 自我介绍
- 为什么选择使用protobuf,为什么protobuf会比xml,json更好
- tcp分包粘包,为什么会粘包,如何分包,多个客户端连接如何防止集群崩溃
- rabbitmq是否可靠,消息队***认机制,如果一个数据包一直收不到ack确认,该如何处理,rabbitmq集群是否了解
- redis删除过期键,如何实现,redis和mem***的区别,redis集群是否了解
- mysql如何存储图片,为什么要采用mysql
- 解释一下caffe框架
- 发送100k的数据发送一次还是多次,解释发送窗口,拥塞窗口,接收窗口,MSS
- 阻塞和非阻塞的区别
- I/O复用,epoll有什么特点,epoll是阻塞还是非阻塞
- 探测一个端口不通可能的原因是什么
- 一个集群100万个端口处于time_wait,一百万个窗口处于连接状态是否正常
- 虚拟内存布局,malloc底层实现原理,当小于128时会调用什么函数,brk了解嘛,malloc 3G空间可以吗,mmap具体怎么分配内存的了解嘛
- 内核空间里有什么了解嘛,进程内核空间不够是否会占用用户空间
- 堆和栈有什么区别,在函数内部malloc变量是在堆还是在栈,如何定义一个类让它的变量只存储在栈上
- 进程和线程的区别,创建进程和线程的函数,fork实现原理,如果有一个2G的进程进行fork结果如何
- new和malloc的区别
- hash_map和map的区别
- 虚函数,虚拟继承,计算菱形继承各类的大小
- 一个序列,前后两个数相差1或-1,查找某个数k(k一定存在)
- 你还有什么想问的
这是我经历过时长最久的一场面试,一个半个小时,只有一面,最后拿到了offer。大厂的面试官实力都是不容置疑的,感觉不管是项目还是提问上都可以由浅入深把你了解个透,要把自己熟悉的项目和知识点理解透彻,至少要有几个方面显得比较突出。
网易杭研
一面
- 自我介绍
- 介绍一下你的项目,你项目从系统架构层次还有什么需要考虑的
- 对数据了解多少,存储引擎了解嘛,Innodb和MyIsam的区别
- 数据库隔离级别,选择哪个隔离级别应该从哪些方面考虑,主从同步了解嘛
- redis里的主从同步,备份方式,expire原理,主从同步时rdb文件过大,缓冲满了,该如何解决,lua脚本用过吗,redis集群了解嘛,槽坏了一个该怎么处理
- rabbitmq了解多少,使用过集群方式吗
- time_wait多久,keep-alive多久
- 你觉得除了上面提到的,你还比较熟悉哪些方面的知识
- 你有什么想问的
二面
- 自我介绍
- 介绍一下你的项目
- protobuf的序列化原理
- 介绍一下使用网络库的模型,ET和LT的区别,写一个线程池的伪代码
- 为什么会虚假唤醒
- http请求和响应头部,tcp四层模型,ARP原理,tcp连接过程图,介绍一下keep_alive,IP路由
- 介绍一下vector和map,在分布式情况下查找,什么时候vector会比map有优势
hr面
- 介绍下自己
- 介绍一下项目
- 你投了哪些公司
- 实习时间
- 你还有什么想问的
- 无序列表内容
因为那时候手上已经有了心仪的offer,面的也比较轻松,就当去杭州免费旅游一趟,最后拿到了offer。
腾讯
一面
- 自我介绍
- 介绍一下你的项目
- 使用的什么网络库
- 传输的数据结构
- protobuf如何实现序列化,底层机制
- 如果让你来实现序列化,你会怎么实现,需要注意哪些细节
- 预处理用到了哪些算法
- redis用***嘛
- c++中的以对象管理资源,谈谈理解
- 自己定义结构体放入map中,需要注意哪些问题
- 拷贝构造函数调用的三种情况
- linux系统中,后台运行一个程序,关闭终端后依旧能够运行,如何实现
- 归并排序
二面
- 自我介绍
- map底层实现,unordermap底层实现,hashtable了解多少,hashtable初始化空间(多少个桶),hashtable扩容处理,数据多打乱重hash?
- linux查看内存大小(free),top,多个进程处于time_wait状态是什么原因
- 客户端先发送100字节,再发送200字节,服务端read几次,有没有可能先200再100?
- http和https的区别,https是采用对称加密还是非对称加密
- 数据库优化了解多少
- rabbitmq时候可靠,消费者从消息队列读取信息,读取后崩溃了,该如何处理(ack)
- 100亿ip取最多的十个,500个单词和一篇文章,看单词是否都在文章中,500个短句和一篇文章,看短句是否在文章中
- 阅读过什么开源代码
- 你还有什么想问的
- 字符串比较
- LRUCache
三面
- 自我介绍
- 介绍项目
- 算法题:大数加法
- 生成随机数
三面应该是总监面,腾讯的面试比较曲折,我提前批投的比较晚,二面面完的时候就快到截止时间了,所以转成正式批,中间跨度比较长,最后在三面的时候挂了,没能去腾讯实习真的很可惜。
秋招
百度
一面
- 自我介绍
- 介绍项目
- 算法题:链表的归并排序,最长子序列
- 智力题:十瓶药一次找出污染的那瓶(常见题)
- 数据库中的内连接,外连接
- 你还有什么想问的吗
二面
- 自我介绍
- 介绍项目
- 位运算乘法
- 单例模式,手写,优劣
- 你还有什么想问的吗
三面
- 自我介绍
- 介绍实习项目
- 两个栈队列实现栈,栈容量限制为n,队列的最大容量达到2n
- 讲一次你失败的经历,如果再给你机会不会怎么做
- 讲讲你的缺点
- 你觉得自己有哪些优势
- 给了道场景问个人想法
- 你还有什么想要问的
时间有点久了有些问题不记得了,不过总结来说百度侧重点在算法,要能手撕代码,撕不出来大概率GG,三 面面完最后在排序的时候挂了,牛逼的人太多,这是秋招的真实想法。
携程
- 自我介绍
- 介绍项目
- tcp和udp的区别
- 手上有什么offer
- 介绍了下携程的业务
面试时长只有20分钟,找工作这么久就携程和华为最玄学,20 分钟不知道他们能了解到什么,开始以为只是劝退,最后还给了offer。。。。。。。
腾讯
一,二面
- 自我介绍
- 介绍项目
- new和malloc有什么区别
- c++四个类型转换
- 虚函数介绍
- 构造函数和析构函数能不能是虚函数
- vim三种编辑模式
- vim中查找字符串
- tcp中四种定时器
- 算法题:链表中当前节点插入一个节点(不给头指针)
三,四面(面委)
- 自我介绍
- 做题,大概是sizeof,字符类,继承类的题目
- 写一个string类
- 实现Linux的类似crontab的功能
- 介绍项目
- violate关键字
- 类中的静态函数
- 一个不规则图形,如何判断点实在内部还是外部
- 求二叉树中三个节点的最近公共祖先
hr面
- 自我介绍
- 实习过程中令你映象深刻的一件事
- 意向工作城市
- 家乡,家人介绍
- 拿了什么offer
- 手上的offer怎么选择,有没有想去的
- 为什么选择互联网
- 为什么选择现在的专业
- 未来有什么规划
- 你还有什么想问的
腾讯的hr小姐姐是真的好,必须点个赞。腾讯的跨度比较长,最后拿到了offer,也正式圆满的结束了秋招。
以上就是我个人春招和秋招的一些经历,有些面试因为没能及时记录,时间长了记不得了。
#面经##腾讯##网易互娱##百度##C++工程师##秋招##携程#