干了快3年Android了,感觉自己的职业生涯已经快凉了
背景
首先我是个菜鸡,工资也低的一笔。
刚毕业时候在一家国企上班干 app 开发,干了快两年的时候,跳槽到了一家伪大厂干安全。投了不少简历都没有回音,只有这加伪大厂要我就来了。当时说好了会接触一些底层的东西,然而*时也就写 python 脚本,逆向,android 上写了一些风控的东西,感觉有点 low,工资也不高,当初没敢多要,hr 给的比我要的还高。刚刚 leader 谈了谈明年的规划,现在想跳槽。
现在也是很尴尬,原来 app 开发的东西也忘了不少,然后其实我想干 framework 开发,自己对 ams,pms 还算挺了解的,*时也根据他们原创了一点微小的解决方案。最*开始 fork 一个 aosp,买个 pixel 改改刷刷练习一下。
理想毕竟是理想,Android 低端不好混,没什么经验跳到 framework 上去感觉也是挺难的,跳回 app 开发又不甘心,现在的状态貌似是干了快 3 年没有特别精通的东西。最*闹的裁员,我司也是其中之一。加薪怕是没戏了,然而生活还要继续,跳槽避无可避。
现状分析
移动开发已经处于饱和的阶段,Android开发也不如当年盛况,已经不再像前几年前那么火爆。正如一种编程语言如果经历过盛极一时,那么必然有这样的一条曲线,像我们学的正弦曲线先急速上升,然后到达顶点,然后再下降,最后再趋*一个*稳的值。
目前市场上初中级水*的开发人员已经供大于求,但是高级水*以上的技术人才还是很匮乏,特别是对于特定细分领域的Android开发人员也是很匮乏。很多公司会对某项特定要求优先考虑,比如现在流行的Kotlin,混合开发,跨*台开发,NDK,高级图像处理等,市场上很火爆的直播和小视频对音视频这个细分领域的高级人才需求量也是比较大的,以至于AI、AR、VR等技术也需要通过终端展示给用户,所以说移动端开发未来还是会有所作为。
职业发展
随着Android的发展趋于*稳,有些人对Android未来感到茫然,早在2010年市场上有大量Android招聘,基本懂一点Java基础的就可以搞Android,当时是移动互联网创业的高峰期,号称只要做个App就可以创业。“风来了猪都能找到工作,风停了最先摔死的都是猪”,如果你觉得找工作难,那一定是你在混日子,Android中高级以上的人才一直都非常稀缺。
只要在Android某一个领域深耕,做到极致,努力成为这个方向的专家,有精力再提升工程架构思维,软件工程思想都是相通的,境界会得到提升,即便再学习新东西也会非常快。
只要一个领域做到极致,即便有一天这个领域被淘汰了,换新领域面试官依然会相信你也能做到极致。千万不能用一年的工作能力混十年工作经历,否则你的市场价格连一年都不如,成为工作困难户。
方向
关于Android的发展方向这里我归类了如下几类:
1、应用层开发,不限于各种产品,主要还是Android原生开发,主要是各种性能优化。
2、嵌入式开发,不限于各种开发板子,物联网,智能家居,车联网/车载
3、安全开发,不限于各种反逆向,反汇编,寻找安全漏洞
4、音视频开发,不限于直播、点播、音视频通话、音视频会议,短视频等
5、插件化、组件化、热修复开发,不限于自研和使用开源框架集成开发
6、系统开发(Android),不限于Rom维护和FrameWork层定制需求
7、图形图像开发,不限于OpenGL ES,EGL,GLSurfaceView,滤镜,美颜
8、小程序 / 快应用
小程序是基于微信这个亿级流量入口所衍生出来的产品,而快应用,快应用是九大手机厂商基于硬件*台共同推出的新型应用生态。用户无需下载安装,即点即用,享受原生应用的性能体验,不过个人觉得,他已经凉凉了,小程序倒是挺看好的,腾讯这座大山,微信这座凉亭,你想不凉快都难,不过看你是否刚需,比如你公司有需求,那你可以去学习。
推荐学习的新技术,Flutter和Kotlin,这两个都是Google推荐的。
Flutter
Flutter是Google在2018年2月27日,在2018世界移动大会上发布的用以帮助开发者在ios和Android两个*台开发高质量原生应用的全新移动UI框架
由于是是Google发布的,就前景来看,还是值得肯定的。
Kotlin
Kotlin 是Google推荐的官方开发语言,与Java互通,可相互转换,简洁安全等,是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由JetBrains 设计开发并开源,
Kotlin 可以编译成Java字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。
如何选择
所以综上,真的别杞人忧天,沉下心来学好基础,提升技能比什么都重要,如果你找不到工作,只能说你学的还不够好,或者能力还不达标,并不能说明没有这个岗位的招聘,以个人能力的不行来否定整个市场的需求是弱者的行为!
至于还有很多人纠结到底是选择方向,我能给到你的建议是看你的兴趣所在,别纠结太多,学好了哪一个都能找到一份好的工作,先跟着你内心的感觉学好、学精一门,而且编程语言都是互通的,以后你都会有机会接触其他领域,目前第一重要的是全身心的投入你现在想要从事的职业上,吃饱饭比什么都重要!
以上就是我能给到的建议,不一定是对的,但是从我自身角度来说都是非常中肯的建议,至于怎么走,怎么选择,全凭自己!
干了快3年Android了,感觉自己的职业生涯已经快凉了的更多相关文章
- 《冰球撞击》Android休闲桌球类游戏现已面试,快来下载吧!
<冰球撞击>Android休闲桌球类游戏现已完工上市快来下载吧! http://pan.baidu.com/s/1dD9vIRv <冰球撞击>是一个类似玩投篮机操作方式的And ...
- 更快的Maven构建工具mvnd和Gradle哪个更快?
Maven 作为经典的项目构建工具相信很多人已经用很久了,但如果体验过 Gradle,那感觉只有两个字"真香". 前段时间测评了更快的 Maven 构建工具 mvnd,感觉性能挺高 ...
- Android学习路线总结,绝对干货
title: Android学习路线总结,绝对干货 tags: Android学习路线,Android学习资料,怎么学习android grammar_cjkRuby: true --- 一.前言 不 ...
- 一篇文章一张思维导图看懂Android学习最佳路线
一篇文章一张思维导图看懂Android学习最佳路线 先上一张android开发知识点学习路线图思维导图 Android学习路线从4个阶段来对Android的学习过程做一个全面的分析:Android初级 ...
- android app性能优化大汇总(UI渲染性能优化)
UI性能测试 性能优化都需要有一个目标,UI的性能优化也是一样.你可能会觉得“我的app加载很快”很重要,但我们还需要了解终端用户的期望,是否可以去量化这些期望呢?我们可以从人机交互心理学的角度来考虑 ...
- Android UI性能优化详解
设计师,开发人员,需求研究和测试都会影响到一个app最后的UI展示,所有人都很乐于去建议app应该怎么去展示UI.UI也是app和用户打交道的部分,直接对用户形成品牌意识,需要仔细的设计.无论你的ap ...
- Android学习路线指南
看到这位大牛的博文,不禁得感概,我最近也遇到了很多问题,内心彷徨不堪,转载大牛这篇博文,是为了更好的勉励自己.原文地址在最后面. 前言 看到一篇文章中提到"最近几年国内的初级Android程 ...
- 一篇文章一张思维导图看懂Android学习最佳路线(转载)
Android学习路线从4个阶段来对Android的学习过程做一个全面的分析:Android初级.中级.高级以及资深工程师.只针对Android应用开发,不针对Rom开发和逆向工程等.方便起见虚拟“小 ...
- (转)Android学习路线总结,绝对干货
一.前言 不知不觉自己已经做了几年开发了,由记得刚出来工作的时候感觉自己能牛逼,现在回想起来感觉好无知.懂的越多的时候你才会发现懂的越少. 如果你的知识是一个圆,当你的圆越大时,圆外面的世界也就越大. ...
随机推荐
- 试着给VuePress添加全局禁止爬取支持,基于vuepress-plugin-robots
背景 有时候,我们有些内部网站希望不被外部抓取,那么我们可以借助vuepress-plugin-robots来生成robots.txt文件,来告诉爬虫不要抓取页面. 安装 npm install vu ...
- 1、linux集群服务器规划
- 13、windows下卸载oracle
13.1.停用oracle服务: 进入计算机管理,在服务中,找到oracle开头的所有服务,右击选择停止: 13.2.删除oracle: 在开始菜单中,找到oracle->Universal I ...
- Docker与k8s的恩怨情仇(四)-云原生时代的闭源落幕
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 在本系列前几篇文章中,我们介绍了从Cloud Foundry到Docker等PaaS平台的发展迭代过程.今天 ...
- 关于TreeView的实例
前台代码 (只需要有TreeView控件, 添加ID,其他默认生成) <form id="form1" runat="server"> <di ...
- Cobra框架使用手册
cobra框架使用手册 cobra是go语言的一个库,可以用于编写命令行工具. 概念 Cobra 结构由三部分组成:命令 (commands).参数 (arguments).标志 (flags).最好 ...
- AcWing 242. 一个简单的整数问题
给定长度为N的数列A,然后输入M行操作指令. 第一类指令形如"C l r d",表示把数列中第l~r个数都加d. 第二类指令形如"Q X",表示询问数列中第x个 ...
- kali2020安装中文界面
1.安装中文字体:apt-get install xfonts-intl-chinese ttf-wqy-microhei 2.设置系统语言:dpkg-reconfigure locales 3.选择 ...
- Grafana、Prometheus、mtail-日志监控
一:日志如何监控 在上一篇博客Grafana.Prometheus-监控平台中,简单了解了Grafana与Prometheus对项目做特定的监控打点,可视化的配置操作. 但是对于没有设置监控或者不容易 ...
- 【记录】如何造一个vite插件(2)
上一篇已经把vite插件的基础结构搭建起来了,这一次就来聊聊继续完善开发环境. 完善开发环境 生成d.ts文件 先来修改一下lib/index.ts这个文件 export interface user ...