再谈研发那些事——两项核心工作的区别与联系

简介: 导读:不久前,技术工程师zhuoqun发表了两篇博客在《开发与研发:区别很大》和《开发与研发:领会编程魅力所在》引发了技术人士的热议。在那两篇文章里,zhuoqun谈到了程序开发两大类别:开发和研发的区别以及两类工程师的职业规划。

导读:不久前,技术工程师 zhuoqun发表了两篇博客在 《开发与研发:区别很大》《开发与研发:领会编程魅力所在》引发了技术人士的热议。在那两篇文章里,zhuoqun谈到了程序开发两大类别:开发和研发的区别以及两类工程师的职业规划。在他看来,“那些真正对技术有兴趣的人,要么去做一个同时具备软件设计能力的开发人员,也就是富有创造力的Hacker;要么去做一个自得其乐的研发工程师。虽然环境恶劣,但是任何东西都挡不住真正的热爱。”

日前, Chaos 又写了一篇相关的文章《 研发的那些事——两项核心工作的关系》,就研发和开发两项核心工作的区别和联系有发表了自己的看法。他认为,“开发人员的研究,不同于专职研究人员,主要探索的是他人已知但个人未知的世界,通过不断的搜集、学习,积累个人的知识,拓展知识边界,从而能顺利完成开发工作。如果能拓展到产品、市场等领域,可以看看那儿有钉子。而有些极具科学精神和智慧的同学,触碰到了所处领域的前沿,那么可以试试专职的研究员。”

以下是文章内容:

曾经有一群人,将自己的想法变成一个个小孔,打在纸带上,他们把这纸带叫做Program——程序。将它塞入被称为Computer的机器中,然后恭敬的等待机器重新吐出一段纸带,拿着欢喜地去了。这群人被称为Programmer——伟大而光荣的程序员。

后来,两个叫斯蒂夫的人搞出了个叫Apple的小家伙,PC——个人电脑开始燃起星星之火。但是这些小东西需要被称作Software——软件 的摸不着的东东才能使用。所以,有人开始专门编写它们。其中一叫做比尔 盖茨的人,认为Software可以独立,而且有知识产权,不能随意复制,必须付美金。所以,他建立了个叫Micosoft的公司,搞来了DOS,又自产了 Windows,拉上一个叫安迪格罗夫的偏执狂,乘着蓝色巨人的东风,开创了软件工业。从此,那些编写Software的人,被称为Software Engineer——软件工程师,他们开发的软件又称为Software Product——软件产品。

然后,不断有人凭借Software,改变世界,名利双收。最近的一个叫扎克伯格——一个80后,用一个叫“脸谱”的东东,改变了人们的社交方式。

我们也免不了有这样的梦想…但是,一个软件要能挣来美金,首先要满足客户需求。要大卖,还得满足客户都没想到的需求。扎克伯格们都是市场+工 程的复合大牛,而且今天,单靠一人可以取得一时之成功,但想长久,非得依靠团队的力量,通过系统性的工作才能基业长青。所以,凡人,还是先立足当下,或可 它图。

软件工程师的日常工作通常称为研发,可用下面的简单研发模型表示:

image 实际上分为两种工作,研究和开发。

研究的哲学说法是:探索客观世界,发现其运行规律(详细的可看维基百科),被发现且被验证的规律便成为了人类的知识。研究一般分为两类:

1.基础研究:以获得新知识为目标,不关心其是否有实际应用价值。

2.应用研究:以解决实际为目标开展的探索活动。其结果一般以技术论文形式发表。

基础研究,特别是国内,都由大学、科研院所进行。大企业为保持竞争优势,则建立研究院开展应用研究。中小企业,则开发人员就是研究人员,所以统称研发。

开发人员的研究,不同于专职研究人员,主要探索的是他人已知但个人未知的世界,通过不断的搜集、学习,积累个人的知识,拓展知识边界,从而能顺利完成开发工作。如果能拓展到产品、市场等领域,可以看看那儿有钉子微笑。而有些极具科学精神和智慧的同学,触碰到了所处领域的前沿,那么可以试试专职的研究员。

开发的目的是生产产品、工具解决实际问题,满足大众的需要,丰富大众的精神和物质生活。像Web2.0理念 下的各种产品,极大的丰富了我们的生活。开发任务由需求驱动,工程师接到一系列需求(文档记载,详略不一,甚至有口述的),联系已经学到的知识,开始设 计,实现。期间很可能发觉缺乏某些知识,如对某个技术不熟悉甚至不掌握,必须要先通过研究,习得新知识,才能继续开发活动。如何运用已有知识,写出合格的 程序,就看各人的智慧了,有赖于99%的汗水+1%的灵感,当然1%灵感是决定性的!而灵感来自于,通过坚持不懈的研究对客观世界的观察得来感悟。机会只 垂青有准备的人,没有锤子,即使看到钉子也只能扎手。练得千斤力,方能开顽石。

作为研发人员,能不断的创建、创造,享受带给他人改变第一重的幸福。同时研发人员又是悲哀的,因为你得学习、学习再学习,不断的研究,积累知识,历练智慧,才有可能享受哪种幸福。否则……

目录
相关文章
|
12月前
|
安全 物联网 5G
6G之路:标准尚未制订,核心基础研究却已展开
6G之路:标准尚未制订,核心基础研究却已展开
416 0
6G之路:标准尚未制订,核心基础研究却已展开
|
12月前
|
存储 安全 搜索推荐
详解软件开发的标准过程(生命周期):跟着标准搞,设计没烦恼
详解软件开发的标准过程(生命周期):跟着标准搞,设计没烦恼
|
存储 分布式计算 监控
为什么工作三年的程序员还不懂APM与调用链技术?
服务调用链技术 服务调用链技术是微服务架构中对服务进行监控的重要环节,它可以帮助我们清晰地了解当前系统的运行情况,同时帮助我们定位问题,解决分布式网络下服务交互追踪的问题
相亲软件开发,关注应用启动优化的本质
相亲软件开发,关注应用启动优化的本质
“从幼稚到成熟,是从不负责任到承担责任的过程” | 技术人金句系列
技术人做事情,判断力和分寸感很重要。有时候你遇到的困难和问题,可能别人早就经历过、克服过,并沉淀了与之匹配的“判断力”和“分寸感”。 今天,我们想分享来自大淘宝技术工程师们的《人间清醒语录》,这些金句里凝结了他们多年实践经验的智慧,希望可以给你带来启发和思考。
158 0
“从幼稚到成熟,是从不负责任到承担责任的过程” | 技术人金句系列
|
测试技术
谈谈我理解的测试的核心价值
测试人员的核心价值      随着公司组织架构的调整,战略调整,产品的实现技术不断变化,现在的测试人员可以说是什么都可以干。       有些人做产品,有些人做平台,有些人做工具......     有些人有点象专职开发,有些人有点象专职运营......      Facebook,google的一些敏捷测试理念中,测试人员应该致力于提出测试解决方案,研究各种测试工具为主,具体的测试执行工作,由coding的开发同学去做。
1281 0
|
资源调度 分布式计算 Kubernetes
技术抉择:阿里云13年后重构全部核心调度系统
在阿里云十三年的发展历史上,重新设计调度系统算得上是一个重要的技术抉择。
1124 1
技术抉择:阿里云13年后重构全部核心调度系统
|
机器学习/深度学习 人工智能 运维
基于RPA的自动化优先,正在成为广大组织的主流管理思维
什么是自动化优先思维?它与RPA有什么关系?因何正在成为企业管理主流思维?
119 0
基于RPA的自动化优先,正在成为广大组织的主流管理思维