工程师,程序员,科学家

2014-04-04 14:36:55 +08:00
 xipan
面试一位工程师,看到他的简历上写之前的职位是“工程师”,同时他在自己的名字边上写了一个词“程序员”。我就问他一个问题:工程师和程序员有什么不同?你觉得自己是工程师还是程序员呢?他一下子愣住了,不知道该如何回答这个问题。

这里我来回答一下我对于这个问题的理解。我看到的技术类岗位通常有三种:工程师,程序员和科学家。我先把这三个词在维基百科上的解释列一下:

1. 工程师(Engineer),是指那些在工程专业领域的人,他们使用科学知识来驾驭技术以解决实际问题,并以此为职业。

2. 程序员(Programmer),它可以指在程序设计某个专业领域中的专业人士,或是从事软件撰写,程序开发、维护的专业人员。

3. 科学家(Scientist),广义上指使用系统化的活动来发现新知识的人。狭义的定义指使用科学方法做研究的人。 科学家一般是某个,或者多个科学领域里的专家。

工程师和科学家的不同(摘录自维基百科):
科学家努力探索大自然,以便发现一般性法则(general principles),工程师则遵照此既定原则,从而在数学和科学上,解决了一些技术问题。科学家探索世界以发现普遍法则,但工程师使用普遍法则以设计实际物品。科学家研究东西,工程师建立东西,这一想法,可视为表达这句话, "科学家们问为什么,工程师问为什么不能呢? "("Scientists ask why, engineers ask why not?") 。

工程师和程序员的不同:
这部分没有维基百科可以解释。我用自己的方式来解释:

1. 工程师重解决问题,程序员重提高效率:
比如我们需要做手机客户端,那么对于工程师来说,用iOS,还是Android,还是HTML5,这只是一种方法,最终是要给用户一个可以用的客户端。对于程序员来说,就要考虑的是我是一个iOS程序员,不是一个Android程序员,在我没有把iOS学得精通之前,我不想学Android,我直接做的效率不高。

2. 工程师重组合,程序员重制造:
程序员注重项目的可预测性,无错误,也就是准时保质保量地开发出来产品。工程师是拿来主义者,最好是把已经成型的东西经过拼接组合来解决现在的问题,如果有更好的方案,他们愿意推翻之前的所有投入而是用新的方案,不惜冒拖延进度的风险,只要他对于最终结果是更好的。所以工程师有可能把东西搞得好上N倍,也可能更糟。

3. 工程师是把不可能变成可能,程序员是把可能变成确定:
工程师喜欢的是新的挑战,是那种别人做不到的事情,虽然可能会撞得鼻青脸肿,但是每看到新的机会的时候,就会义无反顾地去尝试。程序员是把事情做精做细的人,消除风险是他们任务,只有按照计划发生了,并且质量是靠得住的,稳定的东西,才是真正的产品。

我觉得分清楚自己是工程师还是程序员很重要,因为这意味着你知道自己喜欢什么,应该选择什么。比如创业型公司是工程师的天堂(当然需要有工程师文化),这里充满了可能性,这里可以学习各种各样的东西,即使你学艺不精,也会有用武之地。可以实现很多东西,给很多人用,可以接触产品,市场,运营方方面面的事情,只要你愿意。而对于程序员,最佳选择就是已经成体系的公司,他们有明确的开发流程,开发方式,怎样让开发团队如同一台精密的机器一样,紧密配合,确保项目准时准点,保质保量,这应该也是一件美妙的事情。

=========================分享结束,广告开始======================

百姓网招聘APP工程师(Android + iOS + HTML5)

前言
我相信一个公司花心思去写自己的职位描述,说明他们对待应聘者是认真的;一个人花时间去读一个职位描述,说明他对待这个公司也是认真的。

我们要一起做什么?
第一代分类广告的形式是报纸,第二代分类广告是互联网分类广告,第二代的颠覆性在于“免费”,随着移动互联网时代的到来,第三代的分类广告呼之欲出,我们认为第三代分类广告的颠覆性在于“实时”,就是从发出信息到成交的速度是否够快。您是否对做这样颠覆性的事情感兴趣呢?

