第一:首先弄清楚自己岗位晋升(转型)路线
大多数程序员的晋升路径无非以下几种:
技术型:初级工程师->中级工程师->高级工程师->架构师(技术专家)->技术总监->CTO
管理型:工程师->项目组长->项目经理->项目总监->技术总监->CTO
交叉型:初级工程师->中级工程师->项目经理->技术总监->CTO(此路线技术和管理交叉进行,每个阶段做的事情不固定)
转行型:初级工程师->转行产品、设计、销售、运营等
第二:跳出自己的舒适区,对自己喜欢的事情投入100%的热情
很多程序员都会下意识的标榜自己是一名c++程序员,java程序员,ios开发,安卓开发,php程序员等等,但是他们往往忽略了一个事实,就是你首先是一名程序员,有意无意的将自己绑定在某个领域或者某一个语言上是非常危险的事情。
做某个事情的时候,投入100%的热情,并持之以恒,我知道这是非常难的事情,也正因为如此,技术专家,资深大牛才那么稀缺。
第三:站在巨人的肩膀上,适当说“不”
另外一点提高自己瓶颈的方法就是借鉴前人的代码,程序员这个行业,并不一定非要什么都不看直接写,也许你在有基础的情况下,直接开始写,遇到问题在查找问题会来的更加容易上手。
但是正因为这样,你写出来的代码往往质量非常差,优化性不够,语法啰嗦,不够优雅,因此我们要学会多从其他人的代码中汲取优点,多逛逛开源社区,针对自己感兴趣的方向去学习别人的代码,也是进步的一种方法。
在团队中,经常会遇到需求方给你提出某个需求,也许你觉得这个需求不合理,但是还是碍于同事的面子抽时间给他完成这个需求,这个时候你在同事的眼里也许就是负责的好同事,但是也许你遇到的只是一个不动脑子,或者压根只是抱着试一试态度的产品经理,没有经过完整的调研,只是拍拍脑袋觉得用户可能会喜欢这个产品,没有做出需求调研就话了一个prd给你扔了过来,如果项目表现不错,你的努力受到了大家的认可,那么皆大欢喜,但是如果这个项目最后还是失败了。那么你付出的努力也会白白浪费。
在需求方提出需求的时候,你一定要问他,做这个功能的意义是什么? 你有数据做出支撑么? 这个功能对我们现有的产品会有什么影响以及正面作用? 没有数据支撑的需求一律说不!
第四:搞好人际关系,提高沟通能力
学会处理人际关系,以及表达自我想法,沟通能力,也是程序员需要掌握的一件事情,因为你的上司看重你的表现的,往往不是 你实现某个功能的细枝末节,而是你对于整个项目的把控,以及沟通,他需要的只是结果,而不是过程,因此往往沟通能力强的资 深程序员,最后都会往高层去发展,慢慢转为管理层,而如果你只是想要安静的写代码,不想被这些无聊的事情干扰的话,那么你可以忽略。
这个行业很多资深大牛往往都是沟通能力强,技术高深的体现,随着年代发展,团队式工作已经是主流,你无法一个人去单一的实现某个任务或者功能。
团队式开发效率,项目进度,复杂度,以及成本控制都比单一人员要好,而团队式协作就表明,你必须要有最基本的沟通能力。
先自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以扫码领取!!!!
![](https://i-blog.csdnimg.cn/blog_migrate/34c84fef6a6e2ea60f5c5d61e73bfe6d.jpeg)
最后说一下我的学习路线
其实很简单就下面这张图,含概了Android所有需要学的知识点,一共8大板块:
- 架构师筑基必备技能
- Android框架体系架构(高级UI+FrameWork源码)
- 360°Androidapp全方位性能调优
- 设计思想解读开源框架
- NDK模块开发
- 移动架构师专题项目实战环节
- 移动架构师不可不学习微信小程序
- 混合开发的flutter
Android学习的资料
我呢,把上面八大板块的分支都系统的做了一份学习系统的资料和视频,大概就下面这些,我就不全部写出来了,不然太长了影响大家的阅读。
330页PDF Android学习核心笔记(内含上面8大板块)
Android学习的系统对应视频
总结
我希望通过我自己的学习方法来帮助大家去提升技术:
-
1、多看书、看源码和做项目,平时多种总结
-
2、不能停留在一些基本api的使用上,应该往更深层次的方向去研究,比如activity、view的内部运行机制,比如Android内存优化,比如aidl,比如JNI等,并不仅仅停留在会用,而要通过阅读源码,理解其实现原理
-
3、同时对架构是有一定要求的,架构是抽象的,但是设计模式是具体的,所以一定要加强下设计模式的学习
-
4、android的方向也很多,高级UI,移动架构师,数据结构与算法和音视频FFMpeg解码,如果你对其中一项比较感兴趣,就大胆的进阶吧!
希望大家多多点赞,转发,评论加关注,你们的支持就是我继续下去的动力!加油!
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可免费领取!
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可免费领取!