这是最近华为内部论坛很火的一篇文章。
“内卷化”是近几年来中文网络上特别流行一个词,一般用于形容某个领域中发生了过度的竞争,导致人们进入了互相倾轧、内耗的状态。
直观地说,内卷就是“向内演化”。更宽泛一点说,所有无实质意义的消耗都可称为内卷。生活中许多重复的工作,貌似精益求精,大家按部就班,埋头苦干,但只在有限的内部范围施展,不向外扩张,这就是内卷。
聊到内卷,其实IT行业也是一个比较容易出现内卷的行业。知乎上,有个500万+浏览的程序员热帖:程序员未来会成为非常内卷的职业吗?
程序员基本在前三年工作里就掌握基本编程技术,剩下的是在重复 CURD。技术迭代速度很快,很多人龟缩在大公司舒适区中安稳工作,但没有进步就是一种落后了,自然在市场上也毫无竞争力。
硅谷社交网络Hackers/Founders的创始人 JonathanNelson 说过:“如果你已经在一家大公司工作超过10年后遭到解雇,那么你的技术将会落后六个时代。”
那么该如何避免被淘汰?提高自身竞争力。
内卷告诉我们,表面的精细、复杂、讲究不等于高级,更不等于先进。只有站在更高层次上的不断向外突破、创新和创造,才能不让那种精致的、繁复的、看起来特别敬业的内卷化状态困扰我们,才能回归到向上勃发的新常态上来。
幸好很多程序员已意识到这一点,目前很多开发者持续学习的主要路径靠自学,也有一些程序员自学一门新语言、框架或工具。
具体来说,想进大厂拿高薪的小伙伴应如何更好地“刷新”自己技能呢?大家先来看看小编对5家互联网大厂Android开发工程师招聘JD的解读。
腾讯:
爱奇艺:
华为:
阿里巴巴:
美团:
大厂Android开发工程师招聘JD解读从上图的JD解读可以看出,最核心的就是精通Java语言,然后在此基础上配备其他技能。但大家往往会遇到一个问题:自己掌握的程语言能力还不能够匹配上大厂的标准。
在我看来,造成这种情况的原因,主要有这么两方面:
第一,没有清晰的学习路径,知识碎片化,不成系统。
大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。
如果你的知识是一个圆,当你的圆越大时,圆外面的世界也就越大。
首先要绘制或者找一张Android 学习的思维导图,这才能系统的去学习,这里分享一下我这些年工作整理的学习思维导图:
第二,缺乏如编程能力,编程思想,算法能力,架构能力胜任。
一位能够达到2W薪资的程序员对算法的要求我觉得还是比较低,再高级也最多红黑树,但是排序和查询的基本算法得会。编程思想是必须的,问你个AOP和IOC你起码的清清楚楚,设计模式不说每种都用过,但也能了解个几种。
编程能力并不好直接评价,但是拿一个2000W用户根据姓名年龄排序这种题目也能信手拈来。最后就是架构能力,这种不是说要你设计个多牛逼多高并发的系统,起码让你做一个系统,得有一个明确的思路和方向。
进阶学习,跳出内卷
为了让大家少走弯路,小编针对大厂面试中Android常见问题做出了一系列全面整理,包含Java基础、性能优化和Android面试题精选等内容,让小伙伴们先将主要的应用方向知识点都了解、学习一遍,从而建立编程思维、扎实编程能力,确定学习路径建立完整的知识框架。
对此上面的Android系统学习思维导图,我这边给大家整理了一套学习宝典!
- 模块化学习资源
接下来是每个模块我整理出来的文档学习资料,帮助大家更细致化的学习。
《Android汇总复习资料—Java》
《Android汇总复习资料—Android》
《Android汇总复习资料—Android扩展》
《Android汇总复习资料—Kotlin》
《Android汇总复习资料—Flutter》
《Android汇总复习资料—算法》
除了上面的学习路线,还可以额外的配合以下方式学习,效果翻倍~
Android进阶学习
①看视频进行系统学习
前几年的Crud经历,让我明白自己真的算是菜鸡中的战斗机,也正因为Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去B站进行学习,B站上有很多学习视频,唯一的缺点就是免费的容易过时。
另外,我自己也珍藏了好几套视频,有需要的我也可以分享给你。
②读源码,看实战笔记,学习大神思路
“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。
主要内含微信 MMKV 源码、AsyncTask 源码、Volley 源码、Retrofit源码、OkHttp 源码等等。
③面试前夕,刷题冲刺
面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。
关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:
④2020大厂面试高频知识点
- 图片
- 网络和安全机制
- 数据库
- 插件化、模块化、组件化、热修复、增量更新、Gradle
- 架构设计和设计模式
- 性能优化
- Android Framework
- Android优秀三方库源码