关于我把美团offer给拒了
4.3更:起因:面试官问入职时间。经过:权衡了各项因素。结果:把offer拒了,把hc留给其他同学,不过面试官人真的很nice,感觉有些对不起他
3.22下午更:和HR打电话沟通了回复时间,系统发出不能修改,HR建议先接了,如果有更好的后期提前打招呼沟通即可
3.22上午更:收到Offer了,要求3.24前回复,其他公司还在流程中,考虑要不要接
- 之前实习是用Android的,不过部门只缺iOS,面试官说不影响,实习生有充分的时间学习;美团有自研的双端统一架构:依赖容器化,但是底层还是Naive的,所以还是要掌握基础,容器化只是工具
- 一面纯八股;二面更多些开放式的问题,没有标准答案,更看重思维与知识广度。
- 17号二面(周五),20号下午(周一)接到HR电话,聊了下入职时间、还在准备哪些公司等问题
一面 45mins
面试官是iOS的,所以只问了项目、八股
实习
- 自我介绍
- 发布面板重构做了什么内容?过程中如何避免bug?
- Kotlin是什么时候接触的?比Java好在哪?
八股
- HTTP和HTTPS的区别,HTTPS加密方式
- HTTP方法
- GET和POST的区别
- OSI七层协议每一层的作用
- TCP三次握手,四次挥手,两次握手行不行,三次握手的数据包丢失分别会发生什么
- 进程与线程
- 死锁产生的原因,如何避免,开发过程中有遇到过死锁吗?(过程中口误说了进程的死锁,面试官马上问死锁是线程的还是进程的
- 堆、栈、方法区分别存储什么内容?
- 面向对象和面向过程的区别
- 面向对象的特性
- Array和List区别,优缺点
- HashMap如何实现
其他
- 如何学习一项技术(介绍了科研过程中偏AI的
- Android学习路线
Coding
- 链表翻转
- 青蛙跳台阶
反问
- 商家端是不是不太注重UI的美观,更注重效率?(是的,倾向于操作简便,快捷
- 美团有自己的双端通用解决方案,不太注重端的区分
二面 1hour
pre
- 面试官介绍了下团队和具体业务
- 问了下双端整合的概念:双端同步依赖容器化,但是底层还是Naive的,所以还是要掌握基础,容器化只是工具
实习
- 重点问了发布面板同构,怎么做的,从哪些技术指标进行了考量?(只针对代码量和逻辑进行了简化,面试官提出这种工作体量大,工期长,应该尽可能考虑多项指标同时优化。
- 同构这个工作是安排的,还是你发起的?(团队针对需要同构的内容做了划分,因为之前做的需求和发布面板相关,所以被分到这个,但是方案的调研与设计是自己完成的
- 头条发版节奏一周一版,是否有些紧张?(针对需求大小简单说了下
- 实习期间遇见过的Crash,是怎么处理的?(说了同构过程中的一个)头条的Crash率多少?
- 需求开发过程中涉及不同的版本分支,处理起来有问题么?(经常多个需求同时开发,分支切换与版本控制没有问题
- 百度实习做了什么(主要偏向于简单的前后端开发
技术
- Crash有哪些种类,分别该怎么处理?(只举了空指针这种,举了个实习中的例子,只能写的过程中小心一些
- 简单谈一下客户端 push(没了解过,协商换了个话题)
- 说一下网络中的方法(没理解意思,以为是问框架,面试官解释说Http、TCP那些,顺着问了很多
- Http和Http2的区别(头部压缩、二进制、多路复用、服务器推送
- Http和WebSocket有什么区别?
- Https加密流程(问的很详细,包括对称加密的密钥是怎么生成的
- 一次Http请求包括哪些阶段?(寻址、连接、传输、解析…
- 如何保证多连接的快速响应?(ip复用
- 客户端图片有哪些格式?压缩方法?图片可压缩的条件?
- 端智能,如果要实现一个物品识别功能,技术路线是怎样的?
反问
- 图片压缩条件是什么(没答上来想问下原因)
- 美团iOS用OC还是Swift(OC,更有优势,便于处理一些Crash,Swift只是单纯开发效率高)
- 业务重心在新功能的探索还是现有功能的迭代优化(都有兼顾,toB和toC还是差的蛮多的,toB通常技术要求更高,面试官举了例子:需要做到大批量数据的快速同步,如1k+订单信息在1s内完成同步)