物态网:最新、最全的物流体验!!www.606212.com
您现在的位置:主页 > 最后一公里 >

十一年前的文章:聚焦最后一公里

来源:物态网 所属分类:最后一公里 标签:最后一公里(52)

  经常在CSDN上看到“程序员××岁之后怎么办”的讨论,笔者也曾为这个问题所困扰。笔者有10年的软件开发经历,4年前从公司辞职,成为一名独立软件开发技术顾问,潜心研究UML/需求/设计相关技术的应用,并上门为软件组织提供技术指导和训练服务,到现在为止,上门服务的软件组织已经超过80家。笔者把一些很零碎的个人感觉整理成文,如果您现在是一名程序员,为以后的职业生涯作筹划,而且对软件开发充满热情,想把它作为长久的事业,希望这点浅见能给您一些参考。
 
  上路需要什么
 
  首先说一下笔者对“咨询”的理解。咨询不是写作,写作有助于总结经验和帮助他人学习,但技术作家并不一定是顾问,虽然顾问也因为有感而发而写作。咨询也不是演讲,一些开发技术大师经常做演讲,但他们未必在做咨询。咨询不是直接承担开发项目,他注重授人以渔甚于授人以鱼。咨询不是开发技术支持,例如,SQL Server的开发技术支持也许是对SQL Server认识很深的专家,但他们提供的服务不是咨询。咨询不是培训,培训公司和咨询公司不是一回事,例如麦肯锡是咨询公司,但不是培训公司。
 
  笔者认为:咨询就是研究软件开发团队当前的问题,运用自己的知识和技能,提出定制的解决方法,并通过各种手段促进开发团队行为的改变。
 
  笔者把一名技术顾问所需要的条件归纳如图1。根基是聚焦最后一公里,激情、技能、服务心是三根柱子,屋顶是市场需求。
 
  图1 走上顾问之路需要的条件
 
  市场需求
 
  软件越来越复杂。说起搭建软件,经常使用到的一个比喻是建筑。笔者认为,这两个东西的复杂性不是一个层面上的。一间房子,今天用来作餐馆,明天可以用来作花店,后天甚至可以改作公厕,但餐馆软件、花店软件和公厕软件所涉及的业务规则可以差别很大。软件正在越来越深、越来越广地渗透到各个行业以及生活的各个层面,简直是要映射这整个大千世界,其总难度估计正朝着神创造世界的难度进发。和建筑对应的应该是建筑软件。软件越来越复杂,如果开发团队不改进其开发方法,很难应付复杂性的增长。这种不断加剧的复杂性,导致需要外部的人专门来研究一些特定的问题,这些问题可能开发团队不断碰到,但因忙于具体事务,无暇专门研究解决。于是就产生了对需求专家、对象设计专家、.Net架构专家、过程改进专家……等技术顾问的需求。
 
  服务化、团队化的趋势。随着软件复杂性的增加以及编码工具效率的改进,开发团队里,不再只有编码技能得到重视,而是遍及整个开发生命周期。各大工具厂商也在向这方面转型。几年来Borland先后购买了TogetherSoft 、Starbase、BoldSoft和TeraQuest,专心打造ALM解决方案,并把公司由工具厂商向服务厂商转型。IBM购买Rational,买掉PC部门等举动,也表明重点在向服务转移。微软的新开发工具叫做Visual Studio Team System,从Team System这个名字也可以看出微软的趋势。在这样的土壤之上,以改进开发团队技能为目的的开发技术顾问服务才能蓬勃发展。
 
  竞争的加剧。从2002年开始,国内的一些网站和公司陆续开始提供软件工程培训和咨询服务。2005年,一些国外的软件开发咨询公司也开始在中国开展业务,这也说明市场发展了。
 
  基于以上思路,笔者觉得,市场需求正在增长。注意:只是“觉得”,并没有确切的数据和证据,推理也未必严格。
 
  市场需求是屋顶,没有需求,空有其他素质也无济于事。市场需求可能超越了个人掌控之外,但其他素质应该是个人可以掌控和改进的。
 
  激情
 
  笔者把激情排在第一根柱子。软件开发是特别需要终生学习的行业,而软件开发的复杂性加剧对此提出了更高要求,要求顾问成为一名通才型专家,而且要更频繁地更新知识。顾问工作是非常辛苦的,以笔者为例,经常有开发人员表示羡慕笔者:工作自由,随时可以休假,收入高…。但背后的真实情况是工作时间根本不自由,上班可以请假,在给开发团队做服务时总不能请假吧?随时可以休假也就意味着随时可以工作,根本没有休假的概念;,除了偶尔玩玩冠军足球经理,其他娱乐已经很少;,长年从一个城市到另一个城市,不能照顾妻儿更不用说了。如果对软件开发没有足够的热情,就很难支撑下去。
 
  激情来自对软件价值的认识。今天,网络改变了很多东西,实际上网络只是软件的一种表现形式。而网络普及之前的风潮就是计算机的普及,Bill Gates“让每个桌面都有一台计算机”的愿景改变了整个世界。不管今天我们如何赞Google弹MS,MS们的功绩不应忘掉--谁把计算机摆在了每个人的桌面上?归结为一句话:软件带来人类自由。
 
  激情来自对软件之美的认识。Robert C. Martin曾写过一篇小文章《软件之美》,如果从创造世界的角度来看的话,软件的各个组成部分之间的有机协作就是一种美。用《人月神话》中的话说,“是上帝创造世界的折射,一种呈现在每片独特、崭新的树叶和雪花上的喜悦”。
 
  有了激情,才有不断提升技能的动力。
 
  技能
 
  第二根柱子是技能。笔者尝试把顾问所需要的技能及重要性对比列出如图2:
 
  图2 笔者认为的技能重要性比较
 
  专业技能。作为一名软件开发技术顾问,专业技能永远是瓶颈。以笔者为例,几乎每周笔者都收到各种模型、文档、代码,也会被问到各种奇奇怪怪的问题,有的能解决,有的不能解决。这些都强迫着笔者去学习新知识,顾问首先应该是研究人员,只不过他研究的是前线的问题。笔者每隔一段时间都要把china-pub计算机书店里的“近期新书”都点开看一遍,觉得可以看看的就下单。买来后扫一遍,觉得没有必要再看的,就再卖掉或送掉。软件开发最终是有道理可讲的。笔者不主张把软件开发神秘化,认为程序员群体和软件开发过程有多么的特殊性。常言道人心难测,也都还有心理学这样的科学,甚至宗教还有神学。两份需求规格摆在一起,总会有一份更好地权衡了涉众的利益;两份设计摆在一起,其中总会有一份更加适合项目的当前上下文。就算答案不是唯一,至少其中的折衷、权衡的道理,通过不断学习提高,还是可以理得清楚的。
 
  人际关系技能。顾问要改变的是团队的行为,人际关系的技能相当重要。除了和开发人员打交道之外,还要和人力资源人员、商务合作人员打交道。有时候他们的思路和开发人员差别相当大,在一些公司,行政人员压在开发人员头上,这时如何能折衷地配合行政人员的要求也很重要。
 
  传授技能。传授技能并不是很重要,以笔者看来,如果一名专家真的能解决团队的问题,只要他不是太狂妄,就算表达结结巴巴,从他眼神中的光辉我也觉得他是一个好的顾问(其实就算是个哑巴,我想他也能够帮到开发团队的)。在笔者看来,基本不存在传授技巧不足的问题,如果有这样的问题,背后反映的是专业技能不专的问题。如果知识已经融化到血液里,怎么表达出来都是好的,如果表达很苍白,往往因为没有吃透。
 
  学历等其他技能。笔者见过非名校毕业本科学历的开发人员,作了多年开发,依然对技能的提高充满热情。也看见过名校毕业的计算机专业硕士博士,作了几年开发之后,改换了市场或管理的工作。所以笔者认为,这方面因素是影响最小的。
 
  服务心
 
  谦虚。顾问一定要谦虚,尊重开发人员,他们才是奋战在第一线的人,最了解情况的人。不要以为你设想的方案就一定套得上他的实际。就算最后证实90%的可能是套得上的,但在没有变成实际之前,不要做假设。要把每个团队的情况看成是新情况,每一次经历都是全新的。不懂的事情不要做评判。
 
  锤炼。把每一次服务看成是锤炼技艺的机会。在过去的几年中,伙伴们一次次地给我机会来实践、发展和锤炼技艺。特别是他们最开始时给予的信任,最让我感激不尽。优秀的软件开发顾问不能培训出来,只能锤炼出来。Martin Fowler不好复制,这正是竞争的门槛所在—既然无法象压光盘一样批量复制,就不存在大公司倾销的危机。
 
  金钱。我们不可避免要说到钱的问题。做这个工作收入一般要比大多数开发人员高得多,但毕竟是一个卖苦力的工作,不可能象网易丁、腾迅马、盛大陈…一样发展到身家过亿,而且不是所有的顾问都有很好的收入。虽然提供服务是为了获得收入是一个事实,但价格是次要的因素。至少从笔者这几年的经历中,从没有和对方为钱的问题闹过不愉快或过多纠缠。主要原因是我们选择看重服务质量而不是价钱高低的开发组织,来为其提供服务。幸运的是,服务对象一般是主动找来或者互相口口相传介绍来的,事先对UMLChina有一定了解,这样建立起来的纽带更牢固。
 
  聚焦最后一公里
 
  “聚焦最后一公里”是地基。笔者觉得这是区分何为真正顾问服务的一种方法。这也是UMLChina的服务一直以来秉行的路线,一条比较“草根”的路线。
 
  立竿见影。不能很快应用在开发里面的技能,教给团队是没有用的。顾问传授的一切必须立竿见影,这对顾问的知识面和灵活运用技能的能力提出了严苛的要求。长远打算,过分宏大的改进往往会夭折。每教授一点,就帮助团队去实践,只要大家的相关技能一点点地上去了,而且取得了共识,那些适合团队的整体框架、宏大规范慢慢就出来了。
 
  匍匐前进。宁可十日不将军,不可一日不拱卒,改进一点是一点。如果团队有行之有效的需求规范,不必考究于它是不是采用用例技术,而是把重点放在需求的内容上,使团队在何为需求,何为设计上获得共识;如果团队面向数据库开发的方式很熟练,可以借鉴面向对象的思想,折衷到过程+数据库的开发上,不必强求团队“对象化”。
 
  拿来主义。在为开发团队改进技能时,不必拘泥于某个流派或风格,一切采取拿来主义的态度,管用就好。也不必计较于是否原创,要善于占在巨人的肩膀上,着力于细节和应用上,正所谓:不做先知做圣徒。

转载声明:本文来自物态网,转载请保留出处。
本文标题:十一年前的文章:聚焦最后一公里
本文地址:http://www.606212.com/a/zuihouyigongli/7209.html
相关分类