作者:谜底不系扣
来源:牛客网
昨天晚上收到了阿里蚂蚁金服的实习Offer,非常开心,
开心之余,趁着兴奋劲还没过,回馈同学们一波面经。
一 总览
实习经历一句话总览:内推被刷1家,笔试挂2家、面试挂2家,面试进行中2家,拿到offer5家
方向:Java研发工程师
投递公司及结果总览:
腾讯(内推没过;PS.去年10月被内推一次,1没准备2紧张3被C++面试官给问懵了,面试评价应该很低,不知道有没有关系)
360(1面挂)
深信服(1面挂,校园招聘)
网易(AC2.7,笔试挂)
今日头条(笔试挂)
美团(待面试,应该挂了)
滴滴(2面实习offer,php不给换岗当场拒了)
华为(2面实习offer,校园招聘)
中兴(1面sp正式offer,校园招聘)
链家网(4面实习offer)
阿里(3面实习offer)
蘑菇街(等2面中)
(去哪、携程、京东、百度没投)
二 干货分享
分享:中兴、华为、阿里、滴滴、链家网、蘑菇街、360、深信服等8家公司的面试题目
中兴(北京 C++ 正式SP 校园招聘)
技术面(40mins)
0.手写单例模式
1.网络编程的accept和connect,
2,迭代器怎么用,手写代码
3.hashmap和hashtable的区别
4,python用到什么程度
5.项目描述,各种巴拉巴拉 问题:大数据平台如何处理数据的,集群生态环境,内存溢出这么办等,问了好久。
6.当前国际形势,萨德,如何看待中美关系
7.学生工作,曾组织的一项活动
8.工作地点,北京,燕郊你能接受吗
9.个人描述,喜欢挑战
10.互联网公司和通讯公司看法
HR面(30mins):
这次准确说是现场签约
0.介绍下北京分公司,地理位置,环境
1.研究方向,有线(C++方向)
2.工作时间 朝九晚五
3.sp待遇
华为(北京 可选岗 实习offer 校园招聘)
技术面(40mins)
0.平衡二叉树
1.哈夫曼树
2.KMP算法描述
3.进程间通信的几种方式
4.cache的作用
5.项目的描述
6.华为比赛的事
压力面(3人一组群面)
0.自我介绍
1.对公司的理解
2.各自的优缺点 各说3个
3.你们觉得你们谁能被录取
4.有什么问题
阿里(上海蚂蚁电话 JAVA研发 实习offer)
技术面1面(90mins)
0.本科实习情况,都看过什么书
1.final(变量、方法、类) finally finalize
2.try catch finally 可不可以没有catch(try return,finally return)
static 关键字修饰的方法占不占内存,方法区的内存
3.垃圾收机制简述,堆,栈,如何判断对象已死,有环root链如何找到了?
4.都上过什么课,分布式操作系统、数据挖掘、网络协议(开始问分布式系统)
5.负载均衡怎么实现
6.负载均衡里添加新的结点如何发现,局域网下 非局域网下
7.都做过什么项目,项目的亮点
8.如果我们要提供用户的消费信息做行为预测,如何能集成你们的系统里
9.mapreduce流程
10.如何保证reduce接受的数据没有丢失,数据如何去重
11.项目的难点,亮点
12.对他问题,项目组的研究方向
技术面2面(45mins)
当时打电话都10点了,感觉面试官比较着急,
上来直接问你会啥,你会啥我问你啥,都给我整蒙圈了
(我就最后提了一嘴数据库,就一直问我数据库。。。)
0.mysql 数据库底层如何实现
1.B+树和B树的区别
2.插入节点怎么分裂
3.索引有哪些,用性别做联合索引有没有效果
4.hashmap的实现原理 采用什么方法能保证每个bucket中的数据更均匀
5.讲讲的项目(说完,他就说了个好)
6.问面试官几个通用问题
HR面(23mins,2面结束后第二天上午)
1.介绍一下自己的项目
2.项目中遇到的难点,你是如何解决的
3.项目中遇到问题,团队是如何处理的,平时都是怎么学习的
4.对前两个面试官印象怎么样
5.主动介绍前两面面试官都是谁,叫什么,都是做什么的
6.介绍一下部门都是做什么的
7.前两面面试官问你的问题你有没有没答上来的,下去之后查了吗,结果
8.有什么问题问我的:什么时候发offer
滴滴
(北京现场 PHP 实习offer)
0.讲项目
1.手写单例模式
2.hashmap底层实现原理,解决冲突的方式,还有没有其他方式(全域哈希)
3.设计数据库表
4.linux如何查看进程号
5.TCP四次挥手
6.还有好多,不记得了
面完问我愿不愿意转PHP,我说不愿意,能不能换岗,说可能不行,就算了
当时上午面滴滴,下午面链家网,下午面完链家网发现上午面的啥基本都忘了
链家网(北京现场 JAVA 实习offer)
技术面1面(40mins)
0.手写java的8种基本数据类型
1.4种方法修饰符
2.重写重载,重载返回类型不一样,其他都一样可以不?(不可以)
3.用过哪些设计模式,手写单例
4.jvm的垃圾回收机制
5.如何加快gc的速度 快速判断对象生死
6.tcpip的四次挥手 几种状态,讲讲timewait和closewait
7.拥瑟避免实现算法
8.linux几个常用命令
9.如何实现二叉树的广度优先遍历
技术面2面(60mins)
0.说说项目
1.手写直接插入排序
2.mysql底层实现原理
3.mysql锁机制
4.线程安全 java里面的实现方式
5.hadhmap concurrenthashmap区别 synchronizedhashmap如何实现,之间的区别(锁的粒度不同)
6.hashmap存节点 怎么存
7.sheel 如何查询a应用的当前id号(不会sheel)
8.直接写一个java程序,统计IP地址的次数
9.手写sql语句
10.设计模式,装饰者模式画图
11.springmvc的流程 一个请求来了之后如何处理(handler链)
12.注解、反射、IOC理解
13.mybatis说一说
综合面试3面(30mins)
0.假设业务情形 如何计算留存率、日活、月活等
1.给15 16年的数据 预测17年的 写出公式
2.自己的项目团队 如何团队协作
3.项目解决的什么问题 用到了哪些技术
4.平时看些什么书,技术 综合
5.怎么预防bug 日志 jvm异常信息 如何找问题的根源(统计表格)
HR面(20mins)
0.你找工作最看重什么
1.毕业有没有兴趣落在链家
2.说福利待遇
360
(视频1面 手机OS 挂)
0.拿着简历一直看(感觉跟他部门不匹配)
1.讲项目,不断打断你
2.hadoop生态说一说
3.mapreduce原理,partion发生在什么阶段
4.数据库的连接(内连接 外链接),给两个表和字段,写sql
5.Linux常用命令说一说
6.TCPIP协议,熟悉的说一说
我从应用层说到数据链路层(HTTP SNMP POP3 TELNET FTP TCP UDP ICMP IP ARP RARP)细节也都答了一些,最后
面试官问我TELNET底层用什么实现的,我说TCP。又问我TELNET是协议吗?我说是啊,默认23端口。他又重复了一遍
问Telnet是协议吗,不是命令吗?我顿时感觉自己错了,说好像不是协议是命令吧。他说,你刚才说Telnet是协议还给我干一楞。呵呵。
Telnet不是协议吗?
深信服
(现场面 C++ 挂 校园招聘)
0.结构体和共用体区别
1.strcpy memcpy什么玩意的
2.Linux:fork和wait,有什么作用
3.Linux如何创建守护进程 不会
4.什么是僵尸进程,如何产生,回收方法?
5.linux应用层常见的锁?
6.会写安卓吗?
7.linux进程间通信方式 多个socket并发通信,同步异步阻塞非阻塞
8.算法题:在一个字符串中找出第一个字符出现的位置,保证高效
9.算法题:N级楼梯,一次一步或两步
蘑菇街
(刚视频面完1面)
0.自我介绍
1.项目,细节
2.SPringmvc 注解 流程
3.java内存模型
4.写一个简单的程序
5.线程池,数据库连接池 druid
6.集合框架,线程安全的,对比
7.有什么问题问的
三 总结
说几个我感触最深的学习方法吧
1、知识点系统化:最好看书,记电子笔记或者博客。
2、对比学习:知识点间对比,面试题的异中求同
3、拔高:研究岗位需求,学习更深的知识。比如就后台开发的微服务框架,高并发架构,缓存服务器,消息中间件,数据库连接池原理,分布式服务架构,非阻塞通信(netty),多线程等深层次的原理。
4、实践:实践出真知。