在上一篇关于SQL Server中国研发团队的文章中,我提出“文化”是团队建设中领导层面临的最重要的挑战之一。我们如何确保团队伴随着“正确的”文化而成长?究竟什么才是“正确的”文化呢?在这篇文章中,我想比较深入地探讨这个问题。
让我们首先从“文化”这个词的定义谈起。韦氏词典将“文化”定义为:
主条目:culture 读音:['kʌlʧə]
功能:名词
词源:Middle English,cultivated land,cultivation,from Anglo-French,from Latin cultura,from cultus, past participle
综合的人类知识、信仰和行为的一种模式,这种模式取决于学习能力和传播给下一代的能力 b:一个种族、宗教或社会团体的习惯信仰、社会形态和物质特征 c:一个机构或组织特征性的一套共同的态度、价值观、目标和实践 d:与一个特定领域、经济活动或社会特征相关联的一套价值观、约定或社会习俗。
如此说来,文化是指共同的态度、价值观、目标和行为。每个组织都有一种文化,无论这种文化是刻意培养出来的还是自然演化而来的,或是这二者的结合。有时候,一个组织会很明确地用语言描述出他们希望培养的价值观和文化属性。但是,大多数人都无法理解甚至不记得一个组织“强制”的文化应该是什么,这一点并不让人惊奇。我们每个人都伴随着某种文化背景成长,但估计很少有人会说,他们是通过阅读一份文档中的价值观描述而获得这种文化倾向的。多数人都是通过日常生活汲取文化营养,包括每日体验、行为、反应、正面或负面的反馈和累积,并且从接触到的不同的社会角色像我们的长辈、上司及同事感受文化影响。随着时间的推移,这些价值观念和行为模式就根植在我们的脑海中,我们自己也成为 “已有文化”的一部分,并开始向组织内的其它人传播这种文化。
研究显示,无论是个人抑或团体、组织,一旦染上某种文化就很难改变或“去除”。同时,就长期影响而言,要区分成功的组织和平均或低于平均水平的组织,“文化”元素是一个更可靠和更重要的衡量因素,其可靠性和重要性远远超过商业策略、一项具体的技术或流程优势,甚至超过特定的领导力优势,不论这种领导力是如何有魅力或富有远见的。恕我直言,这就是为什么让一个团队伴随着“正确的”文化起步是如此重要,不论每个组织如何定义“正确的”文化。
对一个像SQL Server中国研发团队这样的组织而言,显然很多“正确的”文化是遵循我们位于雷德蒙的“母团队”而来的。当然,这是在中国,我们会理解和适应以使我们自己的本地特色融入到文化中。但一些本质特征仍然是从雷德蒙的母团队中继承而来的,正是这些特征界定了我们是谁,以及我们的行为特征。那么,这些所谓的“SQL Server文化”是哪些呢?很难为这个积累多年的文化给出准确定义或归结为几个关键点,但我尝试在这里列出几点我认为是SQL团队文化的核心:
系统文化
我们是一个系统的团队。我们创建关键业务平台软件,数以万计的组织利用我们的软件建立和运行关键业务应用,而这些应用又被全世界范围内的数万人群使用,一天24小时,一年365天地不间断应用。我们开发的软件有着数年的生命周期,实际上往往是几十年。任何错误或弱点,无论它存在于我们的设计阶段、实现阶段或流程、方法学中,都可能而且肯定会被表现出来。所以对人的素质要求门槛很高!在这种环境下要取得成功,我们需要一种专业级工程师的思维(见下文)。业余选手不适合!
IC文化
建设关键性系统软件是需要数年时间来学习的。我们常常在招聘工程师时告诉他们,尤其是对那些刚从大学毕业的人们,甚至要3到4年后他们才能真正在岗位上完全发挥生产力!虽然这听起来有点夸大,事实上是真的如此。工程师要学会客户需求的是什么,如何将其转变为一个产品或功能,什么是好的设计与坏的设计(或伟大的设计),如何权衡利弊,如何有效地撰写强大、安全、可靠、高可扩展性、高性能的代码,而且要易于维护和易于获得领域内的支持,要以有效的方式与团队一起工作,所有这些是需要数年之久才能学会的。这是一个由聪明的新的毕业生转变为专业级工程师的过程,这中间不存在任何捷径。
那么什么是IC呢?IC是微软术语,指个体贡献者(Individual Contributor,简称IC),与领导或经理相对应。在我们这样依赖高度技术技巧与知识的事业中,我们要非常重视个体贡献者。如果每一个聪明的工程师都打算在自己四年职业生涯后停止做开发而仅做管理工作,我们是无法建立像SQL Server这样的产品的。我常常列举这个统计数字:微软全球范围内有几十个或许数百个副总裁,但只有14个院士(我们很幸运,有2个院士在SQL Server)。我的意思并非是说副总裁不重要,但在微软,当然在SQL Server部门也绝对如此,我们非常重视那些愿意将整个职业生涯贡献给技术开发的人。在某种意义上说,比尔盖茨就是一个终极IC,当然他有下属,但他的主要角色是公司的首席软件架构师,帮助把握公司的未来技术方向。在微软,无论怎样强调IC角色和深厚技术知识的重要性都不过分。
事实上,我相信这一点是基础的基础,以至于我此刻想谈得远一点,而并非仅指SQL Server、微软或任何特定的公司。在我亚太区的旅行中,许多人表达了这样的信念或希望:亚太地区作为一个整体(尤其是几个特定国家如中国和印度)在世界经济体系中应该越来越多地承担起技术领导地位。显然,亚太地区有着丰富的人才,为这种可能提供了必要的条件。不过在我看来,同样毫无疑问的是,如果亚太地区真的要做到这点,即由在这里的实验室和公司主导长期的产品线和产业创新,就必须要创造一种重视深度技术成就的文化。在目前的环境下,当我和大学生们谈起他们的职业抱负时,10个里面就有8个想在毕业的几年内成为管理人员。说实在的,我们无法期望在这样的基础上建立下一代的技术领导地位。我认为就整个亚太区生态系统而言,而不仅仅是指某一特定公司或团体,建立一种重视深厚技术知识和IC的文化是势在必行的。
创新文化
数据库产业是一个成熟的一个产业:30多年的历史,每年全球超过200亿美元的年收入,人们很容易认为在这个阶段创新不再是这个产业驱动性的力量了。这样想就大错特错了!在之前的文章从数据库到全面的数据平台,我描述了该领域面临的前所未有广度和深度的挑战。为了应付这些挑战,创新必须是我们基因中的一个核心价值观,否则我们将很快没落。创新是可大可小的,技术上的创新或流程上的创新,但创新必须是深入到每个员工的日常生活和呼吸中的价值观。SQL Server有着创新的传统,甚至从根本上改变了这个成熟的产业,包括领先的易用性和自动化管理、在核心平台上集成BI功能、显著的简化开发者体验等。今天,我们继续着这一传统,在下一版本的SQL Server中有着许多突破性的创新如实体数据模型等。我们绝对需要在未来发展中继续注重创新。
聚焦客户
在今天这种超级紧迫的环境中,很容易仅仅关注竞争对手而忘记了客户。但至关重要的一点是,只有服务好你的客户才能击败竞争对手,而不是相反。聚焦客户,这不是某一个特殊部门或角色的工作。当然,公司肯定设有专门面向客户的部门,像我们的客户支持服务(Customer Support Services,简称CSS)和其他各种领域的组织。但聚焦客户是组织中每个人工作的重要职责。无论你是一个开发者、测试者、项目经理、架构师、甚至管理人员,不知道客户最终想要的是什么,你不可能做好你的工作!没有比失去与客户的联系更容易在行业里落后的了。在我们的团队中,每一个成员都有一项强制性的工作,那就是花一部分时间在客户上,不论是通过新闻组、论坛还是参加客户会议,或其他各种方式。
做正确的事
我可以继续讨论一些SQL Server和微软重视的其它价值观,例如尊重多样性、开放性、诚实但尊重、接受大挑战等,虽然这些都是非常棒的价值观,我们的确非常重视,但如果你什么都谈了,那就等于什么都没谈。所以我想以一个简要的价值观来总结,我称之为“做正确的事”。这听起来可能有点蠢,但这却是我们在SQL Server团队赖以为生的价值观。无论工作内容是关于顾客的,关于产品的,或是一个内部问题,这是指导我们日常工作的座右铭。我想举几个例子说明。我敢肯定,每个SQL Server客户直到今天都还记得Slammer蠕虫病毒。这一事件彻底改变了我们SQL Server团队的软件开发方式。当蠕虫病毒来袭时,我们其实刚刚通过一轮安全压力测试并发布了SQL Server的SP3,SP3实际上修补了蠕虫病毒所利用的漏洞。然而,一旦事情发生了,问题不再是我们是否已经发布了补丁。我们必须帮助客户备份系统,尽快地以安全的方式恢复系统运行。就短期而言,SQL Server团队费了很大力气给出工具和指导方针,帮助顾客恢复自己的系统。但我看到的是我们努力所带来的长期变化,我们开发过程的变化、我们备灾的变化、我们整个安全方针的变化。在过去几年中,这些努力的结果已经证明了自己,SQL Server已经证明自己是市场上最安全的产品之一。这意味着我们将不会再有弱点或漏洞吗?显然,答案是否定的。然而,我们可以说的是,我们每天都在努力着,努力使这种事件发生的可能性尽可能降低;而且如果这样的事件再次发生,我们已经在时刻准备着响应。
我想举的另一个例子是SQL Server 2005中的数据库镜像(Database Mirroring,简称DBM)功能。DBM是该版本中最重要和最受欢迎的功能之一,显然我们面临着压力要发布该功能。然而,快临近SQL Server 2005发布时,情况变得很清楚,我们没有时间把这个功能放到产品中了(无论是在微软内部或一些选定的客户那儿)。像DBM这样关键的功能,我们需要一段时间来证明它已经足够在生产环境中应用。所以,我们面临艰难的抉择,延迟发布或无论如何都要发布DBM或者把DBM从该版本中去掉。这几个选择没有一个是容易的,如果容易,我们就不会在这儿谈论它们了。但最后,我们决定正确的做法是先发布SQL Server 2005但并不标明DBM符合生产环境使用标准,在随后的时间完成产品测试,然后在SP1中标明DBM符合生产环境使用标准。当然,短期内该决定也带来了一些痛苦。但现在回头看,客户会告诉我们,他们欣赏我们的加倍小心和努力,以确保这项功能在他们投入生产使用前是完全合格的。
但愿这两个例子能让你知道什么是我们所说的“做正确的事”,实际上还有很多此类的例子。这篇文章已经够长了,就不再举例了。我希望大家都能明白,当我们提到“SQL Server文化”时它意味着什么。要确保我们SQL Server中国研发团队在未来几年中伴随着这种根深蒂固的文化印记一起成长,这是一个有意义的挑战。也是我们决定建立这个团队时所制定的核心承诺的一部分。
下次再聊 —加油,再见!
Prakash(孙博凯)
“Min,我知道你以前有客户支持的经验,有没有兴趣了解一下微软客户服务是什么样的?”Prakash眨眨眼睛,一副吊我胃口的神态。
“当然了。”
“是这样,STB要在中国推广Frontline 项目,我推荐你作为第一个参与者,大概会花3周时间……”
“啊,3周是不是长了点儿啊?SQL Server 2008马上就要发布了,我这儿还天天加班呢……”我有点后悔刚才答应得太痛快了。
“花这些时间是值得的。你知道,美国SQL Server团队里好多资深的同事从这个项目回来后,都说自己彻底改变了。”
我心里还是犯嘀咕:你确信他们都是往好的方向变化吗?
以上是本人荣幸地成为中国区Frontline项目第一人的过程。言归正传,先来说说这个Frontline项目到底是个啥东东吧:它是微软服务器与开发工具事业部(STB)为了由“以产品为中心”转变为“以客户为中心”推行的一系列计划中的一部分。参与这个项目的产品研发工程师将用整整2-3周时间近距离观察企业客户使用微软产品和技术的“真实世界”,理解他们实际工作中的迫切需求和“痛苦”,进一步思考如何开发更好的产品和技术。
第一周我在微软亚太区全球技术支持中心与工程师们交流,接听客户的产品支持电话并参与解决问题。余下两周在客户现场,直接参与应用系统部署并听取客户对产品和技术的反馈。
在支持中心的日程安排以小时计。第一天早上9点,准时向我的Mentor小邓报到,她花了一上午向我详细介绍了他们的责任范围、工作流程和使用的各种工具。来而不往非礼也,当天下午我也为技术支持中心的同事们举办了一个“数据库查询覆盖”的讲座。挑选这个题目我是花了心思的,一个是因为查询优化器是我的团队负责的组件,另外大家对查询优化也比较感兴趣。果然,下午的讨论很热烈。小邓要求每个人发言之前先自我介绍一下:叫啥名字,负责什么组件,哪儿人,家里娃多大了……印象最深的是一位绰号“BI一条龙”的同事,他负责集成服务、分析服务和报表服务,在BI方面是位专家。这种介绍方式安排得太周到了,我很快和大家熟悉起来。趁热打铁,讲座后我就和负责各组件的同事约好了时间,周二、周三,和热线部门的几位同事在一起工作;周四是Internet支持部门;周五上午是Supportability,下午访问合作伙伴售前支持。
Internet 支持工程师的工作很有意思,我第一次知道我们的技术论坛等网上社区是有专职人员参予问题解答的。我也使用他们的工具浏览了一下未解答的问题,从SQL实现到数据集成服务问什么的都有,想回答还真不那么容易。这也多少反映了研发人员和技术支持工程师的区别,我们对产品局部功能如何实现了解比较深入,支持工程师则对整个解决方案和产品特性了解的都很全面。
在Supportability部门的半天经历也让我获益匪浅,之前我可分不清楚什么是可支持性,什么是可管理性(Manageability)。在负责SQL Server Supportability的小平跟我讲解之后,我算彻底是明白了。可支持性是指软件诊断、修复和预防问题的能力;而可管理性则指监控、维护和控制软件的能力。举例来说,SQL Server支持在线创建索引,支持数据文件自动增长,自动维护统计值,这说明可管理性比较好;可支持性则反映在解决问题上,比如你会用DBCC检查和修复数据文件,也会用到profiler去帮助你分析性能问题。
在技术支持中心一周结束后,我又现场参与了SQL Server 2008试用客户的应用部署。他们的应用把SQL Server 2008的空间数据支持新功能与商业智能报表相结合,非常直观的展现了各大区域的业务数据。相信随着数据库对空间数据支持的越来越完善,客户开发越来越方便,这种类型的应用会很快流行起来。
最后一周,我和同组的另一位测试开发工程师胡雷访问了一个重要银行客户。通过与项目实施和系统管理人员的交谈,我们了解到用户对SQL Server的能力和易管理性颇为认可,特别是听到用户的几个应用数据量都在n个TB,让我心里颇有些高兴:我们对企业级数据库的重视还是有点成绩的嘛。当然也有批评,比如恢复数据库备份的时候,那个容易被忘掉的“MOVE TO”子句,咋就不能多给点儿提示呢?这个这个,虚心接受。我们就是为了收集意见来的,一定会把中国客户的意见转达到整个SQL Server产品开发团队。
应要求,我们也向客户介绍了SQL Server 2008的情况。客户对一些对银行金融应用相关的新特性,比如外部加密支持、外部密钥管理和可覆盖查询的审计还是很感兴趣的。针对BI数据压缩、数据库备份压缩这样的新功能,他们也询问了很多细节问题。毕竟对TB级的数据库,压缩不单可以提高IO效率,也能节省存储设备上的投资。
为期三周的Frontline项目结束了,比我接受任务时想象的要快得多。我彻底改变了吗?不知道。但是我对什么是好的软件产品的理解有了很大改变:功能强大,有各种超酷特性很重要,但更重要的是能直接满足客户的需求。一个好的产品还要易于使用、方便管理,这叫高可管理性;客户使用上出了问题要容易诊断,最好还能自动修复,这叫高可支持性。
何民
原文发表于服务世界 开发未来。
时间过得飞快,不知不觉来到SQL Server中国研发中心(SQL CRD)已半年多了。简单地记录一下自己的感想吧,免得再过些日子就全忘了 J
这半年来,作为一个SDE,我感触最深的就是微软为一个开发人员成长所提供的优越环境,包括世界级的项目机会、丰富的技术资源,以及大量的培训交流。
来微软之前,我和很多人一样,担心从事的会是一些边缘性的工作,无法接触到核心技术。事实证明我的担心完全是多余的,我们和Redmond总部的开发组在同一个平台上工作,共同应对各种各样的技术挑战。例如,我们组开发的产品是SQL Server Integration Service (SSIS),它是一个ETL工具,用于数据的抽取、转换和加载。当面临数据仓库的海量数据环境时,其核心引擎的性能至关重要。在这一点上,遇到的问题、可能的算法改进等,都是在整个组内讨论解决方法的,如果你的算法能有效提高性能,就会被采纳。考虑到微软产品的巨大影响力,你的每一个改进都将影响世界各地的亿万用户,这种成就感是难以名状的。
除了共同改进产品外,中国团队也独立负责一些组件,例如我们SSIS上海小组正忙于SAP BI Connector组件的研发。我们需要全面负责该组件所有的事项,从设计、开发、测试、文档到发布,我们上海小组都需要全面负责、协调各方面的资源。在SSIS下一个版本中,更是计划将核心引擎的很大部分放到中国来开发。在这种世界级、平台级的核心软件开发过程中,开发人员可以接触到最先进的技术,迅速地成长起来。
微软紧密的全球化协作开发也提供了难得的项目学习体验。由于工作需要,我们经常会在即时通信工具Office Communicator上和Redmond总部的开发人员探讨一些问题,然后发现这些问题涉及到其它组,于是又和印度的开发组交流。随后又收到另一个国家的微软顾问的信,希望你帮忙解答产品相关的问题。这不得不让人感叹,软件和互联网真的已经把地球变成了平的。在这种紧密的全球化协作开发中,一个技术人员的语言能力、沟通技巧、技术阅历都会得到迅速的提高。
除了这些世界级、国际化的项目机会外,微软内部丰富的技术资源更是开发人员成长的宝典。作为全球软件行业的旗舰,微软几十年来开发出众多影响深远的经典软件。这些软件研发过程中的经验教训经过一代代的积累,形成了微软内部的异常丰富的技术资源,包括大量的文档、流程和工具。打开SQL Server部门内部的服务器,各种各样的概念、流程和工具软件令人眼花缭乱。以至于我经常感叹,即使想把SQL Server部门内部应用的软件过程和工具等基本掌握,就是个令人望而生畏的任务,更不用提还有那么多其它的产品部门了。当软件工程课本上枯燥的理论化为日常工作中一个个真实的流程、工具时,一个初学者也会迅速成长为一个专业的软件工程师。
最后,微软为员工提供了丰富的培训交流,包括各种讲座、课程和人员交流计划。例如,目前SQL CRD上海就和Redmond有一个双向的交流学习项目。一个称为“丝绸之路”计划,它资助中国的开发人员去Redmond学习工作。另一个则称为“马可波罗”计划,它是反过来资助Redmond的人员到中国来工作一段时间。我在去年入职后,经过短暂的一段熟悉时间后,即受“丝绸之路”计划资助,派往Redmond和总部人员一起工作六周左右。到现在为止,我们SQLCRD BI组的正式员工几乎都被派出学习了一段时间。无论是在技术还是交流上,我们都从这些经历中获益匪浅。
丁晓宁
很高兴地宣布Windows Server 2003上64位OLEDB Provider for ODBC 发布了!你可以从这里下载安装程序,也可以在不久后随“Windows Update”发布的版本里安装。
MSDASQL是一个桥接OLEDB与ODBC的组件,使得基于OLEDB和ADO(内部使用OLEDB)的应用程序可以操作基于ODBC驱动程序的数据源。MSDASQL随着Windows操作系统发布,而Windows Server 2008和Windows Vista SP1是最早内置64位版本MSDASQL的操作系统。
曾经在MSDN上有传言说64位MSDASQL将不会被发布。实际上,在接到大量客户需求的基础上,我们投入相当的资源开发了Windows Server 2003、Windows Vista SP1和 Windows Server 2008上的版本,以满足客户需求。所以,Microsoft并没有“抛弃”这项技术的计划 J
林默 WDAC项目经理
其实一开始就想记录一下发布会当天的情况,由于最近事情比较多,一拖再拖。今天给自己定了目标无论如何要写一些东西,以纪念这个“历史上最大的IT发布会”。
2008年3月13号,一个阳光明媚的日子(其实是不是阳光明媚我也不记得了,呵呵)。由于通知是12点开始,我11点50就到了工人体育馆。到了才知道原来是12点开始入场,真正的开始要在下午1点半。不过这时已经有很多人开始入场了。入场时给每个人都派发了一个手提袋,不出我所料是今天要发布的几个产品的试用装和一些宣传资料。原来还担心这一个半小时不知道怎么打发,入场之后才发现有很多赞助商的展区,大家都在参观各种基于Windows技术平台的产品展示,还有的赞助商提供实际操作和抽奖机会。随着人流在体育馆外围转来转去的,收到不少的宣传资料,还领到了一袋妙芙蛋糕,正好填填肚子,呵呵。
快到1点半的时候,半个工体几乎已经座无虚席了(由于舞台搭在场地中间,只面对体育馆的一半座位,所以只有面向临时舞台的一半座位开放),原来预计的是6000人到场,据说大约到了7000人。遗憾的是没有带相机,错过了记录这个历史性事件的机会。大屏幕上滚动播放着IT相关产品以及微软产品的历史发展过程,配以激昂的音乐,让人听得热血沸腾,好像每个人都是大侠,来参加这个盛大的武林大会。
1点半,演出正式开始。先是由鲲鹏乐队给大家热了热身,接着在简短的介绍之后,重量级人物——鲍勃·穆格利亚——登台演讲。鲍勃·穆格利亚首先介绍了微软的“动态IT”的概念,进一步引出今天发布会的3大主角:Windows Server 2008、Visual Studio 2008 和SQL Server 2008。对于这三个产品功能的介绍并不是老生长谈的新功能列表,而是巧妙的和一家虚拟的网上咖啡店的业务需求联系在一起,分别介绍了Windows Server 2008的高安全性、易管理性和内置的虚拟技术;Visual Studio 2008的易用性和团队协作开发特性;以及SQL Server 2008在商业智能上的最新进展。由于每一个演示都是在一个虚拟的情节中进行,并没有太多的术语和直白的功能列举,还不时的穿插一些小幽默,使得整个的演示都很吸引人,我可以感觉到周围的人都看得津津有味。
对于SQL Server 2008的演示我是格外关注的,因为自己刚刚加入SQL中国研发团队,很想了解一下SQL Server最新的功能,同时也为了能加入这个团队而自豪。SQL Server 2008的演示基于其最新的商业智能特性,它可以从多个数据源将数据集成(SSIS - SQL Server Integration Services),对数据进行深入的分析(SSAS - SQL Server Analysis Services),然后以多种形式展现给业务人员和管理人员查看(SSRS - SQL Server Reporting Services),如下图所示:

更关键的在于,实现一个复杂的报表并不意味着需要多么复杂的操作和高深的知识,而就像普通的Office文档操作一样的简单和便捷。而商业智能这一部分也正是SQL中国研发团队的工作重点之一,我虽然来的时间很短,但也已经接触过几个SQL Server数据集成服务(SSIS)组的同事。一想到这个如此强大的产品就是由身边的人一点一滴的努力做出来的,觉得自己要更努力了。正像主持人最后所说的那样,技术前进的每一步都离不开每一个技术人员的努力,每一个人都是英雄。Hero Happens Here!
郭亚涛
白驹过隙,在org:\\stb\sql\dp\xml工作已经半年多了,感受良多。最深刻的体会,莫过于微软提供的极其丰富的员工培训资源。作为IT企业中的常青树,微软自然积累了丰富的经验,在员工培训方面,更是有独到之处。
或许你曾经在面试中被问到职业规划是什么。对于一个刚毕业的学生而言,这应该是个很难回答的问题,因为很少有学校在毕业前开设职业培训课程,媒体上的资料也相对匮乏。而在微软,定制自己的职业规划却是每年必须完成的工作。微软不但提供了完整的在线教程,还提供了相应的软件来辅助完成这项任务。这是一个相当不错的机会,可以在新年(财年)伊始静下心来思考自己近期以及长期的发展。资深的经理还会根据每个人的特长和兴趣爱好加以引导,并且在一年中的某几个时间点进行评审并进行辅导。良好的开端是成功的一半,有了这份自己定制的规划,一步一个脚印,实现自己的梦想也不仅仅是梦想了。
说到微软内部教学网站,那实是值得大书特书。数以千记的在线互动教程,覆盖了软件开发的方方面面,而且汇集了微软多年以来的经验。对于新员工,还有专门的热身教程,帮助你更快地融入公司的文化之中。
作为一家历史悠久的软件公司,软件资源自然异常丰富,最重要的是,员工可以在第一时间拿到最新产品的安装包,接触最新鲜的技术。微软内部有一种eat your own dog food的文化,鼓励员工使用公司正在开发中的软件,以期在客户发现问题之前找到并解决问题,提高软件质量。比如Vista SP1 RTM版本编译下线的当天我就升级了自己的操作系统,一方面可以与最新的产品一亲芳泽,另一方面还可以提高工作系统的稳定性。幸运的是,由于Vista SP1出于安全考虑开始只接受严格合法的路径,导致我们产品的测试程序由于使用了不规范路径的测试案例运行失败。由于问题发现得早,所以很容易追根溯源,就这样简单地修复了这个测试bug。积极主动,总会有回报。
课堂讲课也是微软员工培训中非常重要的一个环节。人所共知,微软雷德蒙总部藏龙卧虎,中国很多的开发者都是读着他们写的书成长起来的。如果能与他们面对面地交流,技术提高必然更加迅速。微软为员工提供了这样的机会。几乎每个月都有著名技术作家、微软杰出工程师、著名软件咨询师举办的讲座,针对某个领域进行深入的技术分析探讨,或者讲述自己事业发展的体会与心得。由于课堂有限(微软的讲课大多数都是小课堂举行,与国内高校动辄几百人共聚一堂听一个老师讲课大不相同),这样的讲座在哪里都是一票难求,在总部听一堂热门的讲课需要排队几个月也不是什么新鲜事。由于微软对中国非常重视,John Robbins(Debugging Applications系列的作者)、David Solomon(Microsoft Windows Internals的作者)等大师们的都到中国来开过培训课程,微软的新员工实在是非常幸运的。
此外,微软内部非常强调mentoring,即新员工都可以找一个资深员工作为自己的导师。即使他在雷德蒙总部,也可以通过公司电话或者视频会议保持密切联络。这种言传身教,可以说是花钱也很难买到的。与此同时,经理也会定期与员工进行一对一的短会,解惑答疑,帮助员工保持着轻松与快乐的心情学习与工作。
总之,微软为员工的自我增值与提升积累并提供了丰富的资源。只要你想努力学习,没有不够用的资源,只有不够花的时间 :-)
张琪
过去几个月,我先后在中国数家知名大学举行了讲座,并会见了多位致力于数据平台研究的学术领头人和学生。我还在一些业界会议上发言,与用户、合作伙伴、分析师和其他同行会面。这些会议涉及了多个议题,例如,日新月异的科技发展趋势,异地分布式软件开发,以及亚洲的蓬勃发展。但有一个议题似乎得到了最大的关注——微软是如何组织和进行产品开发的?我想这很自然,微软是全球最成功的软件公司之一,而亚洲软件行业正经历其自身的飞速发展,因此业内人士迫切地希望了解我们过去20多年的经验也就在情理之中了。
“微软是如何组织和进行产品开发”其实是一个很大的题目。在微软内部我们有一个卓越软件工程团队,主要为员工提供为期数日的课程,内容涉及微软软件开发方法概述、工程系统、组织架构、最佳实施办法,以及用以保证产品质量、可靠性及安全性的内部工具和技术等等。这并不意味着我们的体系已经十全十美,但我们的确积累了很多知识和经验可以与大家分享。实际上,我们也在以适当的方式与全球(包括亚洲)同行分享这些成功。
因为这是一个大题目,我想在这篇文章里着重介绍我们工程系统中的一个方面,即我们研发团队的核心专业和每个专业在产品开发中所扮演的角色。因为我相信微软在这一方面的做法不同于我们的同行(即使在美国也是如此),尤其在中国,目前业界还没有充分理解这些核心专业及其所扮演的角色。
微软的工程体系一直由三个核心专业组成:开发(Development)、测试(Test)和项目管理(Program Management),英文简称分别为Dev、Test和PM。在此,我将以另一个顺序作简单介绍:
PM
提及软件专业时,大多数人都马上想到Dev。但是对我来说,一切则从项目管理开始。在微软,PM意味着很多事情,对我而言,这个角色主要意味两件事:
- 了解用户的需求,并将其转换为用于开发的功能说明(Functional Specification)。这是一切的开始,如果我们无法理解用户,我们就不能开发出合适的产品。
- 协调Dev和Test,将最初的功能说明转变成真正的产品。
我发现很多人,特别是在中国,一听到PM就认为这是Project Management。事实上,这仅是PM工作的一部分(上述第2点)。PM真正的技能在于倾听用户并从他们的角度理解问题,然后设计出解决问题的方案。这并不意味着简单地为用户提供他们所需要的,而是在真正理解需求后设计最好的解决方案,即使这是连用户自己都从未想到的解决方案。常言道,如果我们一味地遵循用户的要求而只是去找寻一匹更快的马匹,那么汽车永远也不会诞生。
Dev
三个专业中,Dev可能总是人们知道得最多的。他们负责实际设计和开发软件产品。Dev 的主要工作是实现PM制定的功能说明。在系统级的、关键任务级的软件世界里,这个实现应该极为可靠、安全、 便于管理、 可以扩展和高性能。Dev的设计和功能实现应经得起时间的考验,并在未来版本中得到重用。
Test
外界对微软测试工程师存在许多误解,内部有时也存在这个问题。多年前我刚进入微软时,我(愉快而)惊奇地发现在微软Tester的人数几乎和Developer同样多。在我之前服务的公司,测试人员要少很多(当然产品的质量会相对薄弱),因此在微软工作了一段时间后,我才真正了解测试专业的本质。在微软,我们何时可以发布产品并不取决于我们何时完成产品的设计和实现,而是取决于我们何时能完成产品测试。因为我们所发布的每个产品,尤其是系统类型的软件,必须通过一个极高的质量标准。测试专业的确是一个非常复杂的领域,一个Test必须花好几年时间才能掌握悟我们所应用的测试种类——单元测试、功能测试、集成测试、压力和远距测试、性能测试、安全性测试,以及本地化测试等。我们在测试中运且用的一整套工具和技术的复杂性令人印象深刻——自动测试套件,自动测试生成工具,自动检测故障分析工具,自动安全模糊测试和基于状态机的测试。
以上三个核心工程专业就像一张3条腿的凳子——一个也不能少,并且需要一个合适的工程组织保持其平衡。没有一方可以凌驾于其他任何一方,否则这个组织就无法与客户需求保持一致,或者无法在产品质量上下足功夫。这 3个专业类似政府部门间的制衡机制,这套机制确保了我们能理解客户需要,设计高品质产品,同时每个发布的产品都在各方面满足顾客的期望。
这里需要强调的是,我们一直在招募这三个领域最优秀的人才,他们的招聘条件同样严格,只是每个领域的技能和关注方面有所差异。PM通常热衷与客户一起构思应该设计什么样的产品,然后与Dev和Test同事协作完成所需要的产品。Dev对设计高品质软件更富有激情——产品应是革新的、简单的、可靠的、安全的、可扩展的、高性能的并能经受起时间考验。Test则爱好,在我们向客户发布产品前,竭尽所能找寻出软件中所存在的所有问题和漏洞。
我们的面试官有一项非常重要任务,就是找出应聘人员的才能和激情所在,然后引导他们向那个方向发展。当然,在个人职业生涯中激情和才华可能发生改变,员工个人也可能因为从事的工作领域不同而有所改变——我本人就曾是从Dev转为PM。这是很自然的,我们实际上也鼓励这种做法以构建更好的队伍。
其他领域
除了以上三个历来被视为微软“核心”的专业,另外几个专业也变得日益重要。例如,使产品使用更自然、直观的用户体验专家(User Experience,简称UX)。良好的用户使用体验能让人爱上一件产品,反之则甚至可以让用户不愿去触碰它。用户体验无疑对为终端用户设计的产品至关重要,同时对我们的开发人员、 I T专业人士以及信息工作者而言也是如此。
当我们进入“软件+服务”的时代,各种与构架、开发和运行极大型基础设施的领域变得越来越重要。需要重申的是,这些曾经只存在MSN和Live 等网络产品开发过程的专业,现在对所有产品组都变得日益关键,因为他们正逐步将产品融入这个“软件+服务”的新模式。
很多应聘人员问我在微软什么样的角色更适合他们,以及如何发展他们的职业。我能想到的最好建议是在他们真正热衷的一个技术或角色上下功夫。正如我刚才说过,我们对所有专业同等对待,一个均衡的组织需要在各个领域上都有突出人才。尽管不同专业需要不同专业技能和爱好的人才,但所有专业都存在创新和有所作为的机会。所有领域都提供了技术晋升和管理晋升的阶梯。事实上,如果你留意微软高层管理人员会发现他们中有从各种领域脱颖而出的 —— 他们的共同点是热爱他们所从事的工作。
我希望本次讨论对那些对此感兴趣的人有帮助,如果你有问题请随时在这篇文章之后留言。
下次再聊 -- 再见!
Prakash (孙博凯)
* 您可以阅读本文在Prakash个人博客上的英文原文或者在微软服务器与开发工具事业部博客上的中文原始翻译。
已经很久没发表新的文章了,这是因为随着SQL Server中国研发中心各项工作的推进,我们一直处于紧张兴奋的状态。然而,新年总是一个总结过去、迎接未来的好时机。评估过去的成绩,可以使你迅速准备好迎接新一年的挑战。当然,还要为新的一年许诺一些决心!因此,我想在这里把这些事都简要地做一遍。
当我回首在中国的这几个月,想到我们已经取得的成绩时,感觉真的很奇妙。仿佛是昨天才和家人一起搬到中国来似的(实际上我们是8月1日搬来的)。短短几个月中,我们已经取得了很大进展,确立了现在SQL Server中国研发中心的地位;明确地阐述了我们是谁(我们的身份),我们追求的目标(我们的使命),我们为什么来中国,以及我们的前进道路-即我们打算如何实现这一使命;我们已经与广大的对SQL Server中国研发中心感兴趣的人建立了沟通渠道,他们包括客户、合作伙伴、学生、教员,以及业界同行;我们招聘到了一些亚太地区非常优秀的、对数据平台领域感兴趣的人才;在若干不同的技术前沿,我们继续成功地执行着我们对产品交付的承诺。同时,无论是作为个人还是作为一个团队,我们都在知识和技能方面不断成长,加速赶上,准备承担未来更大的挑战。最后要说的是,在完成这些成就的过程中,我们体验到了无限的乐趣!
前方的道路既富有挑战性又令人兴奋。在即将到来的一年里,我们将看到SQL Server下一个版本SQL Server 2008的上市。在努力准备上市工作的同时,我们作为SQL Server团队的一部分——中国团队,依然面临着一些艰辛工作。很重要一点是,要牢记在心等待我们的奖励是什么——是发布一个很棒的产品,这个产品有着用户迫不及待上手的新功能特色,以及用户有权期望的高品质。事实上,在过去几个月中,我们已经发布了一些CTP版本,客户对它们的初步反应非常积极。我们已经迫不及待地想要看到新版本的SQL Server将对市场产生的影响。当然,等到SQL Server 2008发布后,我们还要继续开发新的版本。实际上,后续版本的早期规划工作已经在进行中了。对我们中国团队来说特别令人兴奋的是,随着我们逐步增强自己的实力,在下一个版本中我们将担任更重要的角色,在后续的其它新版本中也是如此。另外,SQL Server中国研发团队的部分人员也在致力于Windows操作系统下一版本中部分组件的研发,通过这样的工作,团队体验到了完整地负责一个项目或组件,并为世界各地数以亿计的顾客提供新版本意味着什么。这可不是一件容易的事,尤其是对我们这样一个平台级的产品来说,但正是这样才富有挑战性和令人激动不已。
展望未来,我们面临的是一个重要而令人兴奋的一年。我们要发布SQL Server 2008,继续建设我们的中国团队,在技术上加速赶上,并随时准备在下一个版本中发挥更大的作用。当我看到我们正在建设的这个团队的质量,工作所涉及到的技术的宽广度,以及我们对团队远景和长期承诺的投入力度,我毫不怀疑我们正在日益接近目标,即建立一个亚太地区顶级的数据平台研发中心。
每个新年总会许诺一些决心,今年也不例外 就像大多数人一样,我也定下一些决心,虽然个人事情应该保密,但其中一项似乎适合在此与大家分享:经常地更新本博客!
祝新年快乐,身体健康!
Prakash(孙博凯)
去年我在香港出席了微软技术大会TechED 2007。我和Ron Jacobs为闭幕式做了主题演讲,我们着重介绍了在微软应用平台开发中涌现的新一波技术创新浪潮。当然,我谈到了数据平台这一部分,我很欣喜地为来宾们简要介绍了即将随SQL Server 2008上市的很多创新(SQL Server 2008按计划将在今年发布)。在后续的文章中,我们将进一步探讨SQL Server 2008,但如果你有兴趣了解更多或想现在就体验一下的话,可以点击该链接开始。
除了在技术大会上发言外,我们还会见了香港当地媒体,并向他们简要介绍了SQL Server产品的未来发展方向。我们也会见了该地区的一些贵宾客户——了解它们在微软平台上进行的最新项目,以及他们需要哪些类型的帮助。我们总是能从类似会谈中学到很多。
对我来说,这趟旅行最有意义的方面却可能是我在香港大学(HKU)和香港科技大学(HKUST)举行的两次题为“从数据库到全面的数据平台”的演讲。两所学校的师生们正在一个我们现在宽泛地称作“数据平台”的领域从事研究工作,我们进行了交流——并从产业的角度来看待一些变革,这些变革我们认为是传统“数据库”领域的一个历史性转变。
现代数据库作为一个研究领域已经存在40年了。从早期的层次和网状模型,到Codd所开创的关系模型,再到不同领域的许多创新,包括事务处理、隔离级别、访问方式、声明式查询语言与查询处理、游标、API,等等,数据库技术为构建可靠的企业级关键任务应用提供了基础功能,这些应用在很大程度上带动了今日的“信息经济”。由此,当今日一个普通的大学生想到“数据库”时,他们的印象可能是一个成熟的、甚至有点陈旧的研究领域,其中所有令人兴奋的难题很多年前就已经解决了,剩下的工作无非是一些渐进式的改良——为即将结束的领域画上最后一个句号。
这样的看法大错特错了。
在过去几年中,几种发展趋势的强劲融合——技术趋势、用户和商业趋势、应用趋势——使得数据库领域出现了从未有过的重新界定和扩展,数据库在它的悠长历史上从未有如此多令人兴奋的问题等待解决。
让我们简要地回顾一下这些趋势:
技术趋势:大家都熟悉摩尔定律——处理能力每18个月翻一番,早期体现为不断增长的主频,现在体现为多核。事实上,该趋势在硬盘存储容量(以及价格)中表现更为惊人。举个例子,每G硬盘的价格已从1980年的40,000美元/G下降至今天的约0.5美元/G!!!内存和闪存的容量以指数增长的同时,价格下降曲线则更为陡峭。另外,各种设备在激增——移动电话、掌上电脑、游戏设备、GPS设备等等——所有这些设备都在以一个惊人的速率产生、存储、处理和发送/接收/同步数据。当然,还有无所不在的互联网,它不仅使得新型应用成为可能,也改变了对已有应用特征的期望——还有很多这样的例子,都是在瞬间发生的变化。
用户和商业趋势:有了上述技术发展的支持,涉及数据、信息的用户与商业模式发生了巨大的变化。首先,有了一个彻底的数据爆炸,新生成数据的总量正在按指数规模增长,其中大部分是电子式生成的。(是否注意到,您的硬盘无论多么庞大始终没有多少剩余空间?)。电子邮件、文档、数码照片、音乐、视频、传感器上生成的流数据、卫星图像,都是这个伟大数据爆炸的一部分。问题并不仅仅是存储这些数据——用户和商家希望能从中获取价值——能够搜索、共享、同步、分析、可视化和操纵这些数据,从而让它变成有用的信息——一种“任何时间、任何地点处理你的数据”的想法。而这一切得到满足的同时,我们需要确保数据是安全的,隐私是受到保护的,所有外部和内部监管法规正在实施着。
应用趋势:首先出现的是批处理(Batch Processing)——基本上是一个对存在数百年的人工处理的自动化。紧随其后的是OLTP (Online Transaction Processing,联机事务处理)。在许多情况下,OLTP改变了商业的经营方式,以前需要很多时间才能完成的工作,现在瞬间可得。OLTP的体系结构和底层平台技术经历了几代更迭交替,但其核心概念并未变化。随着公司从这些OLTP系统中积累越来越多的数据,他们发现了一个获得重大竞争优势的机会,他们可以分析这些数据,更好地了解他们的客户。这就诞生了商务智能(Business Intelligence,BI),它包括数据仓库、在线分析处理(Online Analytical Processing,OLAP)、报表、数据挖掘等技术。今天,我们生活在一个Web 2.0的世界,应用通过各种终端展现(富客户端、浏览器、设备、笔记本/台式机……),数据无缝地从各种数据源汇集到一起,并提供了多种丰富的服务,包括查询、检索、分析(日益增长的实时分析)、报表、可视化,等等。同时,它们还运行在具有前所未有的伸缩性、可靠性和安全性的级别上。
一个全面的数据平台
上述变化趋势正在驱动着我们的领域进行根本性的变革——从仅仅“数据库”,到我们现在所称的“全面的数据平台”。该平台建立在数据库概念的基础上,并在如下三个不同维度上进行了扩展:
所有数据:长期以来,数据库都可以存储和操纵文本、数字,但这对一个数据平台来说是不够的。一个全面的数据平台必须能够处理所有类型的数据——包括文本、XML、对象、文档、文件、来自传感器网络的流数据,以及任何用户自定义数据。同时它必须能为每种数据类型提供更适合的服务——存储、索引、查询等。
所有层面:数据库只能运行在“服务器”上的日子一去不返了 。今天,一个全面的数据平台必须要在各个硬件层面上提供数据服务——电话和移动设备、笔记本电脑、台式机、服务器、服务器场,直至最终天文级别的巨大设施。同时,它必须为跨越这些层次的数据和应用提供无缝的互操作性。
所有服务:对数据的服务不再限于存储、查询、备份、恢复和其他少数几个动作。一个全面的数据平台必须提供广泛范围的服务,在涵盖上述服务同时,还包括搜索、缓存、同步、分析、挖掘、集成、报表、可视化、安全、审计、归档……等等。简而言之,它必须能服务于数据的整个生命周期,从产生到归档。
在后续的文章中我们将探讨到更多的细节,这里简明扼要地概括一下我们所称“全面的数据平台”,它所涵盖的范围是:一个可以在所有不同硬件层面上处理所有类型数据,并提供所有与数据相关的服务的平台。与此同时它需要在一些关键的维度上保持一致性——例如数据模型、安全模型、管理模型、数据访问接口、开发工具等。毋庸置疑的是,它还需要同时保证高性能、快速提供解决方案、低的TCO(总拥有成本)。很简单,不是吗?J
我们的机遇
我希望通过以上讨论,你能够了解数据平台领域正面临着前所未有的创新机遇。在现代数据库的历史上,从未有过如此宽泛的技术挑战,一个如此广阔的画布等待绘制。如果你是一个在校大学生——就像我在香港见到的那些聪明头脑一样——这对你来说是一个前所未有的机遇。等待解决的问题范围是如此庞大和多样化,而不仅仅是针对“数据库”专业。几乎计算机科学的任何一个方面,在这个领域里都可以找到有趣的问题——计算机体系结构、网络、编程语言、数据挖掘、XML、搜索、可视化、Web规模计算、语义Web——专业名单可以拉得很长很长。数据库一直是一个让人全心投入的领域,在该领域花费几十年时间的人并不罕见,事实上他们整个职业生涯都在该领域中度过。如果你选择投身该领域的话,现在正是时机。毕竟,我们生活在一个信息时代——这是我们的时代。
下次再聊 加油!
Prakash (孙博凯)
这是微软服务器与工具事业部2008年年夜饭时拍摄的SQL中国研发中心上海员工及家属的全家福,更多相片,请访问SQL中国研发中心相册。
大家好,我是Prakash Sundaresan, 目前领导着SQL Server中国研发中心。我的中文名字叫孙博凯。几个星期前我刚搬到中国来,这是我第二次搬到中国。在这里,我着手组建团队、加速增强研发力量、与本地客户和合作伙伴一起工作,可一开始时,我发现很多人都对同一个问题有很大兴趣,即SQL Server中国研发中心将在中国做些什么?这也是我开博的原因。我不仅将要谈谈SQL Server中国研发中心要做些什么,还将涉及更广泛的话题,包括:数据库领域正在进行的变革——从数据库到现代综合性的“数据平台”,本地区客户和合作伙伴基于微软数据库技术开发的一些有趣的应用,以及学生或其它准备在该领域开创事业的人们可能感兴趣的问题。还有诸如关于外国人在中国工作、全球化开发等相关的任何其他话题。
在我谈到上述内容之前,先做一下自我介绍。从我名字中可以猜测出来,我在印度出生和长大,至于我的中文名字是怎么来的,那是另一个故事了J。就像很多人一样,我在取得学士学位后去美国继续读研究生。我在威斯康星大学麦迪逊分校呆了几年时间,并获得硕士学位。在那个时候,麦迪逊有一个很强的数据库项目,由一些研究先驱如Dave Dewitt、Mike Carey等人主导。更重要的是,对于一个正在寻找研究助理奖学金的穷学生来说,这帮人可是有着大量的银子!于是,我对数据库和信息技术领域的职业激情就这样开始,并一直持续到今天。
毕业后,我去数字设备公司工作了一年,那些仍然记得它的人会亲昵地称之为DEC。我在位于旧金山的先进开发实验室与尊敬的Jim Gray博士、Tom Barclay等人一起工作。这是我第一次加入到产业界,一些细节我将留到以后再谈,但这绝对是一段不可思议的经历。我在这一年里受益匪浅!今天,我可以这么说,我职业生涯上取得的成就很大部分要归功于这一年的经历,归功于Jim的教导。我相信很多其它人也有同感。我们所有认识Jim的人都在期盼他的安全归来。
那一年只过了一半的时候,DEC将它的RDB产品线出售给了Oracle,从此,DEC不再有数据库团队了。所以一年之后,我去了Informix。那时,Informix正在俄勒冈州波特兰组建团队,致力于大规模并行数据库XPS的开发。我在那里渡过一段非常不错的时光,参与开发了最先进的并行数据库,并把它推向市场。我们取得了一些惊人的性能基准测试数据并赢得了一些大客户,直到今日我们还珍惜这一成就。但在此期间,Informix碰到了一些节外生枝的问题,比如收购illustra所带来的麻烦,公开与Oracle关于广告牌的不明智争执并陷入法律诉讼、以及一些财务上的失误(说得客气点)。我在Informix工作期间学到了一些宝贵的经验教训,不仅在软件工程方面,也学到了生活中什么是真正重要的。最后,我决定离开Informix去微软工作。微软在那时只有一个鲜为人知的产品——SQL Server windows版,但微软希望在数据库领域占据重要位置。
对我来说这是一段有趣的历程,直到今天依然有这种感觉。算一算,我在微软工作将近10年了,而且一直呆在SQL Server研发团队,简直就是个标准的“数据库脑袋”!回顾这些年,我在SQL Server组先后担当过各种不同的职位。开始时,我在SQL Server核心引擎开发团队工作,开发查询处理器并协助SQL Server 7.0的上市。如他们所说,这真是“美好的旧时光”——工作就是纯编码,那时多处理器正在市场出现, 我们设法让SQL Server的功能拓展在多处理器上。然后,我又担任了其它一些职位,从RDBMS性能的领导者,到管理查询执行小组,然后是领导WinFS项目的核心引擎改进(我想,这个话题肯定会再次出现——它似乎总是如此J)。
虽然我承担的职责越来越重要,内心却有一种日益增长的不安。我被要求领导并决定产品的未来发展方向,但我并不觉得我对客户的需求有着很好的理解,而我们产品最终正是为这些客户而开发的。为什么顾客或合作伙伴选择SQL Server而不选我们竞争对手的产品,或反之,为什么选择竞争对手的产品而不选SQL Server?对他们来说SQL Server哪些部分运作良好,而哪些还不够好?对那些开发者、数据库管理员或一般IT从业者来说,他们应用SQL Server,或者更广泛一点说,应用微软平台时,最大的不方便是什么?当然,我对此有一些总体了解,但脑子里并没有很清晰的图像。所以,我决定去了解他们。如何做呢?还有什么比去和客户工作一段时间更好的方法吗?我很幸运,在SQL Server团队内部有一个所谓的SQL客户咨询小组(SQL Customer Advisory Team,简称SQL CAT)。这个小组与我们的最高端客户一起工作,在体系架构和最佳实践方面协助他们,帮助他们成功地应用SQL Server,反过来这也帮助了我们的设计和参考。这个小组源于美国,但现在已经扩大到欧洲和亚洲。那时,他们正好在寻找亚洲事务负责人,于是,我加入该团队并调到上海,开始了我在中国的第一份工作。我在这个组呆了将近18个月,在这期间,我有幸同遍布亚太地区的超过20个客户一起工作,项目包括:在日本建设有史以来第一个基于SQL Server上的核心银行系统;在韩国建立有史以来第一个端到端的电信OSS系统;一些数据仓库、BI系统、大规模的OLTP系统、SAP系统,以及这两者之间的所有技术支持。这真是一段令人难以置信的学习经历。首先当然是学习我们的产品以及顾客如何使用它,但同时也是在了解我们客户本身、我们的领域、我们的合作伙伴,以及更广泛的,亚洲商业是如何进行的。
我想这就是我的第二个职业激情的发源,与亚洲的事业相连。当然,我在这里出生和长大,和亚洲有一种所谓的天然的“关联”。但我从未真正在这个地区工作过。我在印度长大那会儿,印度并不是所谓的“活力经济”时代。然而现在,正如任何近几年在亚洲呆过的人都会证实的那样,这里的空气中弥漫着一种与众不同的能量,在你下飞机和你的同行旅客准备下飞机的那一刻你就能感觉到,如果你知道我是在说什么!很明显,对中国、印度和整个地区而言,这是一个巨大变革的时代。如果人们可以罗列出我们这个时代前5名的全球现象,可能会有一些现象不太愉快,并困扰我们,比如全球变暖和地缘政治紧张等。但亚洲历史性的崛起绝对是积极的。当然,还有信息技术、互联网和其他技术创新对我们所有人生活和工作的影响。因此,就职业生涯方向而言,我有一个强烈的预感,我未来的一生很可能就是围绕着我们时代的这两大现象的交叉——信息科技与亚洲。
在SQL CAT组工作了18个月后,我返回了雷德蒙。这时,SQL Server组正在将精力从准备SQL Server 2005上市转移到下一个版本上。虽然SQL Server 2005已经被证明是市场最成功的一个SQL Server 版本, 而且的确是一个伟大的版本,但它从研发到上市花了很长时间。我们花费很大力气使我们的工作流程能跟上团队规模和业务规模的巨大增长。这段时间行业内也发生了很多变化,相比我们开始SQL Server 2005征程的五年前,很多东西已经不存在了。为了下一个十年的成长,又该是调整并且将船指到正确方向的时候了。在拥有了客户经验之后,我得到了一个难得的机会,担任SQL Server战略小组总监的职务,负责监督下一版本的规划,以及协助指导SQL Server产品及事业的长期规划。
这是一项伟大的工作,我全力以赴地在各个方面展开工作。我们规划着SQL Server 2008版本中应该包括哪些功能,关注前沿的版本发布的主题,完成每一主题下的客户应用方案,以及每个应用方案中独特的“改进”(相当于功能)。同时,我们完全重新设计了我们开发软件的方法,更侧重于首先确保这些改进是真正完整的、高品质的,然后再将它们加入到产品的主线中去。在某种程度上说,对我们这些改变的评判仍然在进行中。任何改变都是非常困难的,至少在初期。但迹象显示,至目前为止,我们所获取到的软件质量和可预测性的改善完全值得我们之前付出的那些努力和痛苦。
我们还努力完整回顾了我们的产品和技术策略。我不想公开讨论太多这次回顾的结果,但足以说明问题的是,我们对产品战略以及未来前进方向有了一个更清晰的理解。Paul Flessner,SQL Server的资深副总裁,在2006年四月他的一封公开信中作了一些总结。在公司内部,我们提炼出“完全数据平台”的概念,这个概念界定了一个服务范围,一个我们认为是为发展中的客户服务所必需的范围。这对我们一直认识的领域是一个相当基础性和广阔的重定义。在当前这个阶段,在公司外部我们还没有涉及到太多这个概念,但我们将会为了这个概念做更多工作。
虽然我对我的工作非常满意,因为它能在如此大的广度和意义上涵盖我们产品和事业,但在我内心深处好像有个闹钟在滴答作响,而且随着时间的推移越来越响。亚洲在呼唤!是该去亚洲的时候了。幸运的是,去年我们决定同时在印度和中国建立研发中心,这是我们第一个真正在雷德蒙之外的开发分支。我们需要找一些人来领导我们新成立的中国研发中心,我就抓住了这个机会。
所以我来到了这里,再次来到中国。我们总部设在上海,但在上海和北京各有一个团队。
是不是读到这儿感到很无聊了呢?比刚开始读时更无聊 J 那就到此为止吧。下一次我们将讨论什么是一个全面的数据平台,以及我们中国研发团队为此而作出的努力。
下次再聊 加油!
Prakash (孙博凯)