本篇文章主要包含年前换工作的面试经验(头条,贝壳,快手,就面试了这三家,均已拿提供)
面试经历
以前担任过面试官,所以我从面试官的角度和自己成为被面试者的角度来分享一下此次换工作的经历。
由于我下家公司已经是我职业生涯的第四家公司了,处于谨慎状态和自己想稳定点的状态,没有选择特别小的公司也没有选择大量投递简历和面试,就去面了3家公司,个人认为这三家公司都还是不错的。
由于面试时间有些略早,没有记录,部分面试题记得不是很清楚了。这也没事,文末我放上我认真学习的安卓开发面试指南。
贝壳
贝壳是12月初的一个周六去参加的,他们非996,而是一个新装修部门的专场招聘会,设置在周末。从面试者的角度来说,我觉得挺好的这样方便去面试。可能辛苦面试官和设置专场的人力资源了。
一天内流程全部完成,2轮技术+ 1轮总监+ 1轮人力资源
-
<李>颤振混合页面栈的处理李>
<李>崩溃万二的治理之路有哪些?你分别怎么解决的?李>
<李>做了哪些包体积优化?李>
<李> APT Trasnform/ASM分别用来干啥?李>
<李> NDK中怎么捕获异常?李>
<李> AMS/项目经理/WMS是运行在一个进程还是线程中呢?李>
-
<李>自我介绍李>
<李>介绍一下你项目中你自己做得做好的一个技术点?李>
<李>我介绍了美妆相关的,一聊半个小时,(主要是图片处理的一些画布,位图局部缩放算法,Bitamp造成的伯父处理方法等)李>
<李>你比较熟悉的一个第三发开源库,聊了OkHttp的设计及实现。李>
-
<李>你项目中为什么要做组件化呢?李>
<李>你三到五年职业规划是什么样的呢?李>
<李>你有什么想问我的吗?李>
<李>福利待遇
10天年假(国家规定5天+公司福利5天)/三餐免费/过年多放三天(3 + 7法定=10天)/16薪资李>
贝壳目前正在快速发展阶段,已经到D +轮了,发展前景还是挺不错的,给的薪酬也是行业有竞争力的,目前也在大力招人,有想去的小伙伴,可以去试,试值得推荐。
快手
快手是我提完离职后的第二天去面试的,一天内流程全部完成,3轮技术+ 1轮人力资源
-
<李>飞镖的消息循环机制李>
<李>颤振混合栈都有那些方式?了解过共享纹理的方式吗?李>
<李>颤振你实现的混合栈共享引擎初次进入有黑屏问题吗?第一帧怎么解决的?李>
<李>一个ViewGroup中,按住一个观点,然后移动,事件传递过程李>
<李>手写一个线程安全的单例?为什么此种方式就是安全的呢?李>
<李> Java内存模型李>
<李>算法:求一个集合的所有子集李>
-
<李> RecyclerView的缓存机制?为什么这样设计?李>
<李>片段共享数据的方式有哪些?李>
<李> MVP/MVVM有哪些不同?李>
<李>说一下APK你都怎么瘦身的?李>
<李>介绍你项目中的组件化怎么做的?李>
<李>算法:镜像一颗二叉树李>
-
<李>就一个题:设计一个埋点库需要考虑哪些,你怎么设计?大致两个步骤回答:李>
<李>哪些模块?(日志收集模块,上传模块,API模块)李>
<李>注意哪些问题?(线程模型,存储选项文件/数据库?日志丢失处理?同时写,锁的问题等?)李>
<李>福利待遇
11天年假(国家规定5天+公司福利2天+公司福利带全薪病假6天)/三餐免费/过年多放两天(2 + 7法定=9天)/16薪资/就近3公里住2 k房补李>
作为一个程序员,基础知识还是要扎实,对自己写代码还是干啥都好。快手最近一年也是在不断扩张,大规模发展,就在西二旗地铁站边上,挺方便。
头条
3轮技术+ 1轮总监+ 1轮人事面试部门(基础技术)
-
<李>飞镖的消息循环机制及为什么要这么设计呢?为什么不是处理哪样的设计规则呢?(可以从飞镖单线程模型设计回答)李>
<李> Java内存模型李>
<李> RecyclerView缓存机制李>
<李>包体积优化李>
<李>算法:链表的大数加法(先反转在相加)李>