订阅业界RSS CSDN首页> 业界

[对话CTO]ThoughtWorks徐昊:非常不想成为技术管理者

发表于2013-04-21 22:01| 次阅读| 来源CSDN| 0 条评论| 作者魏兵

摘要:本期对话CTO邀请的嘉宾是来自ThoughtWorks中国区的徐昊,作为ThoughtWorks中国区首席技术专家的同时他也是ThoughtWorks全球技术策略顾问。目前主要致力于大规模团队内的敏捷实践和管理再造。


ThoughtWorks是一家全球软件设计与定制企业,通过全球资源共享和人才交流服务客户。ThoughtWorks的业务主要分为定制交付和咨询服务两大块,就咨询而言,其业务模式主要是通过咨询服务改善企业的IT组织,改进软件开发方法,以软件带动企业业务发展。ThoughtWorks定期发布“技术雷达”报告,为企业提供技术战略参考。

ThoughtWorks目前已在美国、英国、中国等11个国家成立分公司,其中在中国ThoughtWorks已经成立了北京、西安、成都以及上海四个分公司。

本期“对话CTO”采访的嘉宾就是ThoughtWorks中国区CTO徐昊。徐昊作为ThoughtWorks中国区首席技术专家的同时也是ThoughtWorks全球技术策略顾问。

采访中,徐昊表示他的职业生涯就是从开发开始的,后来赶上轻量化风潮,偶然接触了极限编程。所以从2003年起开始实践极限编程等敏捷方法,2005年开始,多次以敏捷教练的角色帮助国内外多个团队实施极限编程、Scrum和FDD等敏捷方法,敏捷交付和敏捷项目管理经验极为丰富。

目前主要致力于大规模团队(300-500人)内的敏捷实践和管理再造,以及对企业级技术应用趋势和技术战略的研究。

机缘巧合下,徐昊组织成立了Beijing Java User Group(后来又合并成Beijing Open Party)。2005年上半年,Martin Fowler首次访华时徐昊作为本地敏捷实践者去参加了一个圆桌会议。当时其实徐昊已经在做pre-sales工作,但觉得虽然能做但不是真心所向。在做pre-sales过程中,徐昊理解到用技术解决具体的业务问题是一件非常让人兴奋的事情。后来听说ThoughtWorks是咨询公司,就加入了ThoughtWorks。

徐昊也是中国软件技术社区活跃的领导者之一。他是BJUG(BeijingJava User Group)和“敏捷中国”组织创始人,并曾在“敏捷中国”软件技术大会、中国系统与软件过程改进年会等会议上发表主题演讲。


Thoughtworks 中国区 CTO 徐昊

以下为采访实录:

研发三件事:问个好问题,给个好答案,写段好代码

CSDN:在不同角色中你最感兴趣的部分分别是什么?最有挑战的又分别是哪些方面?从技术工程师到技术管理者的转变过程中,有哪些让你印象深刻的事?

徐昊:我做过所有的技术角色,非技术角色做过BA、pre-sales。如果例数所有角色的话,最感兴趣和最有挑战的其实是三件事:问了个好问题,给了个好答案,写了段好代码。我知道现在很多做研发,上来不问为什么,然后直接就开始写代码,写出来东西不对就说是因为需求没给清楚。这是不会问问题的。搞需求的,听着客户讲的东西答录机一样完全记下来,如果开发来问,就说是客户要的。这是既不会问问题也不会给答案的。当然,还有太多是代码写不好的。

我从来没做过Project Manager,也从来没想过要做Project Manager。甚至我非常痛恨在自己身上出现manager的标签,避之不及。原因是太多manager没给大家带好头起好榜样作用。非想着我是manager了,我得做不一样的,我得管人。然后拿挖砂板砖那套来管程序员,这是最差劲。前几年我一直努力成为role model,就是榜样。业务上做得好,还不是好一点半点,要好到让人憧憬那个程度。最近我想做first among equals,就是最大化非职权影响力,然后自己玩命找屎盆子自己扛。所以严格意义来说,我从来没成为过技术管理者,而且非常不想成为技术管理者。

