我一直在商业软件公司工作,所有的产品开发目的都是为了让企业赚更多的钱。所以,我研究的工程方法和技术,都是冲着这个目标去的。而且我更窄的是在企业管理软件行当,所以关注的面更窄,所以不能帮助我解决我平时工作问题加快我工作效率提高我的产品销售竞争力的方面,我都忽略了。
     这也就是很多朋友看了我的博客,认为我的观点太浅,如《企业应用开发平台架构揭秘》,认为我很多关键流行架构技术都没有讲到。我还是那个观点,我只是想解决我的问题,以最简单最小成本的方法解决问题,至于符不符合流行架构,不是我所关注的。许多开发人员,不理解客户行业发展变化的过去现在和未来,不理解行业竞争结构,不理解行业目前的挑战和机遇,所以对软件未来会修改成什么个模样,心里没有底,于是尽可能的做一个非常灵活的架子。真正一下水,才发现客户业务并没有他想的那么复杂,杀鸡用了牛刀,反而杀起鸡来极不顺手。我们是以什么规模的应用,我们就搭建什么规模的架子,不做无用功,刚刚好。而且解决问题,而且用我们(不仅仅是架构师,还包括开发人员,定制开发人员,技术支持人员)最熟悉的方法和技术解决问题。
     能理解行业发展趋势、挑战和机遇的,做IT的寥寥无几。很多自诩很了解企业需求多年工作在实施第一线的项目经理只是很微观的理解企业的用户和企业的信息科的IT需求,却其实并不了解一个行业为什么会是这样,未来2-3年内的变化会如何。总是做一个企业IT需求的跟随者,却从未洞穿IT本来就是人们业务的一个工具而已,但有时候这个IT工具却也有可能颠覆现有业务模式(如DELL利用电话和互联网颠覆了PC销售模式。再如PPG,再如网游经济,再如分众,再如短信)。我们不可轻视IT只是纸张表格电子化,也不可迷信IT新技术会颠覆现有模式。(但是总有人在好好的规则下突然杀出,或者被现有规则干死,或者颠覆现有规则,最后所有行业内企业纷纷效仿。IT技术中的ruby on rails就这种情形)。
     所以,我们总是关注着新颖的技术,跟踪它的发展,了解它的原理和主要解决的问题领域和方法,了解它的优缺点,但至于能否用到现有的产品项目中,很难说。企业有企业的资源调度和目标和矛盾困难,企业也有企业的包袱历史,不能说扔就扔说转型就转型说革命就革命(安逸的可预测的生活和工作是每个人都祈求的)。但我们也不能因为现状困境,而不思突破(让冒死鬼去突破,如果它成功了,就跟风它),其实现状困境,是行业的现状困境,影响着关切着我们自己的利益,所以我们自己就需要去突破,否则同等竞争环境下,我们是小企业,就更受不了变化的被动冲击,更需要寻找机会上位,而不是跟随。跟随策略,对于非行业领头羊没有任何好处。
     能理解行业发展趋势,也能理解IT技术发展的,更是寥寥无几。
     如果能理解行业发展,又能理解IT技术,又能结合本企业的竞争地位、盈利模式、盈利目标、困境、资源创新研发,又能把想法落实到产品上,又能取得老板的信任和支持给与资源进行研发,又能组织团队推进团队协调团队在现有的资源和困境下把产品实现了,并且推广了能成为现金牛的产品,那这样的人更是出奇的少。这样的人,就叫CTO。内地的CTO比国外的CTO更难做。国外的团队很成熟,各方面都有很专业的团队在配合。但在内地,需要考虑行业、本企业、老板、资源、团队、时间限制、现金流回报。我们没有那么多钱,也没有那么多耐心,也没有那么多的研究时间,我们力求能看得见的现金,还能保持未来5-10年的产品竞争力。有人说,在内地,一个成功的CTO的要求近乎于神。可能有这种意味,就如同内地要产生一个成功的电影导演,要求也近乎于神,所以内地成功的导演和大片也寥寥无几。
     现在,传统的企业管理软件行当就出现了困境,阻碍了企业规模化的扩张盈利。作为软件公司的CTO,软件产品是公司生存的唯一根本的软件公司,是必须要CTO思考和解决的。
     我们总在不销售、不实施、不培训、不支持上力求达到。即使达不到,我们也在孜孜不倦的追求能尽可能少的人力尽可能少的时间的方法,并且在思考如何还能更有效的提高应用效果,更容易的被客户和用户接收和理解精髓的产品信息。办法总比困难多。我们也在调研、开发、测试、产品推广上创新了很多方法。尽管我们无法达到理想,但至少比墨守常规的同行更有效率更有质量更多利润。
     目前,我所关注的内容,有下列一些
     盈利模式类:目标是尽可能放大盈利速度和规模
     网络社区
     网游
     SAAS、威客、阿里巴巴(不是淘宝)
     市场调研公司、数据库营销公司、IT整合规划/梳理咨询公司、IT咨询实施服务公司
     金山公司(毒霸、词霸、WPS的互联网之道)、超级解霸公司的转型模式
软件工程类:目标是尽可能缩短开发和服务的周期,减少人力投入,还能提高质量效果
     软件开发过程管理
     软件服务过程管理
     IT咨询模型、咨询方法、咨询流程
     开源与程序员社区、用户服务社区
     IT外包开发公司过程管理(如果他们大规模的高质量的开发团队加上专业的咨询团队,进入国内企业管理软件行业,会如何?)
     技术类:目标是尽可能网络化、全球服务化、自动化、体验化
     表现层:Flash 3D引擎
     接口层:webservice,javascript API,JSON,SOA
     业务运算层:自动聚类关联、DSL、Lua
     云模式关系数据存取层:Hypertable
     云模式分布式文件系统,如hadoop
     只有你能给老板说清楚投资回报率,给销售和客户说清楚竞争力,给实施服务支持说清楚产品稳定高性能易实施易使用易支持,就容易获得老板的支持、销售部门的支持、实施服务团队的支持。
      得道者多助。
      没有上下左右的支持,你什么想法也实现不了。