透明思考@CSDN

思考着的程序员,程序员的思考

用户操作
[即时聊天] [发私信] [加为好友]
透明@CSDNID:gigix
946869次访问,排名32好友0人,关注者13
gigix的文章
原创 361 篇
翻译 1 篇
转载 3 篇
评论 1816 篇
最近评论
sap99:www.sap99.com/,SAP99资料多多

SAP免费资料下载
http://www.sap99.com

有很多的学习资料,推荐一下,
shendl:public static AuthorizationService getInstance()

{

if(null == instance){

instance = new AuthorizationService();

}

return instanc……
lishali12345:你真的需要一直那些所谓的大师来摆弄吗?
我只是一个简单的读者而已,你总是拿一些所谓的名人大家的话来盖人,一个目的无非是想增加你自己说话的分量,其实你自己的话就压根没什么分量,基于对自己的不自信才会导致你在所有的文章中,开头以及结尾经常借大家之口来表达你要意淫的某些观点。
实在不忍心那些大家,经常就从你口之中说出来啊!
carry1002:你好,我是猎头公司carry,我们服务的对象主要是世界500强企业,现在有thougthtworks公司的职位机会,TW是敏捷方法领域的领头羊,有兴趣的朋友请和我联系,我的msn:carry.1@hotmail.com
zdonking:很好,感谢gigix前辈的经验分享。
文章分类
收藏
    相册
    我的图片
    测试
    Arrays.asList("Rod", "Jane", "Freddy");(RSS)
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 海滩上的思想者收藏

    新一篇: 西行漫记(1):班加罗尔印象 | 旧一篇: Mad Dog with Truncheon

    On Beach
    海滩上的思想者
    每个星期一,每个ThoughtWorker的Lotus Notes都会收到这样一封邮件:
    Timesheets are due
    This is just a reminder that timesheets are due by midnight on Monday. This is expected of everyone.
    ……
    ThoughtWorks在全球的6个国家、十多个城市设有分支机构,再加上一贯坚持与客户紧密合作,项目组的成员常常出差到现场工作。世界各地的超过700名ThoughtWorker,他们的工作时间分配都会提交到一个在线系统,以便公司清楚地掌握每个员工的工作情况。 刚才提到的那个邮件,就是要催促大家在周一的午夜之前把自己上周的工作情况填到一张表格中:做了哪些工作,每件工作用了多少时间。每周的40小时,一定要在时间表上有所体现,哪怕是坐在一边发呆或者出去休息,也要明明白白地列出来。方便起见,大家一般以一小时为单位填表,但听说澳大利亚有位同事填表的单位是一刻钟,这种时间管理的能力和执行力就令人叹为观止了。
     
    图1:ThoughtWorks的工作时间报告表
    填表时有上百个任务可供选择。有些选项是有客户付钱的(billable),譬如在某个项目里写程序或是调研需求之类。执行这些任务的ThoughtWorker通常是被分配到某个项目组里,所以统称他们为“on project”。另一些则是没有客户付钱的(non-billable),譬如帮助招聘、做杂事、或者什么都不干。做这些事情的ThoughtWorker大抵还没有分配到具体的某个项目,他们被统称为“on beach”——在海滩上休息的人们。
    On beach这个说法并非名不副实。在ThoughtWorks,on beach的员工是可以随便安排工作时间的——可以坐在办公室发呆,可以晒晒太阳看看小说,可以到街上四处逛逛,可以在家睡一天大头觉,甚至打个招呼出门去旅游几天也没问题。之所以如此,最主要的原因其实是ThoughtWorks的业务性质:作为一家咨询公司,ThoughtWorks的项目很难预测时间。有项目的时候大家抓紧时间拼命干,没有项目的时候就可以略微放松休息一下,这也是一般咨询公司乃至很多软件公司的常见情况。不过,ThoughtWorks把on beach作为公司的一件大事来对待,自然是有其特别之处的。
    首先,on beach的时间对于ThoughtWorker们来说是一个难得的学习机会。软件开发本来就是高知识含量、高技术性的职业,如果只是一味陷入项目的工作中,没有给自己不断学习进步的时间和机会,即使很优秀的开发者也会慢慢落伍。更何况,ThoughtWorks有Martin Fowler这样的软件开发大师,还有众多优秀的程序员(像Jon Tirsen、Paul Hammant、Jim Webber等人都是在社群里颇有声望的人物),大家心里常常都想:几时有空了要找某某人探讨一下某某技术。于是乎,on beach的时间便成了难得的学习机会:读一本技术书,学一种新的语言,在内部讨论组上探讨一个技术趋势……都是ThoughtWorker们“在海滩上”常见的休闲方式。如果觉得光说不练还不过瘾,没问题,ThoughtWorks有很多内部项目拿给员工们练手。譬如前面看到的“工作时间表”,就是员工们利用on beach的时间,用Python/Zope来开发的。最近Ruby/Rails越来越热门,已经有一些on beach的员工又开始撺掇用Rails来做点东西了。
    图2:这些书都是ThoughtWorker们“在海滩上”的作品
    On beach的另一个重要作用,是让员工们——尤其是ThoughtWorks视为珍宝的程序员们——有机会体验各种不同的工作岗位。在很多公司里,各个部门之间的隔阂是一个大问题:不同部门、不同岗位的员工互相推诿、猜忌,给工作带来很多麻烦。研发部认为销售部只耍嘴皮子不做实事,只管给客户承诺不管能不能实现;销售部认为研发部做事不拼命,不配合公司战略……为了避免这种情况,ThoughtWorks提倡on beach的员工去做一些其他岗位的工作。譬如说,程序员做完一个项目,on beach的时候可以去做一些市场宣传推广的演说;也可以扮演售前的角色,为潜在客户提供方案;甚至还可以在办公室里做几天行政工作,享受一下“当老板”的乐趣——当然,所有这些工作都会被计入时间表,并且会在绩效考核与奖励上有所体现。但这并不是关键,关键是这种转换角色的游戏的确很好玩,能够让员工们体验到与平时工作不同的另一种成就感——同时也体验到其他岗位的重要与艰辛。
    从公司的角度,这种轮换机制有巨大的好处。首先,它确保ThoughtWorks成为一个整体、一个团结的社群,而不是各自为政的几个部门或分公司。为了保证“ThoughtWorks社群”的健康,ThoughtWorks采取了很多措施,譬如采用平板式的组织机构、鼓励各国分公司之间人才交换等,on beach的轮换也是其中的一项重要措施。其次,on beach的员工在扮演自己不熟悉的角色时常常显出极高的效率和创造性——其实真正理想的休息并不是什么都不做,而是做一些有趣的、新鲜的、充满挑战性的事情。所以,尽管招聘时基本上都按照“优秀软件开发者”的标准来找人,但ThoughtWorks从来不缺乏优秀的市场人才、销售人才和管理人才。毕竟,程序员是这个世界上最聪明的一群人,只要他们喜欢,还有什么是他们做不好的呢?
    很多时候——至少在ThoughtWorks中国公司——像市场、销售、招聘这类让很多程序员向往的工作,ThoughtWorker们只愿意在on beach的时间里客串一下。虽然这里也有很多优秀的“PPT演说家”,可他们更愿意把这些事情当作空闲时的调剂。在ThoughtWorks有一个传统:开发者是地位最高的一群人,写代码越多地位就越高,而管理者们则是地位最低的。所以中国公司的总经理Sid Pinney出现在哪个项目组,那里就会欢声一片,因为“地位最低的人来了”。
    图3:ThoughtWorks中国公司地位最低的人就是Sid
    On beach的时候,ThoughtWorker们最常扮演的一个角色就是HR——参与招聘流程。既然希望打造“最优秀的商用软件开发者社群”,ThoughtWorks对于招聘(尤其是技术人员的招聘)的重视可想而知:每个程序员要进入ThoughtWorks,必须先通过至少一次电话面试、两关的笔试、实际编码考察、以及长达6小时的现场面试——其中包括现场结对编程。可想而知,这个招聘流程光靠人力资源的同事是支撑不了的:一则没有深厚的技术背景,二则时间都来不及应付。所以,on beach的员工经常要参与帮忙。从校园招聘会,到推荐人选,从笔试监考,到阅读代码质量,都是on beach的同事们常干的事。现场面试就更不用说了:一个ThoughtWorker扮演客户,提出种种刁钻的需求;另一个则与candidate坐在一起,共同编程实现“客户”的需求,偶尔还扮演一下“沙包”。大家对这项任务也乐此不疲:一直以来都是被别人招聘、被别人面试,好容易有个机会可以难为一下别人,何乐而不为?
    Google有一个著名的“20%自由时间”规定:每个员工可以在每周用一天时间来做自己喜欢的事情。ThoughtWorks的做法则是通过人力资源的安排与调配,保证随时都有20%的员工on beach。两家公司的做法,可谓殊途同归。作为一家以“思考”为名的企业,如果没有这20%“躺在海滩上”的自由思考时间,ThoughtWorks还会是现在这样么?我想,读者应该不难猜到答案。
    “海滩上”的一天
    早上9点35分,J悠闲地踱进ThoughtWorks在软件园的办公室。办公室里只有三四个人,大家互相打个招呼,从冰箱里拿出饮料和早餐。J目前没有分配到项目,正在“on beach”,所以到公司上班的时间也可以自己掌握。
    10点,J把邮件浏览了一遍。有一位应聘开发者的candidate刚做完了编程测试题,J和另一位同事负责对他的代码做审核。从Notes下载candidate提交的程序,打开Eclipse,J把审核意见一条条地填到一张表格上。
    10点45分,做完了code review,J把Eclipse切换到另一个项目,一个Ruby on Rails开发的网站。Ruby on Rails在ThoughtWorks内部正在受到越来越多人的关注,以Obie Fernandez为首的“TW Ruby兴趣组”每天都会发起新的讨论。J也会参加这些讨论。在中国公司还没有拿到Rails项目之前,他自己用Rails做了一个网站系统,用来练手。
    12点,大家一起去食堂吃饭。吃完饭后,几个人溜达到软件园的篮球场,脱掉外套,男女齐上阵锻炼身体。要是遇上阴雨天不能打篮球,J通常就会在办公室里玩玩电子游子——办公室里放了一台PS2和一台29寸的彩电。
    下午2点,J打开PowerPoint开始写演讲稿。几天之后,在北京会有一场技术大会,J要代表ThoughtWorks在大会上发言,介绍ThoughtWorks的敏捷开发方法。其实所有的素材都已经在公司的资源库里,J需要做的只是把这些素材攒成一个连贯的演讲。作为咨询顾问,ThoughtWorker们几乎个个都能说会道,“老板”们通常看谁在on beach就安排谁去参加这类会议了。
    4点,J揉揉发胀的眼睛,把椅子滑到落地窗边,享受下午的和煦阳光。桌上放着一本同事James Webber写的《Developing Enterprise Web Services》,J把它拿过来随便翻看。虽然还没有亲身接触到EAI类型的项目,不过J对SOA一向很感兴趣,看看这本书觉得颇有意思。
    不知不觉中夜幕降临了。5点40分,J放下手中的书,打开浏览器,把自己今天做的事情填在时间表上,然后收拾东西,邀约着同事们一起去吃晚饭。On beach的一天,就这样结束了。
     

    发表于 @ 2006年01月14日 12:55:00|评论(loading...)|编辑

    新一篇: 西行漫记(1):班加罗尔印象 | 旧一篇: Mad Dog with Truncheon

    评论

    #Eking 发表于2006-01-14 14:11:00  IP: 202.38.204.*
    写的不错,令人向往的公司!
    #router 发表于2006-01-14 16:37:00  IP: 57.73.18.*
    每天都 on beach不知道会不会被开掉...
    #小V 发表于2006-01-15 22:16:00  IP: 61.173.57.*
    老罗要当导演了
    #yqdeng 发表于2006-01-15 15:34:00  IP: 202.117.30.*
    毕竟,程序员是这个世界上最聪明的一群人,只要他们喜欢,还有什么是他们做不好的呢?
    -----------------------------------------------------------
    这句话把人美得,呵呵:)
    #ww 发表于2006-01-15 18:30:00  IP: 218.19.7.*
    中国公司从来不会有Beach.
    #evanmeng 发表于2006-01-15 20:53:00  IP: 58.35.167.*
    首先,这是一个软件咨询公司,不是一个纯粹的软件开发公司。
    其次,这类公司的项目通常周期比较短,时间比较灵活,从事的领域多半也是“企业应用”或者咨询这类的,比起很多劳动密集型软件项目,他们所承担的风险要小一些,他们的收益要大一些。而且能够做到on beach,肯定在各种资源上还比较充裕。想一想当你的项目本来就人手不够并且在接下去的一年没有多余的资源来招新人时,你还能不能悠闲的保证有20%的员工在on beach?
    最后,也是最重要的,这个公司进入国内市场应该不久(从他们的主页上来看,在中国开办第一个cdc是2005年5月),没有被很多“中国特色”的东西给污染,比如,他们的sales和marketing人员不需要去帮助客户“制造”一个项目出来,他们所从事的咨询行业中也许没有很多根本不知道自己想要什么的政府官员。他们暂时还不需要因为想拿下某个已经内定给关系企业的单子而恶性降低报价,在他们这个行业,竞争对手中用大学生做廉价劳动力而降低成本的教授所开的皮包公司也许少一点。等等等等……

    新东方老罗有句话“奇迹是碰上的,不是找到的。既然是奇迹,就不要指望它发生在自己身上。如果你说‘我要去寻找奇迹!’,那么下场就是死得很惨。”
    所以我们要想一想,在目前的中国,能够保证员工20%的时间on beach的能有几家?对于这种新闻当消遣看看就可以了,不要说“我一定要找一家这样的公司!”,不然你一定死得很惨。


    #chenggn 发表于2006-01-16 16:51:00  IP: 218.97.162.*
    gigix, 你比李开复强多了
    #lengfeng8866 发表于2006-01-16 13:47:00  IP: 203.135.111.*
    evanmeng的观点很务实!PF
    #kao 发表于2006-01-16 13:58:00  IP: 221.237.164.*
    tw拉的屎都是香的.
    #source520.com 发表于2006-01-18 08:53:00  IP: 219.133.230.*
    站长开发推广同盟 关注网站,关注技术!
    "编程-站长"多论坛搜索 欢迎测试


    网址: http://www.source520.net/search/search.asp
    #mustang 发表于2006-01-19 12:30:00  IP: 222.35.23.*
    呵呵呵,填timeshet这样的日子我也这样过了很长时间。很多较大型的公司都有类似的timesheet系统。所以说其实在国外的程序员的压力比国内其实要大。因为你的每个小时都是被计划和管理,所谓的micro-management.

    我曾工作的某大型公司的IT部门其实也是一个内部咨询公司,其他部门比如sales需要技术支持,开发软件也是需要向IT部门付钱。于是IT部门的每个人的时间都是有$$在支持的。如果到年底某个人的timesheet上的$$时间少于一个比例,可以考虑换工作了。

    因此上我和我的同事们都努力争取在公司的每一天每一个小时都是有人买单而不是由IT部门的预算买单。因为这意味着你给部门/公司挣钱了,你的第二年的薪水就可以加了。如果某个开发人员的时间100%由其他部门(客户)买单,那他的地位肯定是很高的。我觉得咨询公司的on beach时间多不是一个好现象吧,这跟产品型公司不同吧。

    分享一点国外生活的经历,不要好像国外的程序员都过天堂的生活。 :-)







    #moxie 发表于2006-01-20 09:06:00  IP: 58.33.104.*
    什么是“中国特色”?不就是所谓的关系嘛!说白了就是腐败和无能!
    #ComconJava 发表于2006-02-04 00:35:00  IP: 58.49.255.*
    呵呵 这公司是Martin Fowler的吗 没想到做这么大了 我就知道西安开了一个分点

    他们也做开发吗 还是就做培训啊
    #程序陌路者(临时名称) 发表于2006-02-19 14:59:00  IP: 60.25.145.*
    如此的体制只能出现在理想的现实中,也就是自我满足的公司状态。一个公司如果这个样子,你觉得他的最终出路会好吗?Google的休息日和ThoughtWork的On Beach是完全不同的,前者是合理的分配时间已达到员工的最大热忱,而后者仅仅是一种类似于杂工的经营模式。
    #maxazure 发表于2006-03-20 16:34:00  IP: 219.155.22.*
    有理由相信这样做是现实的,但是需要注意对象-你的程序员是否清醒的认识现状和要做的事情。
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © 透明@CSDN