在浏览某论坛的时候看到一名程序员吐槽:
坐标杭州,四年Android开发一枚,技术不顶尖也不算差吧,这边加班太猛了,在考虑换一个岗位。
在拉勾上投了十几个简历,全都是不合适,没有一个面试邀请!!!简历在拉勾上是开放的,竟然没有一个感兴趣的公司打电话给我。前年这个时候,接到的电话还是很多的, 这才过了一年多,竟然如此,让我有了我药丸的感觉。
从一个在互联网公司工作的人的角度出发,谈下感受。今年互联网的工作真心是比前几年难找,为什么呢?
原因一:没有空缺,尤其是1-3年的工作空缺。到15年末,BAT社招都开始缩招,其它互联网公司也在缩招,还有18、19年裁员,合并种种影响。今年大家都比较谨慎,跳槽率要比前几年低,导致很多岗位没有空缺。
原因二:人员过剩。13-15年是互联网扩张时期,各种业务涌现。而现在稳定下来,发现人才过剩,一岗多人,权责不清,于是开始裁员。现在互联网不是不招人,根据各个网站的招聘需求显示,主要招聘的大多是3-5年经验,或者5-7年经验的人。这就导致,1-3年经验跳槽的人非常尴尬。
原因三:需求专业性和综合素质更强的人才。互联网经过这些年发展,已经日趋成熟。不会像初期一样需要很多基础人才,而是需要在某个细分领域更加专业,同时又在更专业的人中挑选综合素质强的人。
原因四:供大于求。跳槽比较困难的是1-3年经验的人,而每年都有800多万大学生毕业,传统行业也开始往互联网跳,大学生也更喜欢找互联网公司。导致人才供应远远大于企业需求,也就会出现个别企业招3个Android,收到3600多份简历。
现在做Android的人很多,质量是关键,数量一点意义都没有。每年池子里的人就那么多,一份好的简历出来不止公司之间,部门之间甚至是部门内都在抢,但这批人之外,绝大部分人的简历能占用你的时间不会超过5秒。
在现在这个阶段,公司之间的技术鸿沟已经非常明显,开发者身在其中,也因为自身学习能力,环境,项目等等的差别,技术上的差距越拉越大,造成了工作几年之后的两级分化,并且这种差距的拉开不是靠自己的努力就能弥补的。
在前段时间面试了一个在某一线手机厂商做App的同学,985出身,工作3年,目前也是公司的核心骨干,跟我说了他做的很多UI上的优化和重构工作。他们的App团队大概是4,5个人,看的出来他已经在力所能及的范围内努力做到最好,可惜,受限于团队规模,支持力度和技术储备,他的天花板来的太快,做的不够深入,技术能力也不够全面。
那面对这种情况,作为开发者,我们能做的是什么?最基本的,脱离舒适区,不停磨练自己的技术。
如果你在某个行业里一直在原地的踏步,不去提升自己,还想在行业内吃的香,简直就是在“白日做梦”
做为一名Android开发者,下面我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名Android高级开发者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!
1.高级UI,自定义View
UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。
不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!
2.NDK模块开发
内容主要涉及以下几个方面:
- NDK 模块开发
- JNI 模块
- Native 开发工具
- Linux 编程
- 底层图片处理
- 音视频开发
- 机器学习
3.数据结构与算法
为什么要研究数据结构?
这是因为所有的程序本质上是对数据进行处理,如何高效的处理数据,这依赖于数据本身的结构(如类型(整型、浮点型等)、维数、是否为复杂类型(结构体类型、类类型)等)以及数据之间的逻辑关系(线性、非线性等)。
数据结构离不开算法,设计好的数据结构就是为了让算法顺利方便的实施。
4.Java进阶与内核原理
内容主要涉及以下几个方面:
- HashMap
- ArrayList
- LinkedList
- Hashset源码分析
- 内存模型
- 垃圾回收算法( JVM )
- 垃圾回收机制和调用 System.gc()的区别
- 类加载过程
- 反射
- 多线程和线程池
- 设计模式
- Java的泛型
等等…
5.Flutter技术进阶
本篇知识要点:
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门
6.360度全方面性能调优
随着产品内容迭代,功能越来越复杂,UI页面也越来越丰富,也成为流畅运行的一种阻碍。综上所述,对APP进行性能优化已成为开发者该有的一种综合素质,也是开发者能够完成高质量应用程序作品的保证。
1、设计思想与代码质量优化
2、程序性能优化
- 启动速度与执行效率优化
- 布局检测与优化
- 内存优化
- 耗电优化
- 网络传输与数据储存优化
- APK大小优化
3、开发效率优化
- 分布式版本控制系统Git
- 自动化构建系统Gradle
4、项目实战
- 启动速度
- 流畅度
- 抖音在APK包大小资源优化的实践
- 优酷响应式布局技术全解析
- 网络优化
- 手机淘宝双十一性能优化项目揭秘
- 高德APP全链路源码依赖分析
- 彻底干掉OOM的实战经验分享
- 微信Android终端内存优化实践
7.Framework精编内核解析
主要内容包含:
- 深入解析Binder
- 深入解析Handler
- Dalvik VM 进程系统
- 深入解析 WMS
- PackagerManagerService
8.Jetpack架构组件从入门到精通
- Android Jetpack - Navigation
- Android Jetpack - Data Binding
- Android Jetpack - ViewModel & LiveData
- Android Jetpack - Room
- Android Jetpack - Paging
- Android Jetpack - WorkManger
- Android Jetpack架构组件之Lifecycle
- Android Jetpack Compose 最全上手指南
9.2020大厂面试高频知识点
一、图片
二、网络和安全机制
三、数据库
四、插件化、模块化、组件化、热修复、增量更新、Gradle
五、架构设计和设计模式
六、性能优化
七、Android Framework
八、Android优秀三方库源码
由于篇幅原因,以上完整版资料PDF如有需要,可以 点赞+评论 支持下我,然后【点击这里】免费阅读下载。
最后送给大家一句话:“不管是那个行业,你只要不断地的努力的提升自己,在哪都吃的香”。