背景
首先介绍一下自己的情况。目前所在的是一家小的创业公司,待了3年多,薪资一般吧。由于这几年公司也在转型。工作经历大概可以分为 3 个阶段。
第一阶段是从进公司开始做 android app 开发,无论是外包或者公司的主力产品都做过。
第二阶段是做 ROM 开发,由于公司规模不大,除了硬件和底层的东西外,基本上是一个人负责了整个 ROM 的修改,编译,发布(基于 MTK 的某一个 rom,然后做一些 android framework 层面上“奇奇怪怪”的定制)。
第三阶段,也就是当前。之前做的 ROM 所适配的手机销量未达预期,公司也不再准备投入更多,基本上是做做简单的维护。而我被分配的新任务是做机器学习的一些东西,比如 Tensorflow, OpenCV 做做图片处理,训练之类的。
相信诸位看了上边的经历,大概也猜到我现在所面临的问题。即,当前在一线做 android app 开发,而我的目标仍然是想找 android 开发的职位。
我对于自己的评价:
Android app 开发能力一般,但是足以胜任一般 app 开发的任务(因为确实有段时间未做公司正式项目的 app 开发,但是也不是说已经荒废了技能);
Android frameworks 方面比普通开发者了解更多;
解决问题,学习实践新技术的能力不错(无论是从第一次编译 AOSP 到后来整个 ROM 的开发,发布。还是从对机器学习完全陌生,到现在能够描述常见机器学习的算法,使用 Tensorflow 实现一些这方面的需求)。
说到这次的面试,面试官几乎是按照他所准备的 Android 面试题一一提问。如:
View 自定义
handler 机制
内存泄漏
rxjava的flatmap原理
…
(差不多都是些理论上的问题)
他问的这些我大部分都能答上,但是我自己所组织的语言,描述的结果却差强人意。大部分是因为我自己表达能力的问题,我觉得这些问题如果是作为笔试题目,我能够更从容的回答。
我更期待的是对于我自己项目经历的说明。因为这是我和其他应聘者不一样的地方。而面试官却完全没问我简历上的项目经历。虽然最后我还是自己硬讲了一下,但面试官也并未有兴趣,其中一个大佬说:有些候选人实在看不下去了,在小公司混水摸鱼3年,能力真的太差了,还不如应届生哇~最后面试就这样结束了。
我自己的想法:自己准备不充分,没能干净利落地应对这些“ Android 标准面试问题”。至少这些基础问题应该能够一两句话就讲清楚。完全没有体现出自己区别于其他应聘者的地方。我认为自己能够又更快又稳的做好开发工作,能够深入的研究框架,源码,解决一些疑难问题,怎么才能让面试官也这样认为。