作为一名干了十年Android开发的过来人,给后辈的一点建议

本人普通二本毕业去的一家小公司,一年后去了某知名大厂, 后来继续在大厂之间跳槽 。如今已娶妻生子 买房定居。这几年经历过面试,买房,学车,结婚,生子,职业沉淀。也算是真正领悟到了编程到底有什么意义!编程的意义这个话题留到以后再谈。

每年都有无数年轻的程序员,加入软件行业。他们在学校里学过编程,但是对这个行业的现实一无所知,我今天介绍这个行业的一些实际情况。这几年自己在技术博客沉淀很多技术。其他方面也算成功,至少和同龄人和自己起点一样本科生来说,作为过来人有几点说一下:

一、做一个程序员,不是码农。

码农的工作和搬砖没什么区别,就是把一些模块拼到一起,有问题了就东修西补,程序能跑通就不错,只会用教过的一两种技术。

做个码农很容易,天天改改Bug 水水群 ,编程5的分钟 扯淡两小时。就是说的是码农。但程序员是个长期的职业,你在学校学习的是编程的思想、解决问题的逻辑、持续学习的能力。

重视基础课程,深入学习一两门语言和技术,理解透彻了,以后学习别的新技术自然触类旁通。没事看看就行,别去跟风凑热闹。你上的是大学,不是技能速成培训班。

总结一句, 码农喜欢说颠覆 喜欢说取代 更喜欢扯布道者。天天喊着新技术。程序员专注基础能力,谈业界影响,说贡献,谈价值。

二、短期不要高估自己,长期不要低估自己

绝大多数人都会犯的错误就是“短期高估自己,长期低估自己”。除非你天资聪慧,否则别想着大一就捣鼓出什么牛逼程序来一鸣惊人。

学编程的过程会经历数个瓶颈期,中间你也许会数次感到万分绝望,甚至开始怀疑人生。但你要相信,只要坚持写下去,瓶颈总会突破,成为一个超越平均水准的职业程序员是没有什么大问题的。

毕业三年拿到15到20k 的人不少,不代表你牛逼,因为行业曲线就这样。但是你想6年拿60k 确实没几个人,毕竟50w年薪是大部人的天花板,所以也别灰心 。

三、少说废话,多写代码

废话有很多种,程序员届最多的大概就是整理哪个语言/框架/平台/技术好,准程序员则喜欢问,我是不是应该学Java Python php……学了是不是有用之类。

我学习什么技术好?技术讨论并不完全无意义,但在你打好计算机基础、数据结构,熟练掌握至少一门语言、开发过一个能看的项目之前,这些讨论对你来说就是浪费时间的废话,而不是今天跟风学这个,明天又听人说那个好。不要等毕业的时候说出XX技术学校没教过,所以我不会这种话。

有这时间多写点代码,刷刷算法题,找点项目做做,找不到就从自己日常身边找点需求去用代码实现。

不要说你觉得没有什么可写的,如果是这样,那你要反思下自己适不适合编程这条路。

我能告诉你的是 接下来几年内不会算法是不行的。不要说我进去公司用不到这些话 如果你拒绝学 那没必要做程序员了。

华为 ,头条面试对算法要求越来越严格 ,或许几年后全民算法。 不代表我本人对算法有什么兴趣,只是是市场需要。

四、有危机感,但不要失去信仰

王小波在《黄金时代》里写道,“那一天我二十一岁,在我一生的黄金时代。我有好多奢望。我想爱,想吃,还想在一瞬间变成天上半明半暗的云。后来我才知道,生活就是个缓慢受锤的过程,人一天天老下去,奢望也一天天消失,最后变得像挨了锤的牛一样。可是我过二十一岁生日时没有预见到这一点。我觉得自己会永远生猛下去,什么也锤不了我。”

随着年龄增加,随着每年面试境况的逐渐下行,很多同行越来越怀疑“努力”的价值,也渐渐能理解年轻时听到的那句话:“所谓悲剧的人生,并不仅仅在于被不幸击中,更在于这种不幸的不可避免性”,而“中年危机”就是这样一个不可避免的人生悲剧,就绝大多数人来说,无论如何挣扎,都逃无可逃。只不过我们想的太过悲观罢了。

五、做好技术储备

职业现状我想大家心里也清楚,没办法变改职业,就只能想办法改变自己。自我审视,持续学习,做好规划,以10~20年的职业生涯为基础,未雨绸缪。不要等到40岁还在到处投简历面试,家里等着米下锅,那就太被动了。

做为一名Android开发者,我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名Android高级开发者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!

1.2020大厂面试高频知识点

一、图片
二、网络和安全机制
三、数据库
四、插件化、模块化、组件化、热修复、增量更新、Gradle
五、架构设计和设计模式
六、性能优化
七、Android Framework
八、Android优秀三方库源码


2.Jetpack架构组件从入门到精通
  • Android Jetpack - Navigation
  • Android Jetpack - Data Binding
  • Android Jetpack - ViewModel & LiveData
  • Android Jetpack - Room
  • Android Jetpack - Paging
  • Android Jetpack - WorkManger
  • Android Jetpack架构组件之Lifecycle
  • Android Jetpack Compose 最全上手指南

3.Framework精编内核解析

主要内容包含:

  • 深入解析Binder
  • 深入解析Handler
  • Dalvik VM 进程系统
  • 深入解析 WMS
  • PackagerManagerService

4.Kotlin强化实战(附Demo)

第一章 Kotlin入门教程

第二章 Kotlin 实战避坑指南

第三章 项目实战《Kotlin Jetpack 实战》

  • 从一个膜拜大神的 Demo 开始
  • Kotlin 写 Gradle 脚本是一种什么体验?
  • Kotlin 编程的三重境界
  • Kotlin 高阶函数
  • Kotlin 泛型
  • Kotlin 扩展
  • Kotlin 委托
  • 协程“不为人知”的调试技巧
  • 图解协程:suspend

5.Android设计思想解读开源框架
  • 热修复
  • 插件化
  • 组件化框架设计
  • 图片加载框架
  • 网络请求框架
  • RXJava 响应式编程框架设计
  • IOC 架构设计
  • Android架构组件Jetpack

6.NDK模块开发
  • NDK 模块开发
  • JNI 模块
  • Native 开发工具
  • Linux 编程
  • 底层图片处理
  • 音视频开发
  • 机器学习

由于篇幅原因,以上完整版资料PDF如有需要,可以 点赞+评论 支持下我

然后加入这边的企鹅裙,前面:110,,中间:240,,最后:5044

资源免费分享,不见不散哦!

你可能感兴趣的:(Android,程序人生,android)