我的一些感悟
首先我想先送一句话给大家:世界上没有永远的铁饭碗,每个人都要有危机意识。这句话时常激励我,人生不进则退,特别是像我这种不是名牌大学毕业的2本渣校出来的程序员,在这个高学历的圈子里,我必须不断奔跑,我才能站在原地。
记得刚刚出来的那会,感觉已经经历了人生所有的绝望,不要说像BAT这样的大厂看不上你,(学历这块就被打下去了,连面试的资格都没有)就连不知名的小厂也不收。(没有经验,学历还不高)当时就觉得要不放弃好了,回家继承一下爸妈的小饭馆得了。好歹不会四处碰壁,看人脸色。但是可能是我比较幸运吧,在我面试第30家公司,终于拿到了一个小公司的Offre,于是我终于挤进了全是大牛,高学历群集的圈子里。接下来进入正题:
现在BAT大量裁人,真的天天担心受怕,怕下一个就是我,我应该怎么做?
行业前景
首先我给大家分析一下,现在行业的一个情况。
2018年IT界规模最大的裁员事件了。近日,面对难看的财务报表,美国最大的通讯运营商、市值2200亿美金的Verizon,遣散了4.4万名老员工。 在国内,解决了80%就业的中小企业也遭遇了新一轮生存困境......社会很残酷,追求稳定的人都被时代抛弃,有远见的人,早已给自己安排了后路。 Verizon,美国最大电信运营商,在美地位类同于中国移动在中国。 近日Verizon传出裁员44000人的消息。裁减波及总员工的30%以上,主要针对“长期员工”,即那些为公司效力了多年的中年人。
从2018年开始,互联网裁员辞退已成趋势,这股阴霾笼罩着很多IT行业的人。
到了2019年,包括京东、滴滴、知乎、人人车等很多知名互联网公司都在大批量裁员。
到现在的2020,500强的华为任老板说,宁可赔上10亿元也要辞掉7000名35岁以上的老员工。
互联网行业,曾经的热火朝天,似乎又即将迎来新一轮寒冬,有人说,今年是过去五年最困难的一年,也是未来十年最好的一年,如果成为事实,那将意味着还会有越来越多的互联网从业人员面临失业。
作为普通的程序员,也很难抵御互联网辞退的浪潮,面临困难的局面,应该主动学习,掌握一些技能,提高核心竞争力,才不至于被淘汰。
如何面对这个危机
那么我们,作为普通的程序员,我们该如何面对互联网裁员浪潮的危机?
1.努力学习,提高核心竞争力。
如果在公司有自己的核心竞争力,在部门甚至一个行业里有自己的话语权,公司在这方面只有你能行,有了这方面的核心竞争力,即使公司要裁员,也绝对不是第一个裁的是你。
2.学习一项技能,成为自己的副业。
如今很多人除了做好本职工作之外,依靠本职工作工作带来收入,同样也充分利用自己的业余时间学习一项技能,甚至让这项技能变现。像写作、微商等等。
3.有温水煮青蛙的意识
我的表弟大学就读的是一所普通的本科,211都算不上,学的正是编程专业,出来干的也是编程程序员这一行。但他并没有因为不是名校出身就放弃努力,而是除了认真学习本专业知识之外,他依靠自己的刻苦勤奋,大学期间收入就不菲。
从大一开始,就靠着发传单、带家教和服装店仓管等兼职,经济处于半独立的状态,家里基本不用给他多少生活费,真正让他改变的是参加学校的PPT制作大赛,虽然没有获奖,但激发了对PPT设计的强烈兴趣。
从此一发不可收拾,他决心要做出高质量的,让人称奇的PPT,功夫不负有心人,从大二开始,就靠着PPT赚钱,他把自己的作品放到网上,很多公司慕名而来找到设计企业PPT模板,大二那一年,他的个人生活费就完全独立,大三,靠着自己的PPT技能赚到的费用参加了学校组织的英国访学计划。
等到大四很多人都在忙着寻找工作的时候,他已经提前拿到了字节跳动的offer。如今在公司依然是一名程序员,但业余时间靠着ppt技能作为副业,收入非常可观。
表弟常说,即使自己不幸成为被裁大军的一员,也能靠副业养活自己。
总之,当互联网裁员大潮来临时,抵御这个浪潮最好的办法就是加强学习,一方面提高自己的核心竞争力,另一方面学习一项技能,让自己即使在失业的时候,还有机会靠自己的“副业”养活自己。
所以说,生于忧患,死于哀乐。老祖先的话,都值得让我们深思啊。
尾声
我们都很渺小,在宇宙中甚至比不上一颗尘埃,可是人为何称之为人,就是因为人懂得思考,知道学习的重要性。并且随时愿意改变自己,重新出发。我们一生都在忙忙碌碌,为自己而活的时间太少太少,努力奔跑不仅仅是为了活着,更多的是实现我们自己的理想与报复。存在即为意义,我希望大家能跟我一样坚持,你不知道下一个黄金浪潮在哪里,但是只要你在里面,总会赶上的啊!下一个Android辉煌的时刻可能就在明天呢?
Android进阶
目前我们要做的就是选好自己细分领域深入研究,对基础原理性内容深入理解,尽快向高级水平靠近并达到。当然也要了解新技术,拥有开放的心态去学习一些新技术,不要一开始出来一个新技术就转入学习,这样会导致啥都会一点啥都不会,当然新技术是有一个发展过程的,不会立马流行和大量应用等它稍微成熟点。
这样你会少踩很多坑,也不要排斥它,完全不去理会和了解学习,正确的方式是简单了解这个技术产生是为了解决什么问题,有什么优缺点已经目前发展成熟度和应用范围,我们还是要多抓住技术的本质和基础,这样出现了新技术学起来也会很轻松,当然机会合适了再去学习它。 所以,找准自己的定位及细分领域。
这里我归类了如下几类:
1、应用层开发,不限于各种产品,主要还是Android原生开发,主要是各种性能优化。 2、嵌入式开发,不限于各种开发板子,物联网,智能家居,车联网/车载。 3、安全开发,不限于各种反逆向,反汇编,寻找安全漏洞。 4、音视频开发,不限于直播、点播、音视频通话、音视频会议,短视频等。 5、插件化、组件化、热修复开发,不限于自研和使用开源框架集成开发。 6、系统开发(Android),不限于Rom维护和FrameWork层定制需求。 7、图形图像开发,不限于OpenGL ES,EGL,GLSurfaceView,滤镜,美颜。 8、小程序 / 快应用
小程序是基于微信这个亿级流量入口所衍生出来的产品,而快应用,快应用是九大手机厂商基于硬件平台共同推出的新型应用生态。用户无需下载安装,即点即用,享受原生应用的性能体验,不过个人觉得,他已经凉凉了,小程序倒是挺看好的,腾讯这座大山,微信这座凉亭,你想不凉快都难,不过看你是否刚需,比如你公司有需求,那你可以去学习。
推荐学习的新技术,Flutter和Kotlin,这两个都是Google推荐的。
系统的学习增强效果
自己去制定系统的一个学习计划可能是比较难的,所以文章最后我给大家准备了一份系统的学习思维导图,还有相关的学习资源,这些资料也都是我开发这么多年一点一点的累积整理出来的,今天完全无偿的分享给大家就是想今年寒冬我们程序员能好过一点,希望大家都能工作顺利,事业有成。
首先是超级详细得不能再详细的Android开发学习思维导图,因为图片实在是太大了,所以我就只把二级目录的内容放出来,更加详细的你们可以主页扫微信二维码获取。
接下来就需要梳理知识,提升储备了!
- 架构师筑基必备技能:深入Java泛型 注解深入浅出 并发编程 数据传输与序列化 Java虚拟机原理 反射与类加载 动态代理 高效IO
- Android高级UI与FrameWork源码:高级UI晋升 Framework内核解析 Android组件内核 数据持久化
- 360°全方面性能调优:设计思想与代码质量优化 程序性能优化 开发效率优化
- 解读开源框架设计思想:热修复设计 插件化框架解读 组件化框架设计 图片加载框架 网络访问框架设计 RXJava响应式编程框架设计 IOC架构设计 Android架构组件Jetpack
- NDK模块开发:NDK基础知识体系 底层图片处理 音视频开发
- 微信小程序:小程序介绍 UI开发 API操作 微信对接
- Hybrid 开发与Flutter:Html5项目实战 Flutter进阶
知识梳理完之后,就需要进行查漏补缺,所以针对这些知识点,我手头上也准备了不少的电子书和笔记,这些笔记将各个知识点进行了完美的总结。
然后再是通过源码来系统性地学习
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。
刷大厂面试题备战,增加大厂通过率
历时半年,整理了这份市面上最全面的安卓面试题解析大全。
1.可以通过目录索引直接翻看需要的知识点,查漏补缺。 2.五角星数表示面试问到的频率,代表重要推荐指数
以上内容均放在了开源项目:【github】 中已收录,里面包含不同方向的自学Android路线、面试题集合/面经、及系列技术文章等,资源持续更新中...
最后:一点心里话
如果你的水平接近达到高级水平,有信心快速达到高级水平,那就按照高级水平的技能点和市场招聘的高级要求对照靠近,一步步达到这个水平。
如果你的水平还是初级入门水平,或者兴趣度不是很高,想早点转换,你可以快速转变,因为在正确方向上努力太重要了,这里也建议不要跨度太大,这里我推荐往大前墩或者产品方向转变,当然前提是你有这方面的兴趣。
当然上面讲的都是技术方向上的发展,当然对一些技术栈水平和技术积累到一定程度后你也可以往技术管理和产品方向发展,当然你也可以选择创业,如果你有足够好的idea和心理准备。
当然大部分人停留在中高级水平,然后一直停滞不前,加上外部各种环境,产生了各种焦虑,所以很矛盾,这时候你最好的状态是快速往高级水平发展,当然这里是比较难的,这个坎也是比较难迈过去的。因为Android知识体系比较庞大和复杂的,涉及到计算机知识领域的方方面面。