美文网首页Android进阶之路Android开发Android技术知识
身为程序员的你,成长经验是曲线还是直线?

身为程序员的你,成长经验是曲线还是直线?

作者: Z_萧晓 | 来源:发表于2020-03-02 17:05 被阅读0次

    今天来分享一位大佬(浪迹在)对程序员成长经验的分析及总结,希望大家都对自己目前的成长能有所思考及规划:

    技术成长

    这一讲想画两张图,来简单讲讲职场的技术沉淀曲线,以及一个人在这个过程中的心理图。成功人士走的大多数都是曲线,而我们习惯去直线的去看。

    他们的痛苦挣扎被我们主观的忽略,只为了突出他们成功的难得以及他们的本事。

    我们喜欢侥幸化的分析成功的故事,然后说服了自己,否定了自己可以成功,给自己的平凡找理由。而我这一讲想说的是,你只要有目标在前行,你就会迎接你的成功。

    成功不是一定要丰功伟业,成功可以很简单。从简单的加班领到薪资,吃了一次海底捞,从简单的接活,赚了一个手机钱。我们总是把成功看的比较远,也只是给自己够不着的理由。

    我想用这两张图,来反映一下真实的状态,一个技术人成长起来需要的时间投入,以及心理建设

    每个平凡的人都值得成功,当我们把时间拉长,就能看到,技术成长起来是经过了太多的波折,每个人都不是轻松赢得成功。

    第一张图

    以下是这一讲的第一张图:

    这里我标记了 1,2,3,4,5,6. 正常情况我们刚进入职场,是 1,2,3的某个状态,在职场积累了几年后,会进入重叠区域。这里我按照自己的职场经验,将其按照三年一个阶段来分。

    三个三年,九年,一般职场就进入到自己的天花板的状态,这时候还没有走到职场的巅峰(比如管理公司,创业,或者是合作),有了自己的人脉关系,以及生意网,能够从容的面对职场风险。

    从上图我们能看到,前三年的技术积累,不管是平凡的2,还是进入职场冲劲十足的1,以及慢悠悠工作的3,会在某个点重合,重合后才是决定你后期职场的走向。

    而往后走向是4,5,还是6,这个就是在重合点这个时间,你前三年的工作,到底给你沉淀了什么,什么是技,什么是术?想起之前做的 C trace32 分析,以及 MASM 汇编,反编译,perl 脚本, lua 脚本,bootloader 分析,ARM汇编,OBJDUMP工具。

    这些都是工具,都属于术的范畴。我不知道大家怎么去看一个新的语言,对于我来讲,学习这些新的语言,都有一些标准的套路,看下大概写法,看看数据结构,看看实战项目,然后运用即可。

    因为这些东西,都会变成以 ELF 可执行文件,或者是解析器的框架,在我这里所有的都归为 数据结构+算法。语言只是表征而已,不会触及到本质。

    当你把这些东西理解透彻,从细枝末节进入到架构思维里面去,就发生了迁移能力。类比是我们常用的技巧,而要迁移过去,就是要去掉那些枝叶,而提携主干。

    比如我从 C 语言项目,移植到 JAVA ,JAVA 移植到 js 。或者是 C 编译成 so 库,或者是 C使用 ARM GCC编译成嵌入式汇编,等等。一套源码,如果你不能把语言忽略掉,去理解它的设计模型,那么你会困在表象里面,技术做不到巅峰。

    你有没有发现一点,那些技术牛人,吸收新的知识也非常快,他能够精准的用几个提问,就把你所做的东西,快速的梳理出来。因为世界整个逻辑,都是在 MVC 这个逻辑里面。

    这个叫 输入,输出,控制。IOC,你现在想想,你所做的东西,都是由这几部分组成,而控制这里,是 数据结构和算法。

    当你三年工作之后,能够脱离本身的技术语言,沉淀出来商城的设计框架,它的数据库以及并发访问。把这个流程熟悉之后,什么语言都是表象而已,它不是阻力,用什么表示不影响你总结出来的实现理念,设计流程。

    我希望我们能够在重叠的地方,能够多思考,多输出,把这个基础拉长,沉淀出来。然后走向6的这个曲线。

    在讲完这个之后,大家会出现一个问题,我又没这个本事,你说的这个对,但是我做不到。于是我画了如下的另一张图,来说这个疑问。

    第二张图

    在大学时候,想进入计算机行业,就是想赚钱。而我是一帆风顺的吗?也不是。

    那个时候可以用走火入魔来描述,梦里能够想着问题,地址总线,中断,这些一个个谜团,搞得我一度怀疑自己可以不?

    我学习技术的过程,可以说就是上面这个曲线,学习 C51 ,从先学习概念,感觉自己懂了(成长区),然后也可以做项目了,觉得沾沾自喜(稳定区),然后我翻到了操作系统,以及 UNIX 系统开发,这个直接摧毁了我的自信,进入了焦虑区,焦虑区持续一段时间,就开始进入下一个阶段,成长区,稳定区。

    我觉得这个就是上面第一张图上面直线,或者曲线放大的细节化,我们都不是平坦的起飞,都是经历了不断地成长,坍塌,变成一个个核(可迁移的本领,比如理解操作系统,理解了数据结构)。

    当你进入焦虑区的时候,其实你已经开始了第二次的觉醒,这个过程看似痛苦,其实走出来就是涅槃。

    退缩只是让问题暂时藏了起来,而没有解决掉。**这个就如同我们解决问题,一直使用补丁的方式,最终的结果就是,后面的人看到代码,不知道为什么这么写,一堆已经注掉的注释,以及乱七八糟的人,补进来的变量。

    这个在公司里面叫做技术负债,你越往后用,越没法修复,但崩掉的几率越大,最终没法修复,而把项目做死。

    提前预知出现的问题,在使用中不断更新,迭代修正,同时迎难而上,系统化的解决掉问题,才是我们应该去做的。

    总结

    回到个人成长曲线,你会发觉一个问题,就是你看到别人的辉煌,其实也是由这些曲线叠加而成的,你需要的是设定自己的目标,知道自己也会迎来焦虑区,去克服它,解决它

    为什么伟人的故事都精彩纷呈,其实也是因为曲折而已。你只有最终走出困境,你之前的曲折,才有了承载的意义。

    这一讲核心就是让大家了解,成长过程大都一样,只是我们以为的不对而已,当你知道牛人也是这样出来的,你就有了榜样和目标。

    建立信念很重要,而这个我们每个人都可以做到的。希望看完这一讲,大家能够了解,一个人成长的曲线样子,然后再从自身出发,制定可执行的目标。

    Android学习路线资源分享

    最后小编想说:当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

    要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!

    道理其实大家都知道,但是实施起来就遇到了问题,所以这里我推荐最简单的方式:

    这里先给大家一完整的安卓晋升路线,话不多说,直接上干货:

    Java语言进阶

    • 泛型与注解在Retrofit中的应用
    • 多线程与Java File IO操作应用实战
    • Rxjava原理分析
    • JVM与内存泄漏原理解析
    • ClassLioader与反射在Hook中应用
    • 动态代理机制在源码中的应用

    高级UI与FrameWork

    • UI绘制原理
    • 动画原理
    • 事件响应机制
    • 屏幕适配
    • FrameWork源码解析
    • 相机适配

    360° Android app全方位性能调优

    • 从事件
    • 从内存
    • 卡顿调优
    • APP保活
    • 内存优化
    • 高性能编程实战
    • OOM原理解析

    Android前沿技术

    • 热修复/热更新
    • 组件化/插件化
    • RxJava深入研究
    • 图片与网络架构
    • Google I/O大会技术
    • Kotlin项目实操

    NDK 模块开发

    • C/C++基础
    • JINI编程基础
    • 图像处理与热修复应用
    • 音视频开发
    • OpenCV人工智能
    • OpenCL 图像绘制

    微信小程序

    • 小程序架构介绍
    • UI界面开发
    • 高级API实操
    • 微信对接实战
    • 任务清单项目
    • 电影榜单项目

    混合开发

    • Dart语法
    • Flutter线程运行模型
    • Flutter与Native通信架构
    • Flutter内存调优
    • Flutter项目实战

    最后,我再重复一次,如果你想成为一个优秀的 Android 开发人员,请集中精力,对基础和重要的事情做深度研究

    对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些架构技术希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。

    最后想要拿高薪实现技术提升薪水得到质的飞跃。最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以为了大家能够顺利进阶中高级、架构师,我特地为大家准备了一套高手学习的源码和框架视频等精品Android架构师教程,保证你学了以后保证薪资上升一个台阶。(以下是一小部分,获取更多其他精讲进阶架构视频资料可以关注【我的主页】或者【简信我】获取免费领取方式)

    当你有了学习线路,学习哪些内容,也知道以后的路怎么走了,理论看多了总要实践的。

    以下是今天给大家分享的一些独家干货:

    Android学习PDF+架构视频+面试文档+源码笔记

    【Android开发核心知识点笔记】

    【Android思维脑图(技能树)】

    【Android核心高级技术PDF文档,BAT大厂面试真题解析】

    【Android高级架构视频学习资源】

    Android精讲视频领取学习后更加是如虎添翼!进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!

    【Android进阶学习视频】、【全套Android面试秘籍】关注我【主页简介】或者【简信我】查看免费领取方式!

    最后送大家一句话,人生每个阶段都有每个阶段该干的事,你当下能做的就是踏踏实实做好现在的事,最好你能比你身边的人更努力些,不用太着急,你想要的,岁月都会给你!

    相关文章

      网友评论

        本文标题:身为程序员的你,成长经验是曲线还是直线?

        本文链接:https://www.haomeiwen.com/subject/gzdvkhtx.html