今天分享的是之前分享文章中被裁的小C,可以看这篇文《寒冬之下,被cai的那些人到底去哪了?》,最近他已经找到心仪公司今日头条Offer,并且即将入职,在应我要求下,他写了篇总结文如下。下文中的"我",不是鱼哥,是特指小C。
这两个月听的最多的两个词就是 寒冬 和 裁员,作为被裁大军中的一员,经历焦虑到担心,再到自信,最后到喜悦。焦虑的是那段被裁日子,不太好过,每天不敢下楼,就在房间里复习。也不敢告诉家里人。担心的是自己找不到工作,成为失业人员。自信是拿了几家二、三线厂offer后,越来越自信。喜悦是同时也拿到自己梦寐以求的公司绿灯通道。今天主要分享下技术面试过程中需要注意的点。
更新简历
在鱼哥指导下,我把简历中亮点项目的一些细节着重介绍了下,以及做的一些成绩用数据量化,简历最好不要写太多页,一般2-3页就够,捡重点写,写牛逼的地方和自己亲自参与的,最好不要写牛逼的项目,但是你却不熟悉的,这很打脸,让人怀疑你的真实性。这点很感谢鱼哥指导。
投递简历
投递简历基本都是找人内推,拉钩,boss上回复意愿貌似很低,有些公司不像是真正招人,内推好处就是可以后续方便跟踪反馈,开始没有着急出去面试,而是准备了半个月有余,把过去从Java,Android,设计模式,算法与数据结构,基本都过了一遍,弱项是算法与数据结构,这里主要去刷了些题目,在LeetCode上。
复习内容
在Java复习中,着重看了如下部分:
1、容器:HashMap,HashSet,LinkedList
2、内存模型
3、垃圾回收算法
4、类加载的过程
5、反射
6、多线程,线程池
有一个面试官说,你能否自己写一个LinkedList,这里其实就是考察双向链表相关,比如加入数据,删除数据。如果不看源码,估计很难去知道内部原理。
在Andorid复习中,着重看了如下部分:
1、UI的自定义View
2、事件拦截和分发机制
3、解决过一些性能问题,以及项目中的实际应用。
4、性能优化工具:TraceView、Systrace、调试GPU过度绘制 & GPU呈现模式分析、Hierarchy Viewer、MAT、Memory Monitor & Heap Viewer & Allocation Tracker、LeakCanary、Lint。
5、性能优化方向:网络,内存,绘制,电量,APK瘦身
6、IntentService原理及使用
7、缓存自己实现怎么做?LruCache原理
8、图形图像相关,如OpenGL ES管线流程,EGL的认识,Shader相关
9、SurfaceView,TextureView,GlSurfaceView区别,使用场景?
在Android Framework中的复习,着重看了如下部分:
1、AMS管理
2、Activity启动流程
3、Binder机制
4、AIDL原理
5、为什么用Parcelable,好处是什么?
6、Android图像显示相关流程,VSync信号,SurfaceFlinger到FrameBuffer
在第三方框架中,着重看了如下部分:
1、Glide源码介绍
2、EventBus源码原理
3、LeakCanary源码原理
4、ARouter源码原理
插件化相关框架,来不及细看,了解不同插件机制主要原理和流派,还有优缺点和局限性。
算法与数据结构,着重看了如下部分:
比如常见的单链表,反转,插入,删除,双链表插入,删除,常见的排序,堆排序,归并排序等。二叉树的前序遍历,中序遍历,后序遍历等,最大K问题。经典的广度、深度优先搜索算法,这些在大公司中常常会考察
一点小感悟
面试要谦虚,在面试官和你有不同看法时,应该虚心接受,一般问你还有什么问题想问的时候,表示面试马上结束了,要问和公司产品,项目相关的内容,方便互相了解。面试让等通知的,若非超级大厂,一般几天内有消息,没有消息就是挂了,挂了各种原因,有可能不符合岗位匹配,有可能价格要高了,有可能没有HC了,等等。做好属于自己总结就行,每次面试完,做个记录。不要主动问面试结果,除非你等了较长时间,但是觉得自己本可以过的。**主动问,凉的快,对你感兴趣,自然会再联系你的,HR不会放走任何合适的候选人。**面试主要是大家认知差异,差异较大,自然就无法共识。当然也无需打击自己,我面试百度时没过,但是却拿到腾讯Offer,不同面试官找的是志同道合的人。就说这么多,希望对大家有用。