GDP大跳水,“溢价阶层”的程序员大家都还好吗?
这两天,一季度经济数据出炉了!
看起来,有点触目惊心——一季度GDP同比下降6.8%,创下40年来新低,仅为20.65万亿。
对GDP增速的大跳水,对GDP增速创纪录的下滑,不做过多解释。
主要原因无非有二:
1.国内疫情冲击远超预期,一、二月份企业普遍无法复工;
2.全球疫情冲击远超预期,供应链断裂、以及外需休克,这对中国经济同样有负面影响。
这还仅仅是开始!
GDP增速,在可见的未来,仍将不甚乐观。当下,全球疫情仍在发酵,“去全球化”也将成为未来二三年的趋势,由此,我们基本可以确定,今年全年的GDP增速很难为正,2021年和2022年的GDP增速会有反弹,但也主要缘于2020年较低的GDP基数。
宏观讨论过多无益,还是讨论一下更为具象的,与我们每一个程序员息息相关的。
经济增长受挫,谁的日子更难过?
从薪资的角度讲,“溢价阶层”的日子更难过!
“溢价阶层”,是我自设的一个名词,与“溢价资产”有点类似,都是基于对预期的乐观,给予了一定的溢价估值。
在过去10年,从薪资的角度,互联网和科技巨头的员工,几乎都是“溢价阶层”,比如腾讯、华为的员工,平均薪酬都在60万+的,即便仅是中型的互联网和科技公司,员工的平均薪酬也至少得在30万+的。
在经济增长受挫、且预期不乐观之下,高薪资行业的员工,则属于典型的“溢价阶层”,其降薪和裁员的力度,恐将更大。
自新冠肺炎疫情爆发以来,全球各行各业关于“裁员”的消息不绝于耳。前有360,后有大疆、携程等“大厂”均被传出降薪裁员的消息,对属于典型的“溢价阶层”来说,裁员、降薪正在发生。
360优化事件
大疆无人机在 2020 年疑似悄然进行大规模裁员
电商蘑菇街裁员14%
据多家媒体报道, 时尚电商蘑菇街(NYSE: MOGU)已于4月17日向全体员工宣布新一轮裁员计划。
和这些被裁的程序员相比,还有一波更痛苦的人,大批年前裸辞的程序员,春节期间突然遇到了新冠疫情的爆发,至今赋闲在家。正翘首以盼offer!
更有甚者,很多从事Android开发的朋友,都在感叹时运不济!
“感觉安卓有点强弩之末的感觉,我该怎么搞,换行业吗,你知道有其他同学想转行的吗?”
大多数Android开发的朋友都对自己的职业和未来感觉迷茫。
针对这种情况,说白了就是技术水平和发展方向的问题。实力不够强,也没啥方向和规划,找得到工作才怪。
道理很简单,但是实行起来困难却很大。如果想逼着自己去读源码,学习一些主流的技术。但是受到小公司的技术栈和视野格局的束缚,根本不知道应该学什么!或者不知道学了有啥用。
更多情况是这样子:
CV就完事了,为什么要花那么多时间精力去读源码弄懂原理?
组件化开发,NDK开发,插件化等,我们公司又用不到,学了也用不上
站在第三方视角,你是不是看明白了为什么大多数Android开发只能待在小公司上不去了呢?
Android开发者该如何提升自己?
说说我的两点建议:
1、横向发展:(适合有自己专精技术的人)
在自己擅长领域深入钻研的同时,会Hybrid开发(Flutter,RN,H5)之外,会web开发、微信小程序等,再过5年你也完全不用担心找工作。但是,这确实比较难,全栈容易发展成全菜,就是啥都知道,啥都不精!
2、纵向发展:(适合大多数人)
如果做应用开发,就往应用架构方向发展;如果做系统层开发,就钻研底层驱动。
可以从以下这些方面进行学习:
移动架构:
架构展示层:MVC、MVP、MVVM、Android Architecture Components;
架构层:模块化->组件化->插件化->沙盒/双开技术;
基础进阶:
比如高级自定义View、Android Framework层原理, App 管理机制等等;
JNI 和 NDK 开发也是比较常见,5G来了,招聘单位都在给自己公司规划小视频功能,然而我们却连NDK都不懂;
学习开发语言:
比如Kotlin,做底层C/C++是必不可少的,还有一个最容易忽略的 Java语言本身的高级面向对象思想;
源码:
看懂并且熟悉源码,熟悉其实现原理,争取做到能自己二次封装三方库。
学习方向很容易规划,但是如果只通过碎片化的学习,对自己的提升是很慢的。
Android进阶需要学习哪些技术?
我搜集整理过这几年阿里,以及腾讯,字节跳动,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android架构师”面试 Xmind(实际上比预期多花了不少精力),包含知识脉络 + 分支细节。
Java语言与原理:
高级UI:
性能调优:
NDK开发:
前沿技术:
从我搜集整理中了解的信息,这些技术熟练掌握的开发者,国内任何一个大城市到手薪资都在40W以上。
而对于在职阿里,腾讯这种巨头公司,除了技术过关,还具备管理能力,并且职称不低的(比如阿里P7),年薪更是在百万以上!
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。建议你先制定学习计划,根据学习计划把知识点关联起来,形成一个系统化的知识体系。
我在搭建这些技术框架的时候,还整理了系统的高级进阶教程,会比自己碎片化学习效果强太多,石墨文档可见:
[阿里P7级Android架构视频+BAT面试专题PDF+学习笔记]
搭建知识框架很重要
我们在学技术的时候,如果没有注重搭建知识框架的话,学到后期的话你就会遇到一个问题,就是会感觉到自己之前学习的知识很乱,不成系统,再加上行业技术更新很快,越往后自己学习的知识会越来越多,而之前的学习又是零散的自己没有整理的,你就会感觉自己所掌握的这些知识是散乱的。
就好像很多点,线可能已经连接成了,但是就是组不成一个面。当我们做一个大一点的项目,需要熟练用到很多相关技术面,甚至会用到组件化技术。如果你长期只使用一些常用的技术点,那么你可能还有很长一段时间要待在小公司搬运代码了。
怎么样搭建知识框架呢?
这里分享的方式是看视频教程来搭建知识框架,很多技术大佬总结出来的非常好的方式。
这是个通用的方式,可能更加适合那些技术处于初级到中高级阶段的朋友,当然,这里我说一点,我发现在很多看视频学习的朋友经常会犯这样的一个错误,就是对视频教程的欲望很强导致的松鼠病,什么意思呢?就是很多朋友到处找视频教程,然后各种囤积,顶多是这个看看,那个看看,感觉这个也好那个也好,于是这个也想看,那个也想看,导致的最终结果就是,视频教程倒是收集了不少,可是没有一个真正的看完过,你说,你是不是就是这样的?
其实这就是学习技术的一大禁忌,它会严重的欺骗你,让你觉得自己学的很多,实则不仅学的很少,而且还拖慢了你的提升的进度!我告诉你啊,关于视频教程,找一套差不多的就行,就这市面上流传的一些培训班的视频教程,其实都大差不差,只要不是年久失修的那种都行,要知道这就是培训班的啊,所以用来搭建知识框架很合适,找一套就行了,多了没任何好处,现在听我的,看看你收藏的资料里面是不是有好几套同类型的视频教程,听我的,留一套,其他的都删除吧!
记住,只留一套用来搭建知识框架,只留一套,一套,就一套(如果你没有的话,就用我上面分享你的那一套很不错)然后你就靠这套视频教程来搭建知识框架。
那么有了这么一套视频教程之后,又该如何去做呢?
这个你要知道,一般这些视频教程都是按照知识点的从前到后,从浅到深的按阶段讲解的,所以你完全可以按照这个视频教程里讲解的顺序去搭建这个知识框架,在搭建知识框架这块,我看到很多人使用思维导图来搭建,我上面也是这种方式,把各个知识点都整理到思维导图上。
找到配套的学习教程,把每个技术点都填上,效率就会特别高。这样你的知识框架才算真正的搭建完成!至此,你向高级工程师迈出了最重要的一步。
最后
回到开头的事情;
“三十年河东,三十年河西。等我技术能力上去了,那个傻x老板加薪我也不会回去了!”
“那个时候,你也看不上那么小的公司了吧?”