裁员潮来袭:Android开发如何自救?未来三年,趁早做好这3个准备

2023-10-08 05:10

本文主要是介绍裁员潮来袭: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个准备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/162906

相关文章

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

一文教你如何解决Python开发总是import出错的问题

《一文教你如何解决Python开发总是import出错的问题》经常朋友碰到Python开发的过程中import包报错的问题,所以本文将和大家介绍一下可编辑安装(EditableInstall)模式,可... 目录摘要1. 可编辑安装(Editable Install)模式到底在解决什么问题?2. 原理3.

Android与iOS设备MAC地址生成原理及Java实现详解

《Android与iOS设备MAC地址生成原理及Java实现详解》在无线网络通信中,MAC(MediaAccessControl)地址是设备的唯一网络标识符,本文主要介绍了Android与iOS设备M... 目录引言1. MAC地址基础1.1 MAC地址的组成1.2 MAC地址的分类2. android与I

Python+PyQt5开发一个Windows电脑启动项管理神器

《Python+PyQt5开发一个Windows电脑启动项管理神器》:本文主要介绍如何使用PyQt5开发一款颜值与功能并存的Windows启动项管理工具,不仅能查看/删除现有启动项,还能智能添加新... 目录开篇:为什么我们需要启动项管理工具功能全景图核心技术解析1. Windows注册表操作2. 启动文件

Android 实现一个隐私弹窗功能

《Android实现一个隐私弹窗功能》:本文主要介绍Android实现一个隐私弹窗功能,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 效果图如下:1. 设置同意、退出、点击用户协议、点击隐私协议的函数参数2. 《用户协议》、《隐私政策》设置成可点击的,且颜色要区分出来res/l

使用Python开发Markdown兼容公式格式转换工具

《使用Python开发Markdown兼容公式格式转换工具》在技术写作中我们经常遇到公式格式问题,例如MathML无法显示,LaTeX格式错乱等,所以本文我们将使用Python开发Markdown兼容... 目录一、工具背景二、环境配置(Windows 10/11)1. 创建conda环境2. 获取XSLT

Android实现一键录屏功能(附源码)

《Android实现一键录屏功能(附源码)》在Android5.0及以上版本,系统提供了MediaProjectionAPI,允许应用在用户授权下录制屏幕内容并输出到视频文件,所以本文将基于此实现一个... 目录一、项目介绍二、相关技术与原理三、系统权限与用户授权四、项目架构与流程五、环境配置与依赖六、完整

Android 12解决push framework.jar无法开机的方法小结

《Android12解决pushframework.jar无法开机的方法小结》:本文主要介绍在Android12中解决pushframework.jar无法开机的方法,包括编译指令、框架层和s... 目录1. android 编译指令1.1 framework层的编译指令1.2 替换framework.ja

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

Android实现定时任务的几种方式汇总(附源码)

《Android实现定时任务的几种方式汇总(附源码)》在Android应用中,定时任务(ScheduledTask)的需求几乎无处不在:从定时刷新数据、定时备份、定时推送通知,到夜间静默下载、循环执行... 目录一、项目介绍1. 背景与意义二、相关基础知识与系统约束三、方案一:Handler.postDel