CTO的一天:60%以上的时间在做项目

CSDN:作为ThoughtWorks中国CTO,你典型的一天是怎样度过的?

徐昊:作为中国区CTO,我主要的关注点有几个方面:与客户的资深管理者沟通技术愿景、为客户的项目提供技术领导力、帮助下一代leader们成长、关注技术能力建设、技术创新和尽一切可能找好玩的项目自己来做。

虽然我承担很多其他职责,但是我仍然保持60%以上的时间在做具体项目。这也是ThoughtWorks非常不同于一般公司的地方,无论多么资深的技术角色,都对于实际动手有非常的偏执。所以如果非要说典型的话,很可能是我会在一个具体项目上,这个项目可能是利用新技术帮助客户解决大规模定制问题的项目,也可能是下一代leader要担纲但是需要辅导的项目,也可能是能力培养、开发组织转型、人力招聘等方面的咨询项目。

中午我很可能会跟我的sponsee一起吃饭,聊一下职业规划啊这些有意思的事情之类的话题。

晚上很可能在office组织某个方面的能力培养活动。中间会穿插很多不同的catch up。晚上回家如果有时间会写一些代码,主要是自己的休闲项目,古怪的工具啊、编译器啊什么的。

关于ThoughtWorks

CSDN:请谈谈在ThoughtWorks,Chief Scientist和CTO之间的关系,以及全球CTO和你之间又是怎样合作的?

徐昊:我们的结构是全球CTO、然后下面是地区的Head of Technology(HoT),也就是地区CTO。目前设有CTO的地区有北美区(包括加拿大、美国、巴西)、亚太区(中国、澳洲、新加坡)、印度和欧洲(英国、德国、非洲)四个大区。其中亚太区和印度是两人共担,和我对位的是Scott Shaw,他主要负责澳洲、我主要负责中国。

我们全球CTO有一个panel,叫做Technology Advisor Board,简称TAB。技术雷达就是这个小组的产物。所有的地区HoT都在这个panel里。除此之外,HoTs和全球CTO每两周也会有一次catch up。而我和Scott每周都会catch up。

Chief Scientist也就是老马(即Martin Fowler)了,他的主要责任在于提炼ThoughtWorks的各种实践,然后在社区和行业内提高ThoughtWorks的名望。除了他还有Neal Ford,也不承担任何具体的leadership责任,而是类似evangelist的角色。老马和Neal也是TAB的一员,但是他们又不完全是为CTO服务的。更接近于和CTO处在类似对位的位置,只是没有任何运维职责而已。

其实说到底,ThoughtWorks和传统公司不同,所以虽然有地区CTO和全球CTO的区别,但实际上仍是合作关系而非想象中的上下级关系。

CSDN:您参与了“技术雷达”报告的制定,可否谈谈这份报告的制作流程,你在其中的角色?ThoughtWorks公司和你个人又是如何把握这些技术动向的?

徐昊:技术雷达由ThoughtWorks技术战略委员会负责(ThoughtWorks Advisory Board,TAB),是我们06年出来的一个实践,是“IT革命”的一部分。当时想法是,如果ThoughtWorks想推动整个IT行业的变革,那么得有一个时间表。也就是那些技术和实践已经处在哪个阶段了,应该怎么推进它们。

ThoughtWorks这份报告最大的特点就是——非常非常主观而且不求全面。比如Adopt在TAB内的定义是we'll mock it in the pub if you don't do this(我们会在酒吧里喝着酒嘲笑你,如果你没有采纳这样的实践)。再比如,无论一个技术多么的好,如果在TAB中没有人愿意力挺这个技术,那么就不会被放在雷达上。我们相信优秀技术人员的直觉和热情。如果一个东西没有让你有,Wow,it‘s cool的感觉。你凭什么告诉别人应该去用这个呢?如果一个东西,你没有足够的热情逢人遍讲,那么也说明它不足够有趣和吸引你。但恰恰是这种方式,使得我们的雷达从某种程度上代表了行业实践者的心声。而且我们相信ThoughtWorks是行业内工程实践最优秀的公司,所以我们需要的就是提供一个平台,把ThoughtWorker们热情展示出来,而它应该就可以代表工程领域的趋势和喜好。

