zoukankan      html  css  js  c++  java
  • 陈斌:探索技术领导力的最佳实践

    CTO要具备的素质

    CTO到底要不要写代码,应该具备什么样的素质呢?我个人感觉CTO真是可以不写代码,但是意思是,你有更重要的事情要去做,比如要具备下图中的这些素质。

    1. CTO是技术战略的主导者

    CTO的这些素质中,最基本是要有技术战略。比如说,编程语言选Java还是其他的语言,当系统做到一定程度的时候,你要适时的进行一些解耦或者对底层数据库的优化,甚至有新技术出现的时候,可能用不上,但可以先安排一两个人学习一下,一旦有用到的机会,熟悉的人可以很快引导大家去使用。

    2. 企业文化是一个非常有力的管理工具

    企业文化很重要,但在实践当中经常会被忽略。CTO也要管企业文化,如果在美国说这个话,可能大家不奇怪,因为美国的CTO或者公司的高管,对企业的文化都负有非常大的责任,你不但要管这个企业文化,而且要身体力行。其实企业文化是一个能够帮你把整个企业的研发人员、氛围、管理过程组织起来的有效手段。

    3. 体系建设

    2013年底易宝集团的CEO跟我说,支付系统的证书又到期了,证书一到期系统跟银行的通信就断了。造成这个问题的主要原因是缺乏一个管控体系。2005年我在易宝做了一套体系建设,结果2013年,不仅仅技术架构和系统建设没有发生变化,甚至以前的管控体系都没了。所以我回来后第一件事是做系统体系的建设。

    我们分析了一些系统可用性问题后发现,主要是太多随意改动、上线和一些人为的失误,所以当时我开启了一个“三思而后行”的计划,让大家在做所有事情之前,都想一下,有没有回滚的方案,有没有实时的监控,有没有人在旁边支持你,有问题找谁。体系按照这个指引建立起来之后,整个系统可用性就好了。

    我刚才提到技术战略、企业文化、体系建设是作为CTO最重要的三个要素,作为CTO还需要有商业眼光、人才培养、领导艺术等素质,我就不细讲了。

    架构师不仅限于研发

    在中国,大部分人认为只要是架构师、CTO,就一定是写代码的,实际上互联网技术有很多种,比如研发、编码、测试、网络、安全、数据、配置、监控、系统、大数据、运维,这都是这个领域内不可分割的技术。

    能写代码才能做CTO?能写代码才能是架构师?这是很大的误区,国内提到架构师必然是研发架构师,而国外提到的架构师是信息安全架构师、数据库架构师、大数据架构师、测试架构师,甚至配置架构师。要走出这个误区,培养你的架构师,把不同的架构师的路径都打开。

    在国内,架构师的培养没有一个官方的或者是被广泛认可的一个标准,大家都在内部认定,我觉得你代码写得不错,可以做架构师,实际是这样吗?我们希望架构师做什么呢?在我看来,架构师要有自己独立的思考能力,有自己独立的见解和提炼经验和知识的能力,特别是把技术跟业务结合的时候,必须有非常独立的见解跟能力。而且具有影响力,当这个架构师出现跟其他的技术人员一起讨论问题的时候,大家无形中都会觉得他说的好像很有道理,我们服他,这样才行。

    没有最佳只有最合适

    世界上有最牛的CTO或架构师吗?我想说,没有最牛的,只有最合适的。比如乔布斯的例子,可以看下面这张图,乔布斯在不同年龄段的不同特质。

    下面是两维的矩阵图,可以看到,在选拔人员的时候,一个是靠文化,一个是靠能力。

    每位CTO都想找这样的人做下属,符合公司企业文化,技术能力非常强,这种人,每天任劳任怨的干活,也没意见。最不喜欢的是这样的——每天吹牛、抱怨、技术水平很差。前面一种要保留,后面一种要踢走。

    还有一种是研究生、博士生刚毕业到公司来,能力不错,但是不努力,或者是跟大家混不到一起去,孤芳自赏的这种,你要改造他,让他变成你的精英。上图中有几个不同象限,对应不同人的不同处理办法,去辞掉不合适的人肯定是很困难的,但是作为CTO必须有这个独断的能力,而且越快越好、越早越好。

    业务主管与技术主管的沟通鸿沟

    团队中这么多人怎么组织起来?我记得有一次开会,讨论一个项目上线计划,研发人员列出了一些问题,比如系统要解耦,数据库要切分,CEO听不懂,只是说如果下月底上线搞不定,是研发的水平不行。业务主管跟技术主管之间存在着一条鸿沟,其实是你的教育背景、经验背景和性格特质造成的。这种背景决定了他们在理解问题上,所用的语言是完全不一样的。另外,技术主管往往是内向的,而销售主管或者是业务主管往往是外向的,这也决定了双发无法很好地进行沟通。

    这种鸿沟的存在是客观的、是正常的,我们要清醒意识它的存在,更关键的是在这种时候,我们的技术主管要向前走一步,跨越这个鸿沟,你要等你的销售主管、业务主管解决这个问题,这事儿永远不会发生。

    聚焦过程的优化

    除了人、组织以外,过程也很关键,我刚到易宝的时候,系统中有不少bug,正常情况下没有问题,只有受到外部攻击,有大量请求的时候就会出问题,这时候怎么办?找一个负责任的人平心静气的找出问题解决问题,无论流程有问题还是架构有问题,要把它解决了。

    让我印象很深刻的是2012年,eBay系统有天凌晨2点发生了故障,网络中断了6个小时,当时跟我们的CTO一起分析这个问题,发生了这么大的事儿,损失可以用千万、上亿来算,eBay是什么态度?这次做错事的员工是网络工程师,公司没有对他做任何处罚,这是一种文化,如果把他处罚了,日后再有类似的问题,出了问题,谁还敢站出来解决问题?

    公司要找的不是要承担责任的人,而要找的是能够解决问题的和能够优化流程的人。所以过程优化是最后一个重要的要素,如果有合适的人员、合适的流程再加上合适的组织,把几个要素组织起来,我们会得到合适的决策,没有最优的,只有最适合你的情况的决策,让整个研发体系不断的向上循环,越来越好。

    摘自:http://www.infoq.com/cn/articles/best-practices-of-explore-the-technical-leadership

  • 相关阅读:
    32、至少列举8个常用模块都有那些?
    31、如何安装第三方模块?以及用过哪些第三方模块?
    uva120 Stacks of Flapjacks (构造法)
    stringstream的基本用法
    Codeforces Round #246 (Div. 2) C. Prime Swaps(贪心,数论)
    Codeforces Round #271 (Div. 2)D(递推,前缀和)
    poj3061 Subsequence&&poj3320 Jessica's Reading Problem(尺取法)
    Codeforces Round #266 (Div. 2)B(暴力枚举)
    uva10815(set的应用)
    uva489(需要考虑周全)
  • 原文地址:https://www.cnblogs.com/bonelee/p/6513158.html
Copyright © 2011-2022 走看看