大家好,我是安晓辉。本章我们介绍的是如何从熟练开发者成为技术专家和架构师。
技术专家和架构师的区别
当你崇尚技术,以技术为中心,把技术的地位放在业务之上,那你可能会深入钻研某种技术,围绕着这个技术,构建起你的知识体系,并且不断地拓宽知识半径,深化知识层次,最终成为这个技术领域的专家。
当你以业务为核心,认同技术是解决业务问题的手段,你围绕着要解决的问题来组织、选择技术,最终形成了围绕特定业务问题的知识体系,善于识别、拆分业务问题,组织开发者采用合适的技术去落地解决业务问题,那你就成了架构师。
两种身份的分化如下图所示:
技术专家对某个技术领域特别熟悉,比如 C++ 专家,了解各种晦涩难懂的细节(比如 traits、move、委托构造函数、RTTI、内存对象模型、各种 cast等),熟知 C++89、C++11、C++17 等各种标准及其异同,能够从技术层面解决该技术相关的各种疑难杂症。他是面向技术的,是某种编程语言或技术框架方面的专家。他的