CSDN:目前ThoughtWorks的技术团队规模和结构是怎样的?

徐昊:ThoughtWorks技术团队和规模在不同的项目上有不同结构,我们叫杠杆模型,就是资深咨询师和咨询师的一个比例。根据项目类型不同,这个比例也有所不同。通常而言,交付项目的比例比咨询项目要低一些,但也不是绝对的。规模上无论最后项目规模多大,我们都会维持上限在15人左右的小团队。然后在由小团队组合成为大的项目组。这种模式我们能做到300人的大团队规模,而同时可以保持交付质量和速度。

CSDN:公司内部如何进行项目管理,使用哪些工具?公司使用的开源产品有哪些,非开源产品又有哪些?

徐昊:我们内部每个项目管理方式都不尽相同,取决于team lead个人的喜好和经验。基础管理方法是Scrum + XP,主要使用物理墙和物理化的方式,电子化用于备案。也有团队只使用XP,或者采用Kanban,Lean等方法。电子化工具一般是Excel或者Mingle。

CSDN:在IT咨询领域,ThoughtWorks有哪些竞争对手,相对这些竞争对手,ThoughtWorks的优势在哪里?

徐昊:是有一些竞争对手,这里就不一一提名了。ThoughtWorks的优势就是我们并不是那种只做规划的咨询公司,我们非常强调落地。而且我们通常希望依托我们自己的经验在较短的时间内给客户的IT能力带来一个比较大的提升。所以和我们合作过的公司,对我们工程能力的认可要远远大于对我们咨询技巧的认可。这在我看来是非常大的一个优势,因为这是别的公司不易模仿的,而且给客户带来的实际收益是非常大的。

人才招聘与培养

CSDN:ThoughtWorks咨询师需要具备什么样的背景或通过怎样的准备,才能应对不同项目的中的各类问题?要成为一名卓越的咨询师/工程师,你觉得关键的因素都有哪些?在选择技术人才时,你最关注他们的哪些技能和特质?又是如何考察的?

徐昊:对于ThoughtWorks的咨询师,我们只强调一点,就是学习能力。只有具有非常良好的学习能力,才能在不同项目里迅速的上手,而且没有比这个更重要的了。

很多都说我学习能力很好啊,因为我看了很多书,我理解技术文章很快之类的。这个我觉得这是一个常见的误区,我们要的学习能力,不仅仅是寻找和理解知识的能力,而是把知识转化为能力的能力。其实就是“知行合一”。比如TDD在概念上很容易理解啊,先在合适的粒度上写测试表达需求,然后在写实现。在我参与过的面试里,能回答到这个程度的人很多。而真正能做到的不能说没有,但是非常非常少。这样在我看来就是学习能力不够好。包括在我们的面试过程里,有office interview这么一环。其实就是现场我们展示一下我们做事情的方式,在45-60分钟内,看你能学到多少,学的快基本就过了。

CSDN:我们知道ThoughtWorks成员有很多著作,所以您能否谈下ThoughtWorks公司是如何进行技术氛围营造的,通过什么样的机制鼓励技术交流和分享?

徐昊:如果你招聘的人员,80%都是hardcore technologist,你就不需要营造气氛。本身氛围就会很不错。

如果非要营造的话,首先重要的,就是认可技术化的职业道路。很明白地告诉大家,你可以不用转管理,你可以专注技术,这么做同样能得到你应得的薪酬、大家的尊重。否则没办法让人真正把心思放在技术上。

