阿里资深专家分享程序员三门课:技术精进架构修炼、管理探秘文档( 二 )


第4章架构思维;软件架构是一个系统的草图 , 描述了组成架构的组件及各个组件之间的关系 , 组件和环境之间的关系 , 以及设计组件的原则 。 组件可以是子系统、模块、类、方法等 。
架构设计是架构决策的过程 , 涉及系统分解、接口定义、通信协议定义、交互关系和集成方式确定 。 架构决策指在架构设计中统筹全局并做出决定、权衡和取舍 , 比如将系统拆分为几个子系统 , 子系统的职责是什么 , 子系统之间如何交互 , 如何调用和采用什么集成机制 , 使用什么开发语言和技术框架 。
阿里资深专家分享程序员三门课:技术精进架构修炼、管理探秘文档文章插图
第5章架构设计;在架构设计过程中 , 我们会根据需要做出不同的架构设计 , 而在设计时需要涉及一定的架构设计核心要素 。
架构设计是从业务需求到系统实现的一个转换 , 是对需求进一步深入分析的过程 , 用于确定系统中实体与实体的关系 , 以及实体的形式与功能 。 架构可根据从业务需求到系统实现的不同需要分为:业务架构、应用架构、数据架构、技术架构 。
阿里资深专家分享程序员三门课:技术精进架构修炼、管理探秘文档文章插图
第6章架构的保障:质量与风险;
6.1内建质量体系
6.2从黑天鹅事件到墨菲定律
6.3软件质量稳定性之殇
6.4从康威定律和技术债看研发
6.5求解质量嫡
6.6踩过的坑和经验总结
6.7故障复盘流程及模板
6.8监控与告警
6.9应急处置
阿里资深专家分享程序员三门课:技术精进架构修炼、管理探秘文档文章插图
第3篇总结了做技术管理的诀窍 , 揭秘如何从准备做技术管理到实现自我管理再到实现团队管理 。
第7章为成为技术主管做准备;笔者在这个行业里面耕耘 10 年有余 , 在跟年轻朋友交流的时候 , 很多朋友都会问笔者一个问题:“我用什么方法才能成为像我主管那样的人?”
这个问题回答起来有点尴尬 , 因为很难用只言片语说清楚应该用什么样的既定方法去实现 。 “主管”这个人设被赋予了大量的标签和职能 , 其修炼并非一朝一夕即可完成 , 与其自身的思考深度及机遇也有很大关系 。 笔者思考良久 , 决定记录并分享自己的成长 , 希望对朋友们有所帮助 。
阿里资深专家分享程序员三门课:技术精进架构修炼、管理探秘文档文章插图
第8章从自我管理转为管理团队;敏捷大师琳达·瑞思(Linda Rising)是变革模式(FearlessChange Pattern)的提出者 , 她曾说过:“我提出的这些变革模式的确看起来非常直白 , 但是直白绝不意味着简单 。 我努力在做的 , 就是让大家不但能够理解这些模式 , 还能够应用这些模式 。 ”
程序员需要突破技术桎梏 , 在带人和带团队上不断成长 , 这似乎看起来也非常直白 , 却做起来绝对不简单 。
俗话说 , 学而优则仕 。 在如雨后春笋般出现的各互联网和软件公司中 , 有越来越多的技术达人因为在技术上的优异表现 , 晋升为技术团队的管理者和领导者 , 这也被人们戏称为“编而优则仕” 。 然而 , 对于这些技术达人来说 , 从单枪匹马的个人贡献者突然被提拔为一呼百应的技术团队领导者时 , 随之而来的 , 除了兴奋 , 还有各种困惑和不适“症状” 。 因为 , 对于技术专家而言 , 在大多情况下做好自我管理就可以取得成功;而对于团队管理者而言 , 把一个队伍带好 , 注定是超越自我管理的挑战 。
接下来就从对什么是领导力的追问开始 , 一步步探究技术团队管理者从自我管理到带好团队这一转变的背后 , 到底需要怎样的能力支撑 。
阿里资深专家分享程序员三门课:技术精进架构修炼、管理探秘文档文章插图
这份【程序员的三门课:技术精进、架构修炼、管理探秘】共有336页 , 需要完整版的朋友可以转发此文关注小编 , 私信小编【技术】来获取!!
总结程序员的工作是将从现实或者虚拟世界中抽象出来的逻辑以代码的形式实现 , 需要凝神静气才能完成一段有质量的代码 。 但不得不承认的是 , 程序员这个职业在很大程度上是吃青春饭的 , 如何充分把握自己的青春年华做一名优秀程序员?如何为未来的职业发展打下良好基础?这是每个程序员都应该认真思考的问题 。
非常遗憾的是 , 程序员这个职业所需要的知识、技能和经验 , 并不能完全从学校获得 , 更多地来自工作实践 。
本文系统且循序渐进地介绍了如何从菜鸟程序员成为高级研发人员或者架构师 , 以及如何积累知识和经验成为技术管理者 , 对于程序员在编码过程中需要用到的工具、模式、测试、沟通和架构知识 , 作者也给出了亲身实战经验总结 。