前辈们对职业规划面试选公司指点
framework有framework的开发,如果自己不感兴趣,其实没必要往那个方向走,尽管多一些钱,但可以有更合适的,定位要明确。
就好比我的室友做PPT教学,当初我们都不看好,现在卖课程卖教程,过得比我们好多了。兴趣很重要。我报名去听他的课,发现其实课程不难,从零到专业就4个月,就能做很漂亮的商业PPT了,但为什么普通人做PPT不赚钱,这里头有个词叫「匹配度」,就是当下技能是否匹配你面试的公司,如果觉得不匹配,却觉得工资高而想去,其实后期也挺累的,当前技能加20%的水分与期望的公司还是差太多,建议工资再高也不要去。
我说的不一定对,但我现在如果想跳的话。我的做法是这样的。
先看公司需求,拿自己当前技能+20%水分,假如招聘条件有20点要求,匹配度在80%以上,并且通过自己的复习能回忆大部分,再者,自己感兴趣,觉得我未来想干这个,比如我未来对音视频很有兴趣,觉得自己对压缩,解码,变脸这些很有兴趣,那么这公司就和我对应上了。我就去试试。
虽然大家投简历也是广撒网,但自己可以在接到电话后用上面方式匹配下,这样,双方命中率也高,效率也高一点
对于提问公司技能,面试官给前来面试带来不好体验,前辈的态度
问题:
海外应用写个弹窗,需要什么。(群友说,为啥这么问题,面试关就是想看看你的反应)
前辈们的态度:
弹框还能注意啥?推送拉起,浮窗权限,风格设计,国际化字符兼容,安卓版本兼容。不就这些了?是我立即diao他
是我就问中东适配方案以及安卓7.0如何适配阿拉伯语以及墨西哥拉丁西班牙语的bug,diao到吐,diao到呕为止
这种拿来面试纯是给自己组找解决方案,是我拒绝回答:你招我,我再告诉你
中东语言可不止start end,假如是跑马灯呢
个人理解
:这个只是前辈给我们的建议,我们就可以区分,这家公司如何。但是作为情商选择,可能面试不会这么怼人,但是绝对不会给我们打算入职的心里打分留下好印象,90%会被面试者pass
有经验,忠告,内容主题多,只是想把群大佬的经验作为参考
我今天网面了一家, 面试官问我, 你说说Rx系列的模型.
我的回答是: 我认为Rx系列的模型只是包装了一下事件流的响应做法, 但从维护角度来讲, 我认为它很”不专业“, 特别是繁多的操作符, 对于项目的交付和维护, 加大了工程成本.........后边省略10000字举证
然后我反问他: 难道你不觉得吗?
他若有所思的答一句: 似乎有点道理
然后我又说, 如果一定要从调度方面讲, kolin不香吗? 如果从节约成本来讲, 单独针对okhttp的精简封装, 它不香吗
背压和携程, kolin把rx吊打. 而从维护的模块化并行开发效率角度来说, 针对事件进行客制化定制模块更加容易维护, 而不必什么都rx rx rx,
当然我还问了一句: 你们熟悉kolin的人多吗? 能方便开展业务吗/ 人员调动密度大吗? 容易维护吗?
我觉得我有点过分了, 面试官有点支支吾吾
99%黄了
我以为我能找到知音, 下次要收敛一点
所以各位还是要收敛点, 我今天就没忍住
关于性能的一套题, 他问, 如何优化视图的流畅度
然后我问了他一句, 你知道android多少秒刷新一次屏幕么?
普通刷新率每16ms一次
然后问了OLED和LED的色块兼容
我就问: 是不是你们项目有些UI看起来是变形的
然后他拿了个demo给我看, 确实一个circle在OLED里变成了椭圆
然后我说对于OLED屏, 我们可以重新规划px的行排列, 这个就自己搞算法了, 具体等你招我, 我再说
那个公司开30-50K
但有一个问题我没答出来: 是关于逆向的, 就是把java代码通过JNI封装后, 隐藏方法名, 即利用IDA也无法查看
逆向是我的弱项
是要写算法
因为这家公司有自己的手机部门, 所以安全保密也重要, 结果被他做了, 我估计99%肯定黄了, 毕竟逆向我真心不懂
我只说了一方面, 就是关于如果加密resource
就是对resource.arsc文件进行数据块拆包加密
结果他一发现我不会逆向, 就叫了另外一个大神来, 使劲给我造, 什么jadx反编原理
allowbackup如何获取隐私数据, so函数加密
我原来是做linux的
oppo旗下一个分公司
我一开始就是把android老大压得太死, 结果后边被做逆向的给做了
另外gradle自动化构建也看
gradle自动化构建这个也经常用到啊, 能提高开发效率的, 别人还在死撸代码, 你通过预制件就能把工程给build完了, 这个很实用的
http了解就好, 你往后的工作80%用不上http的核心原理
对. 搞android的不用太深, 三个原则[开发效率][架构思维][设计模式], 看这些方面就OK了
你这个加固有做smail注入吗,今天也被问到
因为你别忘了,安卓代码到视图间还有一层dvm进行调度
基于cpu密集型机制,安卓的做法是通过增加cpu数量来达到效果,苹果则是通过调度算法。因此你还可以做个对比,同时开多个进程,苹果切换会比安卓略慢,因为苹果UI做得特别好
这个过程通过JIT译转成本地码后,发送到显卡处理器进行铺点
苹果的UI是走了另一条线程,并不是与逻辑的主线程走同一条线程
高版本现在用ART,也是安卓的颠峰了,我觉得
华为x系列就是使用了辅助显卡,因此理论上还能达到144刷新率
我们做竞品分析发现华为他们太不厚道了,为了提高刷新率,不惜牺牲了2.2mm的机身厚度
UI线程仅仅是在调度满格时启用,一般情况受制于“死亡机制”在一条线程中进行。但安卓是的线程所有处理完了,然后再分发到硬件上,因为这样能更省硬件成本,不然苹果贵那6000块你觉得贵在哪
2个人干活,一个干完了马上汇报。安卓是大家都干活了再集中汇报,你说你是领导的话,哪个更轻松
不是提高通道数量,数量是按国际协议都是统一的,但苹果是多了一个signal收发信道,用于及时处理cpu每个流程节点的结果,然后每个过程立即显示。但安卓就不行,因为安卓机正是因系统需求多才不统一这样做
比如,我一共做10件事,每一件做完了就给你展示一下,那我是不是体验上比你全部做完再展示更流畅呢
都支持的,安卓想做也可以,但这是成本控制,安卓的rom那么多定制,底层执行还得考虑中间件兼容,所以华为不就自己搞了嘛,你可以买他新出的那款,不比苹果差,价格16000好像
别小看只加了个端子,那逻辑……幸好我不再搞linux
还有外观,涂料比市面上安卓的贵17块一立方,在我们眼里,1分钱才叫便宜
谁说贵的就耐用,只是好看而已。自己买点小工具小芯片做个汇编器也可以
整理心得:
- 首先每个人有个人的风格,这些内容只是提供大家思考,心中有数,还是感觉大佬有很多干货,我们从业IT人员也是技术和年限水平参差不起,做到了解行业就好
- 从里面获取不是很细节的思想,选择和面试公司心里有数。
- 前人的经验都是有价值的,作为参考和避坑还是有价值的。
- 知识点和技术积累还是很重要,不然遇上硬功,拼个你死我活的比知识,还是会残血的。
- 希望每个人都能,扎实基础,逃离搬砖还被剥削的境地,干自己喜欢并且有价值的事。
网友评论