然后,很重要的一点是,我们是知识工作者。这是什么意思呢?就是你的能力不由你创造的知识决定,而由别人能理解并接受多少来决定。这也是很多IT从业者的一个误区,我闷头搞我的技术就好了,好的东西自然就会被认可。这是不可能的。你不光要做得好,还要告诉别人你为什么好!比如C++里的STL好,但是你看有多少书是讲这个的。大家理解不了,影响力自然就有限。所以,沟通是必须的。你好还得让人知道你好。能做也能说,影响力就大。大家和所谓的牛人就愿意和你一起工作。

CSDN:交流是IT咨询中的一项重要技能,对于普遍内向的技术人员,ThoughtWorks采取哪些方式让他们克服这个难点?

徐昊:给他们机会和挑战。比如我们的咨询项目,通常都会跟客户有这样一个条款。就是每周或者每两周都会跟客户一起回顾一下工作。而客户可以在这个时间点上选择终止或者继续合作。这就是非常大的一个挑战,你如果不能把你做到事情给客户讲清除,让客户觉得有意义,这个项目就停掉了。如果你一开始给客户一个大目标,而没能达到让客户很失望,这个项目还是可能会停掉。所以这就是一个dead or live的挑战,你不得不成长,不得不掌握沟通的技巧和能力。这是最有效的。

除此之外,本身敏捷方法中对沟通就有非常多的强调。跟BA沟通需求啊,跟QA沟通质量啊,结对的时候跟pair沟通技术和方案啊。每时每刻都在做,才能逐步提高。而且公司内的各种交流活动非常多,还有项目组上的。通常项目组都有daily session,每天5-15分钟讲一个主题。这样难度就降低了,大家参与的也更多。最后这种刻意的方式,对于一定沟通水平的又帮助,主要是从日常沟通过渡到演讲等形式。只靠这个是不足以培养沟通能力的。

CSDN:你认为目前公司最能吸引技术人才的因素有哪些?

徐昊:ThoughtWorks环境好文化好。

很多加入ThoughtWorks的人都会说,ThoughtWorks环境好文化好。公司里有很多在技术上有非常深造诣的人,而且他们非常乐意与大家分享自己的所学所想。所以,如果你把他们当作标尺,努力学习并超越他们,你就能获得非常巨大的成长。我个人感觉是,如果你能在ThoughtWorks内能达到中上水平,在行业内,你就能在前10%以内。

而文化呢,则是需要在ThoughtWorks呆很多年后才能体会到的。因为ThoughtWorks的结构非常扁平,几乎每个人都直接对地区总经理负责,只要你有一定的影响力(而不是职位,意味着有人愿意追随你)你就可以非常容易地推动你想做的事情。比如,我们一个同事,毕业生加入公司,非常喜欢体验设计,自己能力提升了之后,大家都很艳羡他的能力愿意追随他的脚步,中国区的体验团队几乎就是他以一己之力建立起来的。

还有,我们07年以前其实是没有IT咨询的,而几个同事做了这类工作之后,觉得是一个非常重要的服务类型。团队,服务模式几乎都是由最初的几个人建立起来的。如果你喜欢做事情,那么ThoughtWorks可以极大地放大你的能力和影响力。这也是我个人最喜欢ThoughtWorks的地方。

CSDN:ThoughtWorks通过哪些机制对员工进行考核?新加入ThoughtWorks团队的员工需要经过怎样的锻炼和培训?

徐昊:我们去年做了一个很厉害的改进,叫lean recruitment,把lean startup的概念用在招聘和新员工入职上。所以新员工从招聘到过试用期为止,会得到非常intensive的定制能力培养和非常及时的反馈。基本上就是两周一个目标,两周一次回顾这样。同样,每两周都会决定这个人的去留。

除了针对每个人定制的能力培养之外,公司内还有基础班,比如敏捷实践的TWI,比如面向对象能力的OOBC,比如业务分析能力的Business/Analysis Bootcamp等等。这些培训我们也针对客户提供,其实内容和水平要求还是很高的。但是对比其他实践就只能算基础班了。(责任编辑/魏兵)

0
0