开头
在大厂,写得一手好文档是一个非常吃香的技能。这可不只是一个锦上添花的东西,而是很多工程师晋升,打造自己话语权的武器。 我这两年在组内的深刻体会就是,大部分厉害的高级工程师(不包括那些纯混日子靠资历晋升的人),写文档的能力一点也不含糊,很能抓住上级和项目的G点。
可能有人会觉得,我技术牛逼就行了,为啥还要提高写文档的能力,有这功夫我还不如多看看源码分析?这是一些初级或者刚入门的工程师的普遍的困惑。这是因为大部分刚刚入行的朋友有一个很深的误区,就是他们以为做软件工程是一个和计算机打交道的工作,其实不然。软件工程不只是和代码打交道,更重要的是和人打交道,是一份社会性质很强的工作。在大部分公司里面,尤其是大厂,牵涉到的人,组,都是非常非常多的。在小厂,人与人之间交流意见和设计可以口口相传,心领神会,但是一旦人开始多了,就只能靠文档了。除非你可以厉害到一个人把所有代码撸完,不然还是最好老老实实的夯实自己写文档的能力。
如果你有写技术博客的习惯,那么恭喜你,相信你已经对如何抓住文档受众的技巧有所了解了。这对你在大厂生存有很大的帮助。如果没有也不要伤心,这篇文章就是为你精心设计的。
在这篇文章里,我会大致的把一份安卓的项目设计文档的骨架,和一些我工作中实际遇到的正反例都列出来,方便大家以后在工作中实践。
华为四面(3次技术面+HR面)
一面(1hour)
- 自我介绍
- 项目介绍,技术点相关。
- C++和Java区别,GC
- 线程相关,Runnable和Thread的区别。
- 线程池
- synchronized,volatile
- 继承相关,多重继承和接口
- 网络编程
- UPD,TCP区别
- 最大的优点
- 最大的缺点
- 算法,二叉树中序遍历,
早上状态很差,简单问题也会卡壳,希望大家还是能够选择自己状态好的时间点面试……。
二面(40mins)
- 自我介绍
- camera 硬件有哪些引脚。
- 问渲染管线主要有哪几个阶段?
- Android的数据存储方式等等。
- 说说mvc模式的原理,它在android中的运用。
- 谈谈你的工作经历,聊聊你的职业规划等。
- 问了一下,java有几大基础数据类型。
- 问了Activity启动的几种模式,强引用、软引用、弱引用、虚引用使用。
- 还问了我做过的App上有一个实现的自定义View问了下实现的思路。
- 又问了自定义View,三个不同的构造函数的各自作用。
- 问Scoket和Http最大的区别是什么?
华为面试安排非常紧张,但是反馈效率特别高,一二面结束马上会短信通知是否通过。然后隔天直接三面,流程走的非常快。
三面(40mins)
- C/C++基础:inline和define的区别;
- volatile的作用,应用在哪些地方,为什么不是所有的变量都用volatile
- static变量的特点
- 操作系统:线程和进程,怎么实现线程的同步
- 数据结构:对什么排序比较熟悉;二分法查找
- 现场写程序:一句代码实现,判断一个int类型的数是否是2的幂。2进制,位运算a&(a-1)
- 做软件测试什么能力比较重要?
- 白盒测试和黑盒测试的区别。
- 什么是UT?
- 问了关于规范、扩展、回调,父类的静态方法能否被子类重写等问题
- 冒泡排序算法。
- 虚拟机原理、内存回收机制等。
- 说说对华为的了解
- 为什么离职?到华为会不会不习惯?
HR面(20mins)
- 为什么离职
- 有没有职业规划
- 对公司未来的展望
- 以前公司的薪资待遇
- 期待的薪资
HR面还好,感觉都是一些常见的问题,没什么很刁钻的问题。
最后
今天关于面试的分享就到这里,还是那句话,有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。
最后在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司19年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。
还有 高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。
【Android核心高级技术PDF文档,BAT大厂面试真题解析】
【算法合集】
【延伸Android必备知识点】
【Android部分高级架构视频学习资源】
)]
【延伸Android必备知识点】
[外链图片转存中…(img-WXe0PiJj-1622898933453)]
【Android部分高级架构视频学习资源】
**Android精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!