本文共 2257 字,大约阅读时间需要 7 分钟。
我今年38岁,失业前是南方二线城市某知名互联网公司的部门技术主管,婚姻幸福,膝下有一儿一女,组成一个好字,房子车子:有一辆十几万的汽车,一套月供八千的房子,妻子全职在家带娃,家里的一切开销全部指望我的那点工资,从没有想过失业会降临到我的头上,当我把这个消息告诉母亲的时候,母亲哭了:“这么好的工作咋说没就没了,我还以为你会在那干一辈子呢。”妻子说:”凭借你的技术能力,总会找到好工作的,不要伤心气馁。“
就这样,我在毫无防备的情况下,踏上了再求职历程,虽然对自己能力还是比较自信,但我还是分三条腿走路,为的就是同时出击,确保最后成功率。
① 投递行业Top3的大公司,由于之前的履历不错,在投递些许简历之后,也总是能收到面试通知,每次也都能聊得热火朝天,然后让我回去等通知,等是等了,但就是不见录用通知。
② Top3碰壁之后,于是我降低期望,投递小的互联网以及创业公司,又遭到HR的各种挑刺嫌弃,说是年纪太大,公司养不起我这种高薪的人。
③ 由于行业属性,我另一条路是找熟人内推,这个取得的效果最好,但唯一一点就是薪资福利、岗位职责等不符合我的心意。
1.java基础、面向对象、集合、线程使用;
2.Android 机型适配、SDK适配、内存优化、内存溢出、内存泄漏;3.MVC/MVP/MVVM的使用场景; 4.了解并能使用最新流行开源库RXjava+Retrofit+OKHttp、Glide、EventBus等5.JNI及NDK的使用、熟悉Framework。1.面向对象(OOP)
2.数据类型 3.equal和==的区别 4.字符串运行速度:StringBuilder、StringBuffer、 String 5.Queue 队列、Stack 栈 6.ListView机制 7.Fragment生命周期 8.四大引用类型 9.线程、进程及其通信方式 10.PackageManagerService 11.binder机制 12.launcher的实现 13.Android 版本特性 14.BroadcastReceiver广播 15.RecycleView 16.各种集合比较SparseArray、HashMap、ArrayMap、LinkedList、ArrayList 17.SQLite升级 18.Bitmap 19.Handler机制 20.性能优化技巧 21.ANR 22.自定义View 23.MVC、MVP、MVVM三种架构设计 24.APP 启动流程 25.插件化 26.Kotlin 多平台应用的静态编程语言 27.Framework 工作原理 28.Android 屏幕适配 29.事件分发机制 30.Android 动画分类:视图,属性,帧,gif 31.Android 进程 32.Android 五大存储方式 33.屏幕旋转Activity生命周期 34.Activity 四大启动模式 35.CPU、GPU工作原理 36.UI卡顿原因 37.Application的生命周期 38.如何避免因引入的开源库导致的安全性和稳定性? 39.简单的音频/视频格式 40.线程同步的方法 41.线程安全的单例 42.Serializable、Parcelelable 43.Service启动方式和生命周期 44.Android 常见布局 45.Http、Https、Volley、OkHttp、RxJava + Retrofit + OkHttp、TCP、UDP 46.如何节省内存使用,主动回收内存? 47.Activity如何生成View? 48.为什么要使用多线程? 49.现场保护 50.内存溢出、内存泄漏 51.JNI和NDK 52.常用的设计模式及其实现思想和作用 53.HashMap、 HashTable、HashSet的异同 54.Android 中内存泄漏原因及优化方案 55.LeakCanary 内存泄漏检查的开源工具 56.多线程、线程池 57.腾讯 Bugly 58.Glide 59.Fresco 60.React其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。
这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司21年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。
由于篇幅有限,这里以图片的形式给大家展示一小部分。
详细整理在GitHub可以见;
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
81.md)**
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
转载地址:http://dcoti.baihongyu.com/