最近写了好几篇很长的科技小品文, 今天换换脑子,写个短文, 聊聊架构师。
最近很多人在问:“我对计算机很感兴趣, 基础知识很扎实,学习能力很强, 我每天还抽时间写很多代码 , 但不知道怎么向架构师的道路上走,请您指点一下”
还有人说:"我早就掌握了面向对象设计, 也看了《企业应用架构模式》,《架构之美》,《大型网站技术架构》等等架构的书, 为啥还当不了架构师?"
是啊,这高端,大气,上档次的架构师是怎么炼成的?
这里讲一个小王的故事吧。
又到了毕业季, 一批应届生进了一个软件公司,小王也在其中。
新人进入公司, 基本上都是从最底层做起, 做那些最脏最苦最累最没技术含量的活。
公司之前为了提高开发效率, 降低成本, 开发了一个框架让大家用, 框架封装的很好, 甚至不用怎么编程, 拖拖拉拉就能完成简单的业务需求。
新人进来都是使用框架, 先做个HTML的填空人员, 根据业务需求,往框架里填空。
但是做不多久就熟练了, 熟练了就会觉得没意思、没前途、没发展、迷茫了。
但是小王同学和大家不一样, 不但填了空, 工作之余还经常琢磨着这个框架为什么这么设计, 有什么问题, 用起来有什么不爽。
小王经常会给维护框架的核心组提一些建议, 刚开始的时候这些建议看起来还没什么价值,甚至有些蠢, 有人背地里还会嘲笑小王多管闲事。
但小王不管, 还是努力的学习,积极思考, 为了能读到这些框架的源代码, 经常和核心组的骨干套近乎, 慢慢的有些建议还真的被采纳了。
不仅仅如此, 小王还非常热心助人,别人的工作遇到难题,他都会尽力相助, 即便是占用自己的时间小王也觉得很值得: 解决一个问题自己的能力就会提升。
当然小王做的这些事情,势必要带来一些加班, 但在兴趣的指引下,技术提升很快。
一年不到, 大家就发现小王的技术能力已经远远的超越一起进公司的人了。
经理也会觉得这个小伙子不错, 踏实,积极主动, 每年的绩效考核都是优秀。
过了两年,公司要承担一个更大的项目, 其中有个模块,需要找个骨干带领一个小组进行开发, 现有的骨干不够了,需要从新人中遴选, 小王自然而然的脱颖而出。
于是小王踏上了一个更高的台阶, 从一个被别人领导的一个普通程序员, 变成了领导别人的一个技术组长。
以前是别人设计,自己开发, 现在是自己设计,指导别人开发。
小王觉得责任重大,压力更大, 又买了更多的设计相关的书籍, 在业余时间啃了起来。
遇到不懂的地方, 小王从来不会像有些人那样, 藏着掖着,怕被别人笑话。 从来都是主动的去找公司的架构师们问问题 。
因为小王知道, 要想自己变得优秀, 一定要多和更优秀的人在一起交流。
要想成长, 一定要站在比自己更高的职位上进行思考, 学习那些人的思考方式。
小王还特别注意业界有什么最新,最热的技术, 然后想办法把这些技术运用公司的项目中, 或者提升代码质量,或者提升工作效率。
一个最明显的例子就是小王通过引入自动化的测试框架把整个系统的自动化回归测试给搞起来了, 以后底层代码的变化都需要通过这个自动化的测试, 大家改代码的时候觉得安全了不少。
这么几年发展下来, 小王在模块设计层面做的越来越纯熟, 不仅如此, 小王经常还能站在架构的层次进行思考, 看看一些架构层次的重大决定是怎么做出的。
做新项目的时候 ,小王甚至在脑海里想如果是自己来做设计, 应该会怎么做, 等到架构师把架构设计出来, 小王会做个比较, 看看自己那些地方考虑不周。自己觉得有争议的地方还会找架构师讨论。
小王不仅把自己的模块设计的很好, 还能对模块之间的接口设计提出很好的建议。
时间久了, 当小王对一个问题发表意见的时候, 大家都会侧耳倾听, 因为以往无数的案例表明:小王的意见经常被证明是正确的。
一个潜在的架构师炼成了。
果然,不久以后公司给全体发了一个公告:
小王技术精湛,经验丰富, 善于把握技术的本质, 热心助人, 善于沟通,能以自己的技术影响力去领导团队, 特任命为xxx 产品的架构师。
扩展阅读:
热门文章:
微信公共号:码农翻身
“码农翻身”公众号由工作15年的前IBM架构师创建,分享编程和职场的经验教训。