我们希望您帮我们做什么?
a) 坦克版地推进。优秀的工程师就如同高速推进的坦克,把一个漂亮的战略战术来落地,任何的技术难题都被轻松碾过,稳重而踏实。
b) 做自己喜欢的产品。码农和攻城师最大的区别就是在用手还是用脑做事情。我们希望你是在做自己喜欢的产品,而不是别人的工具。
c) 把事情做得不同。在颠覆性的移动互联网上,我们需要颠覆性的技术和开发模式,你愿意接受挑战吗?

结语
非常感谢您的耐心阅读,如果您觉得您就是我们要找的人,请把您觉得合适的理由并附上您的简历发送给我,非常感谢!
百姓网联合创始人 潘晓良
panxiaoliang@baixing.com

==========================广告结束=============================
5037 次点击
所在节点    酷工作
18 条回复
newtonisaac
2014-04-04 15:10:39 +08:00
潘总面试又深入到哲学层面了。如何在产品不懂技术的情况下准时保质保量,应该是科学家的事情,而是不是程序员。
seathink
2014-04-04 15:43:02 +08:00
两周前有幸与潘总交流,虽然没有然后。。。,但从潘总的谈话中,学到不少,认识到自己的不足。希望百姓网越来越好。
同求对技术有追求,有爱的团队收留。Android方向 :-)
chenshifei
2014-04-04 17:04:04 +08:00
我的故事?

写程序员是因为先写的英语简历,developer翻成开发者感觉有点傻,中文一时找不到合适的词语就写了程序员。
工程师是因为贵公司招聘启事上的职位如此。

当然能和潘总交流也是非常不错的经验哈。
hustlzp
2014-04-04 17:06:13 +08:00
工程师负责实现某个东西。而程序员不仅能够实现,而且可以决定为什么做这个东西,以及把它做成什么样子。
Numbcoder
2014-04-04 17:41:22 +08:00
个人认为 (软件)工程师只是「程序员」的一个更职业化的称呼而已,拿来比较好像没啥意义。。
hileon
2014-04-04 17:58:45 +08:00
我觉得像是在比较工程部门和研发部门的感觉。
工程部门负责用公司选用的成熟技术进行日常的生产性工作。
研发部门负责公司一些技术的前瞻,把研究成熟的技术应用到新的产品中。
同意软件工程师就是程序员的说法。
milkliker
2014-04-04 18:09:08 +08:00
@newtonisaac 如何在技术不懂技术的前提下,输出能通过测试的软件,叫做软件工程:)
wuyadong
2014-04-04 18:26:08 +08:00
这是不是本人啊
ytzong
2014-04-04 19:00:56 +08:00
工程师和程序员的区别没这么大,本质上都是负责怎么做的部分,是执行者的角色
而即决定做什么又决定怎么做的才是最高境界,叫做 Hacker(《黑客与画家》、FB 都推崇这种)
0x9397
2014-04-04 19:47:00 +08:00
请问一下,目前大二,暑假2个月左右的实习可以吗?
vjnjc
2014-04-04 23:35:03 +08:00
我是个好奇的程序员,好想做科学家-0-
xipan
2014-04-05 19:19:21 +08:00
@chenshifei 哈哈哈,就是你了。生活中总是有一些不得已,但是不要忘了初心啊。
xipan
2014-04-05 19:21:08 +08:00
@0x9397 可以,我们的暑期实习生也在招聘中。
veggie
2014-04-05 21:44:39 +08:00
那我算是“工程师”风格
plidezus
2014-04-06 22:33:10 +08:00
@seathink 来我们这里试试?我们是百姓的「嫡系」哈哈哈
plidezus
2014-04-06 22:33:53 +08:00
离开百姓最大的遗憾是和晓良沟通的机会少了~
milkliker
2014-04-07 22:02:17 +08:00
@plidezus 同感。。。哈哈~

其实在百姓的时候是我代码写得最好的时候:)
xipan
2014-04-08 14:18:02 +08:00
@milkliker @plidezus 这个周末有时间吗?想去找你们吃饭聊天啊...

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/107260

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX