知乎热搜榜
2020现如今Android的地位
从最近的风向来看,Android 没凉,似乎还回暖了,不过不可否认,现在做 Android 确实比以前难过,其实每个行业发展到一定程度都会饱和,这都是属于正常情况.
如果你第一份工作是 Android,如今工作三四年,想必也会遇到技术瓶颈,无关 Android 是否没人要,也会思索考虑自己的职业发展:1、继续钻研技术?2、技术经理?3、转岗转行?
1.钻研技术
首先来看看 Android 有哪些方向,列举几个常见的:
- 应用层开发,日常业务开发,主要还是原生开发,就业方向基本饱和,大部分只招高级工程师;
- 游戏开发,相比应用开发更吃香,有 Unity-3D 等游戏引擎;
- 跨平台,比如 Flutter、RN,从成本上考虑,跨平台是个不错的选择,我们 Android 有必要密切关注下;
- 安全开发,一些对安全性很高,比如银行项目,熟悉 Https、支付密码安全、应用加固等;
- SDK 开发,将应用里的部分功能独立了出来,封装成 SDK 提供给合作伙伴使用;
- 音视频开发,比如音视频直播/点播功能,则需要了解音视频编解码的传输协议,编解码方式等;
- 图形开发,比如美图、天天P图,对图形处理要求十分高;
- Framework 开发,手机厂商定制手机为主,比如小米、魅族等;
- 驱动开发,同上,更多是在和 Linux 打交道;
如果你对技术感兴趣,想做到专家级别,可以在以上这些方面深究下去,总之,劳资有技术,不怕没饭吃。
如果你不知道怎么学习,我给大家提供一个方向,进行体系化的学习!
在体系化的学习过程中,博客、书籍、系列视频都是较好的学习手段。
鉴于Android也是基于java语言的,因此很多与java相关的基础也是必须掌握的,比如《深入理解Java虚拟机》、《Effective Java》等相关书籍也是必读的。
Android相关的书籍包括《Android开发强化实战》、《Android开发艺术探索》、《深入探索Android热修复技术原理》等,
如果你觉得自己看书太慢而且难以全部理解(书籍有PDF版本哦),博客不够系统,可以找一套进阶视频学习。没有的话我可以免费分享一套给你
今年整理了 一份阿里P7级别的Android架构师全套学习资源放在了我的【点击这里-GitHub 】里,特别适合有3-5年以上经验的小伙伴深入学习提升。
主要包括腾讯,以及字节跳动,华为,小米,等一线互联网公司主流架构技术。如果你有需要,尽管拿走好了。
2、技术经理?
01职能
- 对项目 :
领导与协调整个项目中的技术活动(分析、设计和编码等)。对软件的编码规范提出方案,对整个系统的编码工作进行约束,从而提高系统代码的可读性、运行的稳定性和兼容性等问题;向项目经理汇报团队负责进程;讲解技术背后的原理,甚至是背景;提高整体团队的技术水平,相当于技术上的决策者;推动主要的技术决策,负责组织团队成员进行项目涉及技术的可行性研究。
- 对管理 :
负责项目团队成员技术能力培养,对着重培养的人才分配相关任务锻炼甚至培训。
02能力
-
业务能力
作为项目技术的决策者和团队成员能力的培养者,自身必须要有绝对的技术水平,能够将疑难杂症一并解决,可以快速定位问题,高效率解决问题,提出质量规范方案。 -
管理能力
首先是团队领导能力,大家都知道每一个程序员的「心气」很高,除了自身技术过硬之外,也要在行为上少责怪多鼓励。不管是循循善诱还是威逼利诱,都应该让你的队员始终记得大家是一个team,完成自己的目标才能完成团队的目标。其次是时间管理能力,从工作内容上来看技术经理的活儿不仅多还杂,一边忙着项目开发一边还得寻思怎么带「学生」,如果不能安排好自己的时间则会让整个团队ace。
3、转岗转行?
我想跟大家说的是,无论你是转语言还是说你去转行,一定要考虑下面这三点问题:
1.不要跟风;
很多朋友因为现在做的开发岗位可能不是最火的,也可能不是最热门的,所以听到别人讲去做其他的语言。比如你是做Android开发的,看到Python、人工智能等等比较火,就考虑着自己是不是可以进行转型。你在转型之前没有考虑好,而是盲目的跟风,这个对自己的影响非常大。所以你在转型之前,一定要对自己做一个调查,自己到底转型是为了什么?是为了之前有这块的职业规划,还是说比较盲目。听到或看到别人在某一块挣到钱,而单纯的去跟风没有规划。那我不建议你强制的去转型。
2.你能够给自己多长时间的试错?
因为有许多的朋友可能是三十岁或者是二十七八岁,这个时候你在去考虑转型或者转其他语言,很可能是从一个坑跳动跳到另外一个坑。所以我们一定要考虑一个问题,就是我给自己多长时间是错时间。因为有一些互联网公司真的是明确的规定了,要求程序员的年龄是在35岁以下,如果我们在30岁的时候重新开始学习一门语言,或者是转行转型到计算机行业,成本是比较大,风险也比较高。
3.如果我们真的是想去学习一门语言或是转到一个新的行业中。
比如你是做程序员的,你想转行去前端或者其他的销售行业,甚至是公司的一些售前、软件销售、售后等这块。这块最好的方式是通过公司内部进行一个转型,这样对我们来讲风险相对较低一些,但还是有一定的风险。如果你一旦去转型要考虑的问题就是,在这家公司如果不太稳定,那么我们外出找工作的时候,你是选择继续之前的工作岗位还是新的工作岗位呢?
尾声+建议
选一个自己相对比较擅长的领域。
基础要 背!平时我并不太去留意要记住各种API,但是这里就是要背过。不然面试官就会想“这么简单的API都含糊不清还说擅长?”就是真的面试的时候记不清了,也不要打磕,要非常自信的说个差不多的,不要说“好像……”这样的话。要的就是自信,因为这个API面试官也不一定记得那么清楚。不过自己能背过才真的有底气。
试着去了解这个领域市面上的技术。一般的话就是一些库或者框架。这里要记住,不要急着去看源码,要先掌握这些技术都有哪些优缺点,尤其是缺点!因为我们经常因为一个库有什么优点而去使用它,但是缺点往往是我们容易忽略的地方。而知不知道这个库的缺点,是你能不能驾驭这个库的一个关键。
如果有时间的话,研究其中一个众所周知的库的源码。并试图找到它缺点的原因,并找到其解决方法。当然你如果正要准备面试了,肯定没有这个时间。那么就找一些现成的相关的文章来看看吧。然后记住。
如果你现在处于迷茫状态,不知如何进阶,不想学习,觉得学了也没用,学不了多久又忘记了。 以上这些问题出现多多少少会影响你学习的积极性。出现这些问题一定是你没有系统学习,或者遇到问题没有及时解决,问题堆积越来越多所导致的。在这里我也整理了一套专门针对Android程序员学习进阶的笔记+视频。如果你需要,我可以免费,免费,免费 分享给你!
-
由于简书限制网盘链接,在我主页扫描我的二维码,我免费分享给你
-
或者点击我的【点击这里-GitHub 】,里面有学习路线和我的一些学习笔记,觉得不错点个星哦!
网友评论