先帝创业未半,我就先中道崩殂了。35岁的“老头子”,确实比不了你们后生仔!
板上钉钉
程序员能干一辈子吗?极少程序员能干一辈子,这是铁定的事实。
不光程序员,很多行业,都没办法干到退休,程序员只是其中之一而已。士兵也不可能当一辈子当基层士兵到老,模特也不能一辈子都走T台,夜总会小姐也不可能“干”一辈子接客…大家都有需要退下来的时候,所以,心态要放好,改变不了的客观事情就要接受,然后好好想想解决办法。
程序员说到底就只是资本的工具人。帮助老板开发需求,这是一个帮人解决问题的行业,我们就是拿人钱财,替人消灾的岗位。既然是一个解决问题的行业,我们想一直干,就得一直保持自己具有解决问题的能力。
方法有很多,持续编程只是其中之一,还可以转到管理岗,带人解决问题,还可以变身产品经理、项目经理,从其它角度去解决问题。保持自身的竞争力是持续干下去的前提。
另一个前提是,公司还能不能继续招我们做工。跟猎头打过交道的小伙伴应该有所耳闻,有些公司,已经不再招收超过35岁以上的基础开发岗人员。注意这里的措辞,是超过35岁的基础开发岗。 那其它岗位呢?比如专家岗、架构师、管理岗?这些岗位都是不受年龄影响的。
未雨绸缪
但现实中,哪里那么多专家岗、管理岗给我们,还是会有大部分小伙伴进不去的。进不去也没关系,小公司混混也是可以的。但小公司还有另一个问题,就是不稳定,很容易晚上还在熬夜加班,隔天公司就没了。
而且随着年龄的增大,我们本身的需求在逐渐的增加,对金钱的开支,对精力的消耗都在增大,这时的我们更需要稳定的工作、高额的收入来支撑我们的生活。
所以,就有人说程序员是一个非常有意思的行业。在我们年轻时,本不需要那么多钱,却给我们很高的收入,供我们吃喝玩乐。等我们上了年纪,真正需要钱了,这个行业,却对我们并不是那么友好。
但我却觉得,程序员是一个很好的职业。它能让我们很快的积累起财富,身为程序员,我们具有实现自己想法的可能性。程序员是我所有接触过的圈子里年入百万、财务自由人数最多的职业。就算真的想转行,只要知道门道,还是能提前摆脱程序员这个行业,这里需要做的就是提升自己的认知。
摆正心态
如果你打算做一辈子程序员,那就需要摆正心态,保持自己的竞争力。能提前进到大公司做管理、做专家当然是好事。即便进不去,有个提前预知,知道在年龄大了以后,被人挑肥拣瘦是常事,能承受委屈受气,或许也能安稳过到四五十岁。
职业现状就是这个现状,没办法变改职业,就只能想办法改变自己。自我审视,持续学习,做好规划,以10~20年的职业生涯为基础,未雨绸缪。不要等到40岁还在到处投简历面试,家里等着米下锅,那就太被动了。
不过,人总是要以发展的眼光看问题,社会在发展,时代在进步,说不定等20年后,程序员就不是青春饭了。这里把王小波的一段话送给朋友们:
那一天我二十一岁,在我一生的黄金时代。我有好多奢望。我想爱,想吃,还想在一瞬间变成天上半明半暗的云。后来我才知道,生活就是个缓慢受锤的过程,人一天天老下去,奢望也一天天消失,最后变得像挨了锤的牛一样。可是我过二十一岁生日时没有预见到这一点。我觉得自己会永远生猛下去,什么也锤不了我。
绵薄之力
我自己已经32岁了,跨过年3月份就是自己33岁的生日,再过2年,就是传说中的35岁“大限”。在程序员这行业已经摸爬滚打了将近10年的时间,3年java,7年Android至今,字节跳动架构师这个位置应该能让我撑到40岁吧!不过也已经在经营了一些副业,也算是给自己留个“后手”。至此,做为一名Android开发者,接下来我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名Android高级开发者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!
- 架构师筑基必备技能
目前Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。
知识要点:
1、深入理解Java泛型
2、注解深入浅出
3、并发编程
4、数据传输与序列化
5、Java虚拟机原理
6、高效IO
- 设计思想解读开源框架
随着互联网企业的不断发展,产品项目中的模块越来越多,用户体验要求也越来越高,想实现小步快跑、快速迭代的目的越来越难,插件化技术应用而生。如果没有插件化技术,美团、淘宝这些集成了大量“app”的应用,可能会有几个g那么大。
所以,当今的Android移动开发,不会热修复、插件化、组件化,80%以上的面试都过不了。
知识要点:
1、热修复设计
2、插件化框架设计
3、组件化框架设计
4、图片加载框架
5、网络访问框架设计
6、RXJava响应式编程框架设计
- 360°全方位性能调优
在不同层次的开发工程师手里,因为技术水平的参差不齐,即使很多手机在跑分软件性能非常高,打开应用依然存在卡顿现象。
另外,随着产品内容迭代,功能越来越复杂,UI页面也越来越丰富,也成为流畅运行的一种阻碍。综上所述,对APP进行性能优化已成为开发者该有的一种综合素质,也是开发者能够完成高质量应用程序作品的保证。
1、设计思想与代码质量优化
2、程序性能优化
- 启动速度与执行效率优化
- 布局检测与优化
- 内存优化
- 耗电优化
- 网络传输与数据储存优化
- APK大小优化
3、开发效率优化
- 分布式版本控制系统Git
- 自动化构建系统Gradle
4、项目实战
- 启动速度
- 流畅度
- 抖音在APK包大小资源优化的实践
- 优酷响应式布局技术全解析
- 网络优化
- 手机淘宝双十一性能优化项目揭秘
- 高德APP全链路源码依赖分析
- 彻底干掉OOM的实战经验分享
- 微信Android终端内存优化实践
- Android框架体系架构
Android框架体系架构(高级UI+FrameWork源码) 这块知识是现今使用者最多的,我们称之Android2013~2016年的技术。
Android开发者也往往因为网上Copy代码习惯了而导致对这块经常“使用”的代码熟悉而又陌生:熟悉的是几乎天天在和它们打交道, 天天在复制这些代码 ;陌生的是虽然天天和这些代码打交道,但是并没有深入研究过这些代码的原理,代码深处的内涵。
本篇知识要点:
1、高级UI晋升
2、Android内核组件
3、大型项目必备IPC
4、数据持久与序列化
5、Framework内核解析
- NDK模块开发(音视频系列)
NDK(Native Development Kit缩写)一种基于原生程序接口的软件开发工具包,可以让您在 Android 应用中利用 C 和 C++ 代码的工具。通过此工具开发的程序直接在本地运行,而不是虚拟机。
在Android中,NDK是一系列工具的集合,主要用于扩展Android SDK。NDK提供了一系列的工具可以帮助开发者快速的开发C或C++的动态库,并能自动将so和Java应用一起打包成apk。
本篇知识要点:
1、NDK开发之C/C++入门
2、JNI模块开发
3、Linux编程
4、底层图片处理
5、音视频开发
6、机器学习
- Flutter学习进阶
2019 年无疑是 Flutter 技术如火如荼发展的一年。
每一个移动开发者都在为 Flutter 带来的“快速开发、富有表现力和灵活的 UI、原生性能”的特色和理念而痴狂,从超级 App 到独立应用,从纯 Flutter 到混合栈,开发者们在不同的场景下乐此不疲的探索和应用着 Flutter 技术,也在面临着各种各样不同的挑战。
本篇知识要点:
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门
…
- 微信小程序开发
微信小程序作为现在比较火的编程开发应用场景之一,深受市场的青睐,这让不少开发者眼馋不已。但是对于初学者来说,就完全摸不着头脑了,不知道微信小程序开发制作需要学习那些知识,有需要的朋友可以参考本篇。
本篇知识要点:
1、小程序概述及入门
2、小程序UI开发
3、API操作
4、购物商场项目实战
- Android相关源码解读
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
由于篇幅原因,以上完整学习笔记pdf如有需要,可以 点赞+评论 支持下这个快要崩殂的老伙计,然后点击这里免费自取!
转载:https://blog.csdn.net/star_nwe/article/details/113400184