20200112
我不知道什么是架构师,我只是想在开发的道路上走的更远,只是想做好自己的本质工作,对更多的开发细节做更细致的掌控。
有人说,程序员的悲哀在于以为拥有了技术就拥有了全部。诚然,技术不是程序员全部,但是如果连技术都不掌握熟练,怕是连一个程序员都称不上吧。
首先我得承认我的基础并不牢靠,虽然已经做了七八年的开发,多很多技术已经有所了解,也解决了开发中遇到的一些问题,还帮助过一些开发人员稍微的有所成长。但是我却觉得,我可能只是刚刚入了开发的门槛,只是将将有了一些程序员的思考逻辑。
浮躁的时候很多,更何况这是一个浮躁的社会。能静心的时候很少,却止不住的惶恐不安。我已经不再年少,写诗的年纪离我太遥远。年龄已经老大不小,我勉力告诉自己,我还能学习。是的,我还能学习,我才刚刚报名参加本科的自考。我还能学习,我还要向架构师的道路前行。
但是正如汪国真的《也许》所言:
也许,永远没有那一天
前程如朝霞般绚烂
也许,永远没有那一天
成功如灯火般辉煌
也许,只能是这样
攀援却达不到峰顶
也许,只能是这样
奔流却掀不起波浪
是的,也许付出不一定有收获,也许努力也不一定成功。但是,倘若能前行一步的勇气都没有,止步的人生又有什么意义呢?何况我晚来的孩子,就要在年末出生了,我希望我能有所进步,为孩子做一个好一点的榜样。
回到开头的那句话,我不知道什么是架构师,怎么样才算架构师,在不同的公司应该是由不同的定义。但是首先,得是一个资深的软件开发人员。然后要完成项目的整体设计和规划,要能解决实际问题,攻克技术难点,最终使得软件的设计、开发、测试、发布等流程能顺利的完成。
架构设计的能力:把产品的需求翻译为工程软件的设计,确定系统的模块和边界,评估系统的量级。
技选型的能力:数据库、前后端、中间件的选择
系统的性能和扩展
技术的深度和广度
我个人觉得这一点应该贯穿一个技术人员的职业生涯的始终。时刻保持学习的精神,广泛的了解行业内的主流技术,同时深入研究部分重点技术。
业务理解能力
我觉得 对业务的理解和转化的能力特别的重要,不然实在能以设计出好的架构和合理的扩展计划。所幸,我曾完整的负责开发过比较多的项目,虽然项目规模不大,但是麻雀虽小五脏俱全,也算是对项目的整体性有更好的理解,并在开发的过程中有所总结进步。
沟通能力
与项目组内成员的沟通
与产品、运营等人员的沟通
道路很长,脚步更远,我为自己加油,我与同行者共勉。
20201012 by 临窗旋墨
文章来源:临窗旋墨的博客;转载须注明出处。