`

为什么拿出百万给程序员——专访趋势科技CEO张明正

阅读更多
为什么拿出百万给程序员——专访趋势科技CEO张明正
刘婧/文摘自:程序员

趋势科技 CEO张明正:趋势科技公司的创始人、兼 CEO。趋势科技在企业网络安全保护和互联网内容安全战略及服务方面独领风骚。近年来,趋势科技取得了迅猛发展,在全球已拥有 2000多名雇员和超过 30个分公司。趋势科技分别在日本东京证券交易所和美国 NASDAO上市。在创建趋势科技之 ,张明正曾在惠普任工程师,随后创建了 AsiaTek公司——一家位于台湾 UNIX软件设计公司。张明正在台湾 Fu-Jen 天主教大学获得了应用数学学士学位,并在宾西法尼亚洲 Lehigh大学获得了计算机科学硕士学位。

-----------------------------------

最近,由趋势科技举办的第二届"趋势科技百万程序竞赛"落下了帷幕,超过100万的奖金被发放到10支代表队手中。如此大手笔的程序大赛所产生的影响力也是非常巨大的。身为趋势科技CEO,张明正先生也从繁忙的全球业务中抽出几天的时间赶到北京,对最终的决赛进行全程关注,并与参赛学生们进行了充分的交流。

本刊很荣幸地邀请到了张明正先生,与他就大赛本身以及趋势科技的企业文化进行了深入的对话。从中,我们可以了解到一位全球性软件企业领导者对软件人更为深刻的认识和更为热切的关注。

"尽管最后从事了管理,进入商业领域,但我一直对编写程序有种热情。所以,四年前,公司成长到一定程度之后,我希望能对社会做一些回馈。"

《程序员》: 趋势科技举办百万程序大赛的起由是什么?

张明正: 我也曾是一名程序员,那时把一个程序简化到了1K是很不可思议的,感觉那是我人生中最辉煌。最快乐,最有成就感的一次经历。在美国读麻省理工的时候,VI很火,我当时也在做一个国际象棋中8个皇后的AI。那时我就立志毕业以后要去做这种程序,让电脑能够下棋,心想要做个优秀的程序员。毕业之后也很幸运,第一个老板就给了我一个很好的问题:做一个扑克游戏21点中如何赢庄家的程序。

讲这些背景,其实是想说,尽管最后从事了管理,进入了商业领域,但我一直对编写程序有种热情。所以 ,四年前,公司成长到一定程度之后,我希望能对社会做一些问馈。大赛举办用的并不是公司的钱,而是我们发起人用自己纳税之后钱成立的基金会所操办的。

怎么去做这件事情才能够兼顾各种因素呢?第一,它必须是是非盈利的;第二,要利用我们拥有的资源让这些钱所起到的效果加强;第三,通过它我们能够做出贡献。这三个条件加起来考虑以后 ,我们就确定了对象是程序员。

我们的想法就是要办一个类似于奥林匹克竞赛的比赛,不过也希望能够通过它将商业化软件开发的思想告诉程序员,而不仅仅是一个算法。

《程序员》:趋势的百万程序大赛最初举办的时候遇到了哪些问题?

张明正: 因为有很多人参加过国外的奥林匹克竞赛,那是关于算法的,主要靠智力,所以刚开始大家也都认为这是像奥林匹克一样的活动,于是靠着程序编程的技术来了。而且,大家也会怀疑是否真的会有人出那么多钱来做这样的活动。当时任何的厂商、媒体知道了,也都觉得这是为了广告,不是公益性的。

所以,我们觉得公开性很重要,于是让大家在网上报名。第一届报名的有六七百个团队,经过初赛、复赛的淘汰之后,我们又马上在网上公开名单。我们坚持五大精神去出题,而且参赛者问的问题我们内部都演练过。经过第一届以后大家都觉得挺公平,于是大赛有公信力了。所以第二年我们再举办的时候报名很热烈,许多第一次失败的人又组队参赛。你可以看到很多年轻人,参赛的时候还擒带了红牛饮料、参片,几乎整夜不睡。比赛给了他们三天时间,他们一直奋斗到最后五分钟才把作品交上来。

"用钱救济的话只是把鱼给人家,我们应该教人家钓鱼。"

《程序员》:那么你们希望通过这样的大赛带给程序员什么,又是怎样实现的呢?

张明正: 因为我自己曾经是程序员,直到创业,做管理之后,才比较了解软件商业化开发的流程,以及如何把它变成产品买到国际上去,这是一个循环。而我们的CTO怡芬知道怎样去做创新的产品;我太太陈怡秦则对怎样整个活动做到公开、公平、有挑战性有很多自己的想法。我们都认为,用钱救济的话只是把鱼给人家,我们应该教人家钓鱼。

可是,当我们真正去做的时候发现非常难。首先 ,要做到公开、公平、有挑战性,使大赛有可信度真的非常难。其次,我们主要的目的是要有启发性,因此怎么用最简单的方法把我们拥有的经验在出题中表现出来,这才是最难的地方。

全世界有这么多的程序员,可是对于一个软件公司来说,能够生存下来是非常难的。最近一家调查公司公布的一项统计数据表明,在美国差不多六万家的软件企业当中,上市的有六百家,这其中又能保持连续五年营收成长、获利成长的只有十家,趋势就是其中一家。于是我们就在探讨这样一个问题到底一个软件公司能够持续成长的关键是什么?

趋势有一些这方面的经验。首先,创新是很重要的,但不能只为创新而创新;同时,沟通、团队也很重要。或许以前在学校写程序的时候,你可以自己做出1K的东西,当时很有成就感。但是,现在我了解程序是不可能一个人写出来的,需要团队合作。最后,更重要的写了这么多程序,使用者会用你的产品吗?使用者怎么用你的产品?这就变成了一个关于客户需求的问题,首先是界面;其次,如何把一个产品做到面面俱到的品质管理也很重要。所以我们举办这样的竞赛,目的就是要让程序员知道这些。

这些内容是我们当初在做第一届的时候就设定了的五大目标:customer、presentation、documentation、quality和process。我们也一直在考虑怎么让一个一流的程序员去了解这些与编写程序无关,却是成功必备的重要因素。

所以,最难的就是怎样把这五大精神落实到竞赛中,让参赛的人都能有所感触,从而成为他们人生中一个重要的启示,这才是我们举办这个竞赛最根本的目的。而且要达到这个目的,也并不是今天拿出100万200万的资金投入进去就能够做得出来的。

"我们有一个很重要的评分标准:创新不是在程序编写上,而是在基础架构。"

《程序员》:您刚才提到说创新是很重要的,但不能为创新而创新,这一点应该如何理解?

张明正: 我们有一个很重要的评分标准创新不是在程序编写上,而是在基础架构。如果架构不对,做出来的东西即使得很好看也还是花拳绣腿,所以应该在最初架构的时候就考虑到用户需求。环境在变,用户的需求也随时可能改变,如果基础架构不对的话,就不具备很好的扩充性。

要做到这一点,需要经过团队合作和细腻的思考。我们看到过多的例子,就是因为没有架构好,最终产品变成一个包袱。

我们把架构的思想放进大赛里,就是想让大家不知不觉地意识到架构的重要性。开始大家看到的都是表面 的,基本上没有去思考市场需求。可是在现实中,市场的需求会变,我们决赛的出题就是有意要反映这个变化:第一天出了一个题目,到第二天我们突然告诉参赛者我们的要求变了。这是我们出题中一个非常有趣的小插曲。我们也想通过这个知道程序员会有什么样的反应。

"这是一种心灵上的磨练,是纯粹精神上的,我可以用剑术来解释它:不只是说你的剑法技巧如何好,最关键的是要有剑道,就是那种行云流水的境界。"

《程序员》:从参赛选手的表现看,您认为他们得到了哪些方面的收获?

张明正: 年轻人都蛮自信的,可能因为以前他觉得自己在班上是最好的。可是,第一轮就是被淘汰了会很受打击,刚开始从心理上根本无法接受,我们把竞赛过程全部公开就是要说服这一批人。因为等到他们继续看了第二轮,他们就会从竞赛中慢慢吸收到:原来是需要团队精神的;同时,事情的规划很重要;而且,做一个小的项目也很重要!这和他平常的思维方式都是不一样的 。

我们就是要打破每个参赛者的逻辑思维。在整个竞赛的过程中,我们觉得学习是最重要的。人是怎么学习的 呢?学习就是打破你平常的思维。可能他们以前没有遇到什么挫折。这一次他会短时间内很不好受,有挫折感。可是我们相信这对于他一生来讲是有益处的,那就是会成为一个更好的人。因为当他经历挫折的时候,只要他觉得这种挫折是个有意义的挑战,就会通过这次经历更了解自己。包括对自己的了解。对同伴的了解,对社会也就是真正的战场的了解。

这是一种心灵上的磨练,是纯粹精神上的,我可以用剑术来解释它;不只是说你的剑法技巧如何好,最关键的是要有剑道,就是行云流水的境界。想要成功,这里面有一种哲学思想,就是中国人讲究的无为而为,看似用的力量不大不小,但是就是赢了。那些获得第一名的团队就具有这种人才哲学思想。从技术出身的人又反技术回来是一种重要的精神升华,我们相信最好的技术就是在你内心,所以要了解自己。事实上,让每个人经历大赛之后都觉得对自己有所启发就是我们的目的,也是我们最大的贡献了。

《程序员》: 趋势成立这么多年以来一直很重视技术人员,从你们举办这样的大赛也能看出这一点,而且在趋势公司技术人员有两个发展方向可以选择,就是技术路线和管理路线,并且制定了切实可行政策,您能谈谈当初是如何考虑的吗?

张明正: 很多公司往往会遇到这样两个问题:把最好的程序员变成了最差的经理,同时做 QA的人只能在公司里做"二等公民"。这两方面能把一个公司搞垮 。

对于一个公司,人员少的时候比较好管理,但是如果你拥有一个700多人的团队,就需要有专门的人来管理。这个人是找最好的程序员还是最差的程序员呢?往往一个最好的程序员又会成为一个最差的经理,这样你不仅折了一个兵又损了一个团队,可是你也不能找最差的来,因为不能做到让人心服口服,这就产生发矛盾。在思考这个难题时我们想到了AT&T 他们公司的员工有两条路,因为不必一定当经理。中国人有时候有一种很封建的想 法 ,做一个领域就一定要做到经理。这个很官 僚 ,所以我们就尽量打破它。

我们打破了两件事情:一方面,以前做 QA的人在公司里从来都是 “次等国民",在我公司他们的感觉却是高人一等。我一直讲,对于一个简单的 A+B=C的问题,好的 QA有 45种找错的方式,我们证明了做 QA的人确实不简单,我们很尊重他们。这个时候大家就会立志从 QA做起,这是一个很重要的方面:第二个方面就是不一定要当经理,你可以在选择往技术上走同时也往管理上走。

分享到:
评论

相关推荐

    网络安全软件防护.doc

    网络平安不只是软件厂商的事 今年上半年,网络平安软件及效劳厂商——趋势科技与网络业界领导厂商——思科系统公司 在北京共同宣布签署了为企业提供综合性病毒和蠕虫爆发防御解决方案的合作协议。该 协议进一步扩展...

    模拟技术中的一种提升LED照明散热与高密度云端运算的设计

    是雾里看花? 还是漫步云端?  随着全球政府与企业的积极导入,加速了云端运算的快速发展,云端运算(cloud computing,中国大陆译作云计算,台湾译作云端运算),是一种...借用趋势科技创办人张明正的比喻,一百年

    一种提升LED照明散热与高密度云端运算的设计

    是雾里看花? 还是漫步云端?  随着政府与企业的积极导入,加速了云端运算的快速发展,云端运算(cloud computing,中国大陆译作云计算,台湾译作云端运算),是一种...借用趋势科技创办人张明正的比喻,一百年前每

    框架搭建内容合成的描述

    框架搭建内容合成的描述

    【Godot4自学手册】第三十八节给游戏添加音效

    【Godot4自学手册】第三十八节给游戏添加音效

    人工智能BBSO算法,MATLAB实现,很基本的人工智能算法,里面有很多源程序

    人工智能BBSO算法,MATLAB实现,很基本的人工智能算法,里面有很多源程序 (Artificial intelligence bbso) 文件列表: BBSO\alea.m (99, 2013-11-02) BBSO\alea_normal.m (532, 2013-11-02) BBSO\alea_sphere.m (483, 2013-11-02) BBSO\BBSO.m (5647, 2015-05-03) BBSO\BSO.asv (3521, 2013-11-02) BBSO\calef.m (375, 2014-02-08) BBSO\cauchy.txt (1282, 2013-11-02) BBSO\cauchy.zip (9607, 2013-11-02) BBSO\cauchycdf.m (1225, 2013-11-02) BBSO\cauchyfit.m (5565, 2013-11-02) BBSO\cauchyinv.m (1379, 2013-11-02) BBSO\cauchypdf.m (1221, 2013-11-02) BBSO\cauchyr

    人工智能神经网络.ppt

    人工智能神经网络.ppt

    Free Download Manager CRX 3.0.59 for Chrome.crx

    Free Download Manager 谷歌浏览器插件

    基于QT+C++开发的炫酷九宫格主界面+源码

    用法链接:https://menghui666.blog.csdn.net/article/details/137977868?spm=1001.2014.3001.5502 基于QT+C++开发的炫酷九宫格主界面+源码 基于QT+C++开发的炫酷九宫格主界面+源码 基于QT+C++开发的炫酷九宫格主界面+源码 基于QT+C++开发的炫酷九宫格主界面+源码 基于QT+C++开发的炫酷九宫格主界面+源码 基于QT+C++开发的炫酷九宫格主界面+源码

    S7200 SMART PLC远程下载教程.docx

    S7200 SMART PLC远程下载教程.docx

    29.基于Web的社区医院管理服务系统的设计与实现-Springboot+ Mysql+Java+ B/S源码+数据库+设计文档

    29.基于Web的社区医院管理服务系统的设计与实现|Springboot+ Mysql+Java+ B/S结构(可运行源码(含数据库脚本)+开发文档+lw(高分毕设项目) 详细设计文档介绍链接:http://t.csdnimg.cn/NgQjJ 内容概要: 社区医院管理服务系统采用java技术,基于springboot框架,mysql数据库进行开发,实现了首页、个人中心、用户管理、医生管理、预约医生管理、就诊信息管理、诊疗方案管理、病历信息管理、健康档案管理、费用信息管理、系统管理等内容进行管理,本系统具有良好的兼容性和适应性,为用户提供更多的社区医院管理服务信息,也提供了良好的平台,从而提高系统 全套项目源码+详尽文档,一站式解决您的学习与项目需求。 适用人群: 计算机、通信、人工智能、自动化等专业的学生、老师及从业者。 使用场景及目标: 无论是毕设、期末大作业还是课程设计,一键下载,轻松部署,助您轻松完成项目。 项目代码经过调试测试,确保直接运行,节省您的时间和精力。 其他说明: 项目整体具有较高的学习借鉴价值,基础能力强的可以在此基础上修改调整,以实现不同的功能。

    Ylanne_Sini_Salmi_Janna-3.pdf

    Ylanne_Sini_Salmi_Janna-3.pdf

    实现SAMI大脑的知识积累.zip

    七维大脑 七维大脑是一个多维度的思维模型,它强调大脑在时间管理、选择决策、行动执行和学习成长等方面的能力。这个模型为我们提供了一个全新的视角,帮助我们更深入地理解和利用大脑的功能。 首先,七维大脑中的时间维度是我们感知世界的基础,也是大脑处理信息的重要维度。大脑不仅记录事件的发生,还对其在时间轴上的位置进行编码。这种时间感知能力使我们能够区分先后顺序,预测未来事件,并在记忆中回溯过去。在日常生活中,大脑需要快速处理信息,做出决策,同时也要学会在慢节奏中放松,享受当下。 其次,选择维度体现了大脑在决策过程中的关键作用。在面对多个选项时,大脑会评估每个选项的潜在价值和风险,并结合我们的个人偏好、经验和目标来做出决策。这个过程涉及到复杂的认知和情感计算,展示了大脑在选择维度上的高度灵活性。 除了时间维度和选择维度,七维大脑还涵盖了认知功能、情感功能、行为功能、语言功能、社会功能以及自我意识功能等多个方面。认知功能使大脑能够接收和处理外界信息,产生感知觉,如视觉、听觉、触觉等,并进行记忆和思考。情感功能则让大脑能够体验并表达情感,与他人建立情感联系。行为功能使大脑能够指导身体进行各种动作

    基于java的讯友网络相册源码

    讯友网络相册是一个基于Web的应用程序,旨在为用户提供一个在线分享和浏览照片的平台。这个.rar文件包含了整个项目的所有源代码文件,是一份精心打包的源码包,非常适合作为计算机科学或软件工程专业学生的毕业设计或课程设计项目。它涵盖了前端界面设计和开发、后端逻辑处理、数据库设计与管理等多个方面。在功能上,讯友网络相册支持用户注册与登录,允许用户上传、下载、编辑和删除自己的图片。同时,它还提供了图片分类、搜索、评论和点赞等社交互动特性,使用户能够方便地管理和分享他们的数字记忆。此外,系统还可能包括管理员端的功能,用于内容审核、用户管理以及数据分析等后台操作。技术栈通常包括但不限于HTML、CSS和JavaScript用于前端开发,可能还会使用诸如React、Vue或Angular这样的现代JavaScript框架;后端则可能采用Node.js、Python(Django或Flask)、Java(Spring Boot)等语言和框架;数据库设计则可能涉及MySQL、PostgreSQL或MongoDB等数据库系统。该源码文件包为学生提供了一个实战练习的机会,通过亲自搭建和配置环境,不仅能够锻炼

    FlashFXP4-OYKSOFT

    FlashFXP4linux上传工具 FlashFXP提供了最简便和快速的途径来通过FTP传输任何文件,提供了一个格外稳定和强大的程序,确保你的工作能够快速和高效地完成 FlashFXP是一款功能强大的FXP/FTP软件,集成了其它优秀的FTP软件的优点 支持目录(和子目录)的文件传输,删除;支持上传,下载,以及第三方文件续传 有避免闲置断线功能,防止被FTP平台踢出;可显示或隐藏具有“隐藏”属性的文档和目录

    libADLMIDI1-1.5.0-bp153.1.1.x86-64.rpm

    libADLMIDI1-1.5.0-bp153.1.1.x86_64.rpm 是用于在 x86_64 架构的设备上安装的 RPM 包,具体功能如下: 名称:libADLMIDI1 版本:1.5.0 摘要:带有 OPL3 (YMF262) 模拟器的软件 MIDI 合成器库 许可证:GPL-3.0-only 和 LGPL-3.0-only 该库提供了一个基于 ADLMIDI 的软件 MIDI 合成器,它模拟了 OPL3 音源芯片(FM 合成)。它可以通过使用 ADLMIDI 库来实现多平台的 MIDI 播放和 OPL3 模拟。 该 RPM 包适用于 x86_64 架构,用于在相关设备上安装 libADLMIDI1 库文件。库文件包括: /usr/lib64/libADLMIDI.so.1 和 /usr/lib64/libADLMIDI.so.1.5.0:库文件 /usr/share/doc/packages/libADLMIDI1/AUTHORS、/usr/share/doc/packages/libADLMIDI1/README.md 等文档文件:文档文件

    libADLMIDI1-1.5.0-bp153.1.1.aarch64.rpm

    libADLMIDI1-1.5.0-bp153.1.1.aarch64.rpm 是用于在 aarch64 架构的设备上安装的 RPM 包,具体功能如下: 名称:libADLMIDI1 版本:1.5.0 摘要:带有 OPL3 (YMF262) 模拟器的软件 MIDI 合成器库 许可证:GPL-3.0-only 和 LGPL-3.0-only 该库提供了一个基于 ADLMIDI 的软件 MIDI 合成器,它模拟了 OPL3 音源芯片(FM 合成)。它可以通过使用 ADLMIDI 库来实现多平台的 MIDI 播放和 OPL3 模拟。 该 RPM 包适用于 aarch64 架构,用于在相关设备上安装 libADLMIDI1 库文件。库文件包括: /usr/lib64/libADLMIDI.so.1 和 /usr/lib64/libADLMIDI.so.1.5.0:库文件 /usr/share/doc/packages/libADLMIDI1/AUTHORS、/usr/share/doc/packages/libADLMIDI1/README.md 等文档文件:文档文件

    PHP颜色的编程怎么写代码

    PHP颜色的编程怎么写代码

    多选库.zip

    android 源码学习. 资料部分来源于合法的互联网渠道收集和整理,供大家学习参考与交流。本人不对所涉及的版权问题或内容负法律责任。如有侵权,请通知本人删除。感谢CSDN官方提供大家交流的平台

    “不确定作业处理时间的并行机器调度的无分布模型和算法matlab代码,.zip

    1.版本:matlab2014/2019a/2021a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

Global site tag (gtag.js) - Google Analytics