裁员潮来袭: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实现在线预览office文档的示例详解

《Android实现在线预览office文档的示例详解》在移动端展示在线Office文档(如Word、Excel、PPT)是一项常见需求,这篇文章为大家重点介绍了两种方案的实现方法,希望对大家有一定的... 目录一、项目概述二、相关技术知识三、实现思路3.1 方案一:WebView + Office Onl

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Android实现悬浮按钮功能

《Android实现悬浮按钮功能》在很多场景中,我们希望在应用或系统任意界面上都能看到一个小的“悬浮按钮”(FloatingButton),用来快速启动工具、展示未读信息或快捷操作,所以本文给大家介绍... 目录一、项目概述二、相关技术知识三、实现思路四、整合代码4.1 Java 代码(MainActivi

Android Mainline基础简介

《AndroidMainline基础简介》AndroidMainline是通过模块化更新Android核心组件的框架,可能提高安全性,本文给大家介绍AndroidMainline基础简介,感兴趣的朋... 目录关键要点什么是 android Mainline?Android Mainline 的工作原理关键

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Android实现打开本地pdf文件的两种方式

《Android实现打开本地pdf文件的两种方式》在现代应用中,PDF格式因其跨平台、稳定性好、展示内容一致等特点,在Android平台上,如何高效地打开本地PDF文件,不仅关系到用户体验,也直接影响... 目录一、项目概述二、相关知识2.1 PDF文件基本概述2.2 android 文件访问与存储权限2.

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Android Studio 配置国内镜像源的实现步骤

《AndroidStudio配置国内镜像源的实现步骤》本文主要介绍了AndroidStudio配置国内镜像源的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、修改 hosts,解决 SDK 下载失败的问题二、修改 gradle 地址,解决 gradle

在Android平台上实现消息推送功能

《在Android平台上实现消息推送功能》随着移动互联网应用的飞速发展,消息推送已成为移动应用中不可或缺的功能,在Android平台上,实现消息推送涉及到服务端的消息发送、客户端的消息接收、通知渠道(... 目录一、项目概述二、相关知识介绍2.1 消息推送的基本原理2.2 Firebase Cloud Me