本文主要是介绍裁员潮来袭:Android开发如何自救?未来三年,趁早做好这3个准备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
每天都有人在失去工作。
阿里滚动式裁员,腾讯持续裁员,知乎突击裁员,美的收缩式裁员……裁员潮像洪水一样蔓延,不论大厂还是中小企业,不论互联网还是传统行业。告别增长,降本增效,裁员是最直接的手段。
过去,重在雇主品牌建设的互联网公司,为裁员这样的负面字眼紧张在意,一篇报道就可能引发一场公关危机。如今,经过大环境的锤炼,他们已经无感。新闻不再新鲜,这时候如果哪家公司还没有裁员,反而更应该上头条。
今年的职场,没有金三银四。
以前,但凡在稍微靠谱点的公司,不犯大错,干个几十年没问题;而现在,可能上午还为某个项目发愁,下午就彻底恢复了自由。
对普通人来说,失业不可怕。失业后找不到工作,才是致命的。
那么在变幻莫测的职场中,Android开发要如何实现自救,保全自己呢?
1.底层基础知识过硬,专业技术过硬
每个企业的业务方向都不一样,用的技术也不一样。很多人在开发过程中只是浮在表面,忽略底层源码分析,面试求职的简历也没有进行修缮和突出重点,自然求职不顺,加薪无望。
解决这个问题的最好办法就是:深入底层,抓住不变量。
要知道,底层知识永远都不过时。算法数据结构、基本的程序设计理论、良好的编码习惯、分析问题和解决问题的能力、强大的学习能力和旺盛的求知欲……这些永远都不过时,大脑的思维方式也永远都不过时。
专业技术过硬 ≠ 对API熟悉,技术过硬是指对技术在实际业务模型下的应用能力,自己在实际工作中对问题的分析解决能力。
有时候在做一个功能或者解决一个问题的时候,你有很多种选择,有很多方法,你是否有足够的知识储备让你选择解决方案,找到最优解?还是你仅仅知道一个唯一的解决方案?
当你面对一个问题的时候,你的思路是否能支持你一步一步找到 root cause?要花多少时间?找到以后你能不能有办法解决掉?
如果你觉得自己在这些方面还有欠缺,这里推荐大家去看一下这份源码解析PDF。
从底层开始打怪升级。
这份资料免费分享给大家,有需要的朋友可以点击文末微信卡片直接免费获取。
2.保持学习的习惯
很多人认为年纪大了学不过年轻人,但是这个逻辑是讲不通的。年纪大了家里事情多,没年轻人有时间那我还是能理解,但是也拥有年轻人没有的优势,比如对代码的熟稔,对规则的熟悉。
笔者大概每天保持学习 2 小时以上,主要是对新技术的学习和刷算法题。手游、短视频什么的基本不碰,碎片时间会刷刷CSDN、知乎。
笔者自己明显感觉到最近这些年,精力,智力,思维,工作能力相比于读书考试那会以来又达到了一个巅峰状态,工作上代码写的得心应手,学习东西快,理解能力强,刷算法时思维比以前还要敏捷。
不敢说公司抢着要把,但是至少笔者能说自己还是有一定竞争力,起码 35 岁被裁什么的在我这不存在的。就算是被裁,出去重新找个工作也很容易,还能涨涨薪水。
3.写好业务代码,搬好每一块砖头
没有哪一个架构师不是从写业务代码成长过来的。上面指派的任务,要保质保量认真按时完成,这是最基本要求。
在这个的基础上考虑有没有什么风险,对别人有没有影响,能不能把公用部分抽出来造个轮子?如果是作为别人的上游,对别人来说是不是好用?代码是不是简洁干净?有没有可以写成配置的 hardcode?
一个好的工程师在拿到需求时,并不单纯是考虑这个需求怎么实现,还会考虑,自己设计的架构体系,扩展性在哪里,在他的眼里,看到的需求会被分解,折分,然后自己的技术方案,会挨个分解,分配。
在完成设计之后,他会很清楚的知道 ,自己设计的系统里,哪些变化是支持的,随便你改,我只需要改动一个很简单的内容,哪些是你绝对不能改的,你要改,我就必须花很大的代价,特别是在已经有线上数据的时候。
而且还要会拿着自己的架构体系跟 PM 沟通,讲清楚。
负责任,写好业务代码,搬好每一块砖头,完成自己的代码质量优化。当你做到了这些你就拥有了基本的架构思想:面向未来编程。
总结
要想成为架构师,那就不要局限在编码,业务,要会选型、扩展,提升编程思维。此外,良好的职业规划也很重要,学习的习惯很重要,但是最重要的还是要能持之以恒,任何不能坚持落实的计划都是空谈。
如果你没有方向,这里给大家分享一套由阿里高级架构师编写的《Android八大模块进阶笔记》,帮大家将杂乱、零散、碎片化的知识进行体系化的整理,让大家系统而高效地掌握Android开发的各个知识点。
相对于我们平时看的碎片化内容,这份笔记的知识点更系统化,更容易理解和记忆,是严格按照知识体系编排的。
一、架构师筑基必备技能
1、深入理解Java泛型
2、注解深入浅出
3、并发编程
4、数据传输与序列化
5、Java虚拟机原理
6、高效IO
……
二、Android百大框架源码解析
1.Retrofit 2.0源码解析
2.Okhttp3源码解析
3.ButterKnife源码解析
4.MPAndroidChart 源码解析
5.Glide源码解析
6.Leakcanary 源码解析
7.Universal-lmage-Loader源码解析
8.EventBus 3.0源码解析
9.zxing源码分析
10.Picasso源码解析
11.LottieAndroid使用详解及源码解析
12.Fresco 源码分析——图片加载流程
三、Android性能优化实战解析
- 腾讯Bugly:对字符串匹配算法的一点理解
- 爱奇艺:安卓APP崩溃捕获方案——xCrash
- 字节跳动:深入理解Gradle框架之一:Plugin, Extension, buildSrc
- 百度APP技术:Android H5首屏优化实践
- 支付宝客户端架构解析:Android 客户端启动速度优化之「垃圾回收」
- 携程:从智行 Android 项目看组件化架构实践
- 网易新闻构建优化:如何让你的构建速度“势如闪电”?
- …
四、高级kotlin强化实战
1、Kotlin入门教程
2、Kotlin 实战避坑指南
3、项目实战《Kotlin Jetpack 实战》
-
从一个膜拜大神的 Demo 开始
-
Kotlin 写 Gradle 脚本是一种什么体验?
-
Kotlin 编程的三重境界
-
Kotlin 高阶函数
-
Kotlin 泛型
-
Kotlin 扩展
-
Kotlin 委托
-
协程“不为人知”的调试技巧
-
图解协程:suspend
五、Android高级UI开源框架进阶解密
1.SmartRefreshLayout的使用
2.Android之PullToRefresh控件源码解析
3.Android-PullToRefresh下拉刷新库基本用法
4.LoadSir-高效易用的加载反馈页管理框架
5.Android通用LoadingView加载框架详解
6.MPAndroidChart实现LineChart(折线图)
7.hellocharts-android使用指南
8.SmartTable使用指南
9.开源项目android-uitableview介绍
10.ExcelPanel 使用指南
11.Android开源项目SlidingMenu深切解析
12.MaterialDrawer使用指南
六、NDK模块开发
1、NDK 模块开发
2、JNI 模块
3、Native 开发工具
4、Linux 编程
5、底层图片处理
6、音视频开发
7、机器学习
七、Flutter技术进阶
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter开发环境搭建和调试
5、Dart语法篇之基础语法(一)
6、Dart语法篇之集合的使用与源码解析(二)
7、Dart语法篇之集合操作符函数与源码分析(三)
…
八、微信小程序开发
1、小程序概述及入门
2、小程序UI开发
3、API操作
4、购物商场项目实战……
全套视频资料:
一、面试合集
二、源码解析合集
三、开源框架合集
欢迎大家一键三连支持,若需要文中资料,直接点击文末CSDN官方认证微信卡片免费领取【保证100%免费】↓↓↓
这篇关于裁员潮来袭:Android开发如何自救?未来三年,趁早做好这3个准备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!