谈谈程序员,技术主管和架构师经验

最近在进一步思考程序员的成长,曾经写过一篇《程序员的成长阶梯和级别定义》,里面写了我对程序员主要成长阶段的定义,但在程序员从初级走向 的过程中,会面临两个支路,一个叫「技术主管」,另一个则是「架构师」。为什么这是两条支路?因为现在回过来看,这两条路从来都不是程序员的自然成长路径,下面我们先从「技术主管」开始吧。

技术主管

技术主管,有些公司可能又叫「技术经理」,英文一般是TechLeader或简称TL。在拉姆·查兰(RamCharan)那本《领导梯队》中提到一个人的工作角色中至少有百分之五十以上的时间是花费在管理事务上,那么他的角色才算是一个经理(Manager)。所以技术主管(经理)类似产品经理属于以经理命名却是非经理的角色。

「技术主管」是开发团队中的某位程序员需要对一起创建系统的整个开发团队负责时所承担的角色。通常他既要对最终交付的软件系统负责,另外也会像一个程序员一样去开发实现系统。一个技术主管的60%~70%的时间可能花在了开发任务分解分配、开发实践、代码审核和风险识别上,而余下的30%~40%的时间则花在为了保障系统按时交付所需的各种计划、协作、沟通、管理上。和团队管理者不同的是,技术主管的大部分管理工作都是针对具体研发任务和技术事务的。

例如:在一个开发团队中经常会碰到因为技术方案和实现细节方面的分歧,如果程序员无法自主友好的完成对不同技术意见的统一,这时候技术主管就需要介入去了解两种不同意见所造成的冲突。对事不对人的去把问题搞清楚,分析各自方案的利弊,必要的时候甚至能够提出第三种更好的技术方案,以帮助开发团队达成共识。

另一方面,技术主管即使在日常的开发实现中,重点的内容一般也不是放在某个具体的功能实现上。在完成了具体的开发任务评估、分解并分配后,技术主管应该负责设计整体代码的结构和规范、必要时引入能提高整个团队生产力的新工具,推广代码模板,总结 实践。他需要经常性的







































涓撻闃垮闇夌礌鍏充簬闃垮闇夌礌鍓綔鐢ㄧ殑闃叉不
SCI璁烘枃棰樼洰濡備綍鍋氬埌娓呮鍚稿紩浜?



转载请注明:http://www.xxcyfilter.com/zyxz/1752.html