777牌面筋
春招实习总共投了四家公司:阿里、美团、腾讯、字节。
字节面最早,挂在第三面。美团、腾讯、阿里顺利走完了所有流程。
蚂蚁财富,数字金融线体验技术部。
日期 | 流程 |
2021/03/17 周三 | 投简历 |
2021/03/23 周二晚上 | 技术一面 |
2021/03/24 周三下午 | 通知一面通过,约二面时间 |
2021/03/26 周五下午 | 技术二面 |
2021/03/29 周一晚上 | HR 约面试时间 |
2021/03/30 周二上午 | HR 面试 |
2021/04/11 周日晚上 | 收到意向书 |
2021/04/16 周五下午 | 和 HR 约入职时间 |
2021/04/27 周二下午 | 入职小管家通知体检时间 |
已投,3月23号一面。
一面问了1h20min,就离谱,太久啦,面完嘴皮子都说干了。希望有个二面,保佑🙏。
3月24号傍晚通知过了一面,约了二面时间。
3月26号下午五点二面,只面半小时,问了下面试官为什么二面这么短,回答是一面面得够久了二面就不用问太多了。晚上学长帮忙问了一下,二面通过了,等下周 hr 约面,许愿 hr 面顺利呀 🎋
另外阿里 hr 面试之前记得完成素质测评,素质测评包括10个阅读理解题,10个图表分析题,10个图形推理题,以及98个性格测试题。
吐槽一下性格测试题有些题压根没法选还非要选OTZ。
3月29号晚上十点 hr 打电话过来约面试时间,惊了为什么 hr 这么晚也还在上班。
3月30号上午 hr 面试,大概面了20min,聊了聊实习经历,学习状态,未来发展意向这些常规问题,晚上问了一下内推老哥,hr 那边过了,但是阿里蚂蚁这边流程比较长,需要等一到两周发意向书,希望一切顺利,四月可以平安上岸。
🙏
4月11号晚上11点39分收到意向书,本来打算睡觉了,睡前看一眼手机给我吓醒了,终于上岸啦。
4月16号下午和 HR 约了入职时间,谈了薪资,今年阿里给实习生好多喔,等小管家约体检,我要开始清淡饮食好好睡觉了> <。
项目
能稍微详细地讲一下你之前做过的安卓的项目,你从中主要做了哪些东西,然后具体 app 的整体架构你都可以讲一下。
刚讲到你接手这个项目,发现这个代码比较乱嘛,具体是指哪些地方比较乱呢,对此有没有做一些改造或者重构 呢。
正常一个 APP 它的架构应该是由哪些部分组成呢?或者说是用什么样的模式去设计它?
你刚提到你做了一些功能嘛,你在实现这些功能的时候,有没有遇到一些比较有挑战性的技术难点呢?
那除了自定义 View 的这个问题,你还有没有遇到一些其他的问题?
你新增了本地化的信息存储和管理是吧,你计划是采用什么样的方法做的,然后你的考量是什么呢?
安卓
你刚刚提到了你有事件的处理对吧,那安卓的view之间是会有重叠的,它这个 View之 间的手势的事件处理和传递是怎么样的一个逻辑呢?
view 之间的传递是通过哪些方法呢,是怎么进行消费的,比如说有 view 盖在 viewgroup 上了,这个事件他是怎么去消费和处理的。
事件通过这些方法传递给 view 和 viewgroup,那它要怎么去做这个决策呢?要怎么消费呢?不消费和消费是怎么调用的?
比如说 dispatchtouchevent,是 return true 呢还是 return false 呢然后怎么去执行,如果消费的话和不消费的话会怎么样,会怎么做传递,完整的一个消息的量 对吧。
你刚刚说你实现了 onDraw,onDraw 你是用什么绘制的呢,那你实现这个方法的时候有没有遇到一些性能问题,对性能这块有没有一些考虑呢。
那你存储这块儿一定是要用数据库去存储吗?那其他方案可不可以实现呢?
安卓上的 classloader 这种机制你了解吗?在安卓上他是一个什么样的机制,有哪些 classloader,都是干嘛用的?
像大型的 APP 比如淘宝支付宝,和安卓原生工程构件的比较小的 APP 有什么区别,这一块儿你有了解过吗,主要的区别。
架构上有区别吗,还是说会一样呢?
安卓上的插件化原理有了解过吗?
Java
你这边是怎么理解面向对象的?像安卓一般都是 Java 对不对,那 Java 是一个面向对象的语言,你个人是怎么理解的,面向对象有哪些特性,在日常开发中,你可以举一个小的案例来说说怎么去应用,怎么利用这些去实现一些功能。
那么面向对象的编程过程中有哪些原则呢?
你讲一讲开闭原则吧
Java 中有哪些集合类,有哪些核心的接口,他们之间是怎么样的一个关系?
那你展开讲一讲 HashMap?
你刚刚有提到哈希,那哈希的原理是什么呀?哈希能用来干嘛呢?
Java 里的对象,在内存中是个什么样的形态,内存中是以什么样的数据结构去存储的呢?
内存中的数据结构有哪些呢?比如说堆栈
堆和栈的差别在哪里呢,为什么会把实例和对象放在堆里,而把一些方法、局部变量放到栈里呢?
计算机网络
项目中也有针对通信协议这块,也做过一些功能是吧,能大概说一下正常的一次网络请求,从 client 到 server,有哪些步骤,你可以按照你自己的理解,和你可以说到的程度,去描述一下。
那么 TCP 的建立连接需要一些什么步骤?
一个通信协议,它的主要构成有哪些呢?
你刚刚提到了 get 和 post 的区别是 get 没有请求体,那么除了这个区别之外,还有其他的区别吗?
https 和 http
有哪些差别呢
操作系统
进程和线程之间的关系
开放性问题
北京首都机场,白天一小时内飞在机场上空的飞机大概有多少,你可以按照你的思维去想一下这个推导过程。
算法
你这块儿日常工作中有用过哪些吗?简单点像是排序这种都用过吗?讲一讲
那快排的时间复杂度和空间复杂度是什么样的
那它最坏的空间复杂度是多少呢,最差的情况下
实习
之前实习的话对上班时间这块儿有过压力吗
其他
平时有没有什么爱好呢
你投的是安卓嘛,你对后面的技术上、工作上、或者是业务上有没有一些想法和规划呢?
你简历上提到过你参加过18年的美国大学生数学建模大赛?
反问
你们是什么部门?
一般做一些什么业务呢?
实习生进来会参与到实际业务的开发吗?
你们部门是996吗?加班多吗?
总共有几轮面试呢
实习生一周的到岗时间卡的很死吗?
实习
实习主要做了一些什么事情,端上做了一些什么事情,有没有做过一些业务功能
你能讲一个你做过这个功能吗,实习里边
项目
你觉得你在这个项目里面学到了什么呢
安卓方面你有什么样的一些小项目
实现离线和在线登录同时自动后台将数据同步,怎么实现的
那我觉得跟一个问题啊,你在同步过程中,比如说断网了怎么办,
你这个传输文件有多大呀,一般。你这个是一张一张传的话,还是说是打 包之后再传。对啊,那你这个理论是怎么设计啊,里边是有线程池呢?还是这个列呢,还是怎么样做的呀比如说,你这个一家大小啊
那你就是怎么实现的,具体代码是怎么去写的
比如说你在这个上传的过程中,这个时候可能涉及到耗CPU嘛,怎么能保证你的前端的这个页面不卡顿
我看到你用自定义 View 实现了一个功能是吧,如何自定义 View 呢
我看你还有参加了一个物联网竞赛,主要做了什么呢
你有用到一个图表库对吗,那你在用它的时候,有没有去研究过一些安卓在绘图上面的原理呢
安卓
那你在做这个安卓的过程中有没有遇到过一些性能上的问题
那有没有遇到过OOM
如果安卓的话呢,如果你在主线程做完了以后,你要同步给这个线程,如何同步的
那你看过这个的源代码吗,你从中学到什么
算法
好,我问你一道算法啊,比如说一个二叉树给定了前序遍历和中序遍历,如何重建这颗二叉树?
反问
你们招聘一个实习生更看重的是他的一些什么方面的能力呢
你先简单做个自我介绍吧
我看你之前的那个实习经历是在百度,上海还是北京呢
好的,那要么你先谈谈你在百度的这个经历吧,然后你在百度半年左右的时间,对他们整体公司的感觉,以及在公司里边实习的这个感受是怎么样的
OK,那你觉得这段实习经历,给你带来最大的帮助是什么
那你刚刚有提到,在百度这边实习,其实整体来说工作节奏不紧张,你对未来自己工作的那个状态的设想,大概是怎么样的,你希望是有一个什么样的工作状态
你平时除了那个学习之外,主要的时间都用来干嘛呢
我想更多了解一下你现在整个学习的状态是怎么样的,你觉得现在这个阶段最主要的挑战是什么呢
行,那你现在家庭的情况是怎么样的,就是老家在哪里,您未来希望在哪定居,以及有没有对象呢
那你这边有没有什么问题想和我交流一下的
点评事业部
日期 | 流程 |
2021/03/11 周四 | 投简历 |
2021/03/16 周二下午 | 约一面时间 |
2021/03/22 周一下午 | 技术一面 |
2021/03/26 周五下午 | 通知一面通过,约二面时间 |
2021/03/30 周二下午 | 技术二面 |
2021/04/06 周二下午 | 通知二面通过,约三面时间 |
2021/04/08 周四上午 | 技术三面 |
2021/04/08 周四下午 | offer call |
2021/04/09 周五下午 | offer mail |
已投,3月22号电话一面。
美团是找学长内推的,面完当天晚上学长那边就收到了一面通过的消息,但是 hr 还没打电话过来约二面,估计是春招人比较多比较忙,感觉整个面试流程还是会拉挺长的,要有耐心。
3月26号通知一面通过,约了3月30号二面。
3月30号下午二面,面试官很厉害,聊得非常开心,我觉得美团的面试体验真的超好!整个二面没有专门去问基础知识点,都是围绕着项目展开的,后面直接当场翻我 Github 和博客问了些问题。
4月8号上午三面,面试官感觉是老大,问俩题就喝一口保温杯里的茶哈哈哈哈,聊得很开心,算法题不难但是要我不停优化,想不出更优解直说就行啦,面试官不为难人。反问环节问了业务,给我讲得很详细,还介绍了美团公司的架构什么的,我还反问了美团是不是 996,他说是 10/9/5,年轻人都起不来床哈哈哈哈。另外美团相比于其他公司有一个优惠政策,实习时长是会算到工龄里的,这个我觉得蛮不错滴。
美团面试很慢,一周面一轮,但是给 offer 飞快,4月8号上午三面结束,下午就 offer call,隔天就收到正式邮件啦。
项目相关
想问一下哪个项目你比较熟悉一些,介绍项目背景、功能点、你解决的一些问题,你描述一下。
你在这个上面哪里花时间比较多,就是你觉得在【怎么用】上面,还是说,在【解决这个问题】上面,花的时间会比较多啊?
登录做了自动登录吗?
登录用户名密码是在后台校验的对吗?那你输入的用户名和密码,就是你有做加密处理吗?
环信视频语音的 sdk,这个视频语音具体实现的原理你知道不,说一说。
Android
你在自定义 View 的时候,那几个方法里,你觉得像 onMeasure 里这个测量方法,适合做什么,不适合做什么,你有了解吗
那你了解安卓里面,他那个事件的传递的方式吗
事件的传递和处理涉及到了哪些方法你知道吗
android 里面 fragment,fragment 的生命周期说一说
Java
你能跟我说一说 Java 里面内部静态类的作用是什么吗
你觉得为什么写一个单例模式的时候要用一个静态类呢?
你觉得像成员变量、成员方法、然后静态类,这些类在加载的时候,顺序是什么样的
数据库
你不是用到数据库吗,你这个数据库的话,如果有版本冲突的话,那你解决冲突的策略是什么
计网
那你发一个网络请求的时候,header 里大概有哪些信息,请求头部里有哪些信息
反问
面试的部门是不是点评事业部
实习生进来的话可以参与到项目的业务开发对吗
美团这边总共是几面
部门是负责一些什么业务呢
笔试和上轮面试
你还记得你笔试的情况吗
你觉得你笔试的问题出在哪里
你对你的第一次面试,有没有什么比较印象深刻的问题
有没有什么你觉得回答得不好的问题
安卓
你理解的自定义 View 是什么样子的
除了你这种场景之外,还有什么样的场景会去使用到呢
我看到你简历上提到了使用 Glide 可以减少内存开销,避免出现 OOM,那我想问一下你实际上有碰到过 OOM 的问题吗
Glide 它除了会避免 OOM,还有什么比较有优势的地方
你有没有觉得它使用起来比较好用,比较方便
框架源码
其实我看到你简历上用到了不少第三方库,那么你是怎么知道要使用这些库的
那除了需求驱使的情况外,你平时会自己去了解一些第三方库吗
这些第三方库你在实际使用中会不会遇到一些问题,然后如果遇到问题是怎么解决的呢
你平时会去看一些源码吗,看的比较多的是什么源码呢
你觉得使用 okhttp 有一些什么好处呢
okhttp 最大的特点是什么,为什么要这么设计呢
你有没有自己实际去做过网络请求呢
你自己实现一个网络请求的时候,是怎么去实现的
那你自己实现一个网络请求,和使用 okhttp 去完成一个网络请求,区别在哪呢
杂
我想了解一下,你是因为你实验室的项目 需要安卓才做安卓开发,还是你自己想做呢
那你为什么会想做安卓
你刚才提到会看一些公众号,你觉得有哪些不错的公众号呢
那你有没有遇到过一些,比如网上找不到答案的问题
我看你 Github 上有很多仓库啊,都是干什么的