误区
拜大牛为师
大牛很忙,不太可能单独给你开小灶,更不可能每天都给你开 1 个小时的小灶
因为第一个原因,所以一般要找大牛,都是带着问题去请教或者探讨
大牛不多,不太可能每个团队都有技术大牛
综合上述的几个原因,我认为对于大部分人来说,要想成为技术大牛,首先还是要明白“主要靠自己”这个道理
业务代码一样很牛逼
所以我认为:业务代码都写不好的程序员肯定无法成为技术大牛,但只把业务代码写好的程序员也还不能成为技术大牛。
上班太忙没时间自己学习
首先我们应该在工作中学习和提升,因为学以致用或者有实例参考,学习的效果是最好的;其次工作后学习不需要大段时间,而是要挤出时间,利用时间碎片来学习。
正确的做法
Do more
做的更多,做的比你主管安排给你的任务更多
熟悉更多业务,不管是不是你负责的;熟悉更多代码,不管是不是你写的这样做有很多好处,举几个简单的例子:
需求分析的时候更加准确,能够在需求阶段就识别风险、影响、难点
问题处理的时候更加快速,因为相关的业务和代码都熟悉,能够快速的判断问题可能的原因并进行排查处理
方案设计的时候考虑更加周全,由于有对全局业务的理解,能够设计出更好的方案
熟悉端到端
系统性”、“全局性”、“综合性”这些字眼看起来比较虚,但其实都是技术大牛的必备的素质,要达到这样的境界,必 须去熟悉更多系统、业务、代码
自学
Do better
要知道这个世界上没有完美的东西,你负责的系统和业务,总有不合理和可以改进的地方,这些“不合理”和“可改进”的地 方,都是更高级别的怪物,打完后能够增加更多的经验值。
Do exercise
光看不用效果很差
学习三步走
learning
这个是第一阶段,看书、google、看视频、看别人的博客都可以,但要注意一点是“系统化”,特别是一些基础性的东西,Trying
自己动手丰衣足食Teaching
能掌握 70% 左右,但要真正掌握,我觉得一定要做到能够跟别人讲清楚
职业发展
第一阶段:大学毕业 3 到 5 年
基础的 Java 知识:你会开始看《Java 编程思想》、《Effective Java》
高质量代码进阶知识:你会开始看《重构:改善既有代码的设计》、《代码大全》、《编程珠玑》
常用的主流框架:
系统设计与算法知识:《系统分析与设计方法》、《设计模式》、《需求分析与系统设计》、《面向对象分析与设计》、《UML 用户指南》、《算法导论》
其他知识:比如数据库调优、缓存框架、NoSQL 数据库、日志框架等等
第二阶段:大学毕业 5 到 10 年
其实,年龄并不是问题的真正原因。真正的原因还是在于自身“竞争力”是否符合这个年龄所应该具备的
能对所负责领域的业务特点、发展趋势、友商竞争分析
服务于特定领域的客户,我们需要能了解我们的客户企业架构、业务知识。要了解清楚规划的产品、服务
作为 TL, 是否有必要能将自己对于市场的洞察转换成业务规划,并能向自己的老板(或者投资人)说清楚、讲明白
获得老板支持后,就需要开始带着兄弟们干活了
做完业务设计后,开始要带着团队做技术方案设计、接口设计以及编码实现等。
你还经历过什么有挑战的业务、技术、产品、平台等方面的成功与失败经验
什么是架构师
组织业务, 业务领域的知识,构建自身看待业务的”世界观”。
组织技术, 架构师需要选用合适的框架、中间件、编程语言、网络协议等技术工具, 形成一套软件系统方案
组织人员, 确定人员的协作方式
组织全局,对外输出, 架构师的首要目标是解决业务问题,推动业务增长
面试
面试要做的事
问已经发生的事情
问题解决思路
少问多听
鉴别方式人员的方式
更多的关心 What/How/Why
招聘的人中有一种人是比较好的,他总能比较清楚的记住过往项目当中的重点细节!细节!细节!
很多关键节点的细节很重要,比如网络库的优化。
作者: Other+
共同学习,写下你的评论
评论加载中...
作者其他优质文章