美团后台开发面经
美团的后台开发主要是Java,我本人是C++,但是也走完了面试流程,并给了offer,后面让转Java。
一面(58min)
预热阶段
1、自我介绍
2、自己的三个优点与缺点
(一)C++基础(简单问了下)
1、面向对象的语言的特点
2、在项目中对上述特性的应用实例
(二)计算机网络
1、TCP建立连接的三次握手
2、为什么是三次,不是两次或者四次?
3、TCP与UDP的区别
4、TCP的“粘包”与“分包”
5、TCP与UDP中的攻击
6、浏览器中输入“www.baidu.com” 后,大致会经历什么过程
7、IO模型有哪几种
8、讲讲select和epoll的区别
9、select轮训时间为多久?默认的
10、select的底层数据结构是什么
(三)操作系统
1、用户态与内核态的交互
2、内存、高速缓存与CPU之间的数据交互
3、多核CPU的不同核心,分别去访问内存中的一个数据(如x=1),A核对x+1后x=2,这时B核再操作,怎么保证B核取到最新值。
(四)数据库
1、事务的特性
2、数据库的三大范式
3、设计数据库表结构的时候需要考虑什么
4、delete、drop与truncate的区别
(五)其他
1、项目中为何要用Master-Worker模型,进行了深入的交流
2、怎么学习新技术的?
3、最近在学习什么?选取其中具体一个章节讲一讲?
4、反问
一面面试官人比较nice,整个过程气氛比较活跃,有些问题我瞎说一通,说完他就笑我,说我说的和他问的是两个东西,哈哈哈。有些我确实是不会,就直接说不会,正在系统学习,他也没为难我,面完很快就接到二面通知。感觉一面主要还是在问基础,会的问题尽量说的足够详细,或者把相关的问题也说一遍,不会的尽量坦诚一点。
二面(36min)
先自我介绍,然后详细聊了项目经历中的一个项目,大概花了20min,之后再问了些基础的东西。
(一)C++简单问问
1、STL有用过哪些?讲讲vector
2、一个C或者C++的程序,一般的内存分配的过程是怎么样的?
(二)计算机网络
TCP或者UDP的写数据过程:执行“write”后,底层的流程是什么样的?
(三)操作系统
1、I/O复用:讲讲select与epoll的具体区别
2、多进程的程序,栈内存的分配是什么样的?栈中一般放了一些什么
(四)其他
1、对Java了解吗?C++与Java的区别
2、愿意转Java吗
3、部门的具体介绍
4、什么时候开学?实习时间?
5、反问
我问了:程序员这个行业的职业现状和职业规划建议。二面是技术leader,回答的还是比较不错,分析了行业现状,给了职业规划建议。
二面是技术leader面试,感觉更加偏重与技术的应用,结合具体的项目,问了很多项目的细节,以及可能存在的问题,具体得解决方案。
三面(20min)
三面是HR面,面完之后直接OC
1、有哪些面试机会?怎么选择?
2、老家是哪的?
3、对美团了解吗?
4、学校何时开学?
5、能够实习多久?
6、如果确定一定会来美团才给发offer(送命题)
7、直接开始谈实习待遇了
美团的整个流程走的还是很快的吧,这也算是我面试的公司中面试感觉最好的吧,整个过程比较轻松,面试官也比较nice。
以上经验仅供参考,祝各位面试顺利,早日喜提offer。
#美团点评后台开发实习##美团##实习##C++工程师